コード例 #1
0
ファイル: bridge_dotnet.py プロジェクト: Lawouach/bridge
    def deserialize(self,
                    source,
                    prefixes=None,
                    strict=False,
                    as_attribute=None,
                    as_list=None,
                    as_attribute_of_element=None):

        if isinstance(source, basestring):
            try:
                if os.path.exists(source):
                    xtr = XmlTextReader(StreamReader(source))
            except ValueError:
                xtr = XmlTextReader(StringReader(source))
            else:
                xtr = XmlTextReader(StringReader(source))
        elif hasattr(source, 'read'):
            xtr = XmlTextReader(StringReader(source.read()))

        settings = XmlReaderSettings()
        settings.ProhibitDtd = True
        reader = XmlReader.Create(xtr, settings)

        document = Document()
        document.as_attribute = as_attribute or {}
        document.as_list = as_list or {}
        document.as_attribute_of_element = as_attribute_of_element or {}

        self._deserialize(reader, document)

        xtr.Close()
        reader.Close()

        return document
コード例 #2
0
ファイル: rigid_jump.py プロジェクト: malaybaku/harriet
def makeAnimation(top):
    xamlStr = """
<Storyboard xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
    <DoubleAnimationUsingKeyFrames>
        <EasingDoubleKeyFrame KeyTime="0:0:0.2" Value="{0}">
            <EasingDoubleKeyFrame.EasingFunction>
                <QuadraticEase EasingMode="EaseOut"/>
            </EasingDoubleKeyFrame.EasingFunction>
        </EasingDoubleKeyFrame>
        <EasingDoubleKeyFrame KeyTime="0:0:0.4" Value="{1}">
            <EasingDoubleKeyFrame.EasingFunction>
                <QuadraticEase EasingMode="EaseIn"/>
            </EasingDoubleKeyFrame.EasingFunction>
        </EasingDoubleKeyFrame>
        <EasingDoubleKeyFrame KeyTime="0:0:0.6" Value="{2}">
            <EasingDoubleKeyFrame.EasingFunction>
                <QuadraticEase EasingMode="EaseOut"/>
            </EasingDoubleKeyFrame.EasingFunction>
        </EasingDoubleKeyFrame>
        <EasingDoubleKeyFrame KeyTime="0:0:0.8" Value="{3}">
            <EasingDoubleKeyFrame.EasingFunction>
                <QuadraticEase EasingMode="EaseIn"/>
            </EasingDoubleKeyFrame.EasingFunction>
        </EasingDoubleKeyFrame>
    </DoubleAnimationUsingKeyFrames>
</Storyboard>
""".format(top - 30, top, top - 30, top)

    sr = StringReader(xamlStr)
    sb = XamlServices.Load(sr)
    sr.Dispose()

    Storyboard.SetTarget(sb.Children[0], harriet.Window.Window)
    Storyboard.SetTargetProperty(sb.Children[0], PropertyPath("Top"))
    return sb
コード例 #3
0
def GetLinesFromText(text):
    reader = StringReader(text)
    lines = []
    try:
        line = reader.ReadLine()
        while line is not None:
            lines.append(line)
            line = reader.ReadLine()
    finally:
        reader.Dispose()
    return lines
コード例 #4
0
ファイル: bridge_dotnet.py プロジェクト: Lawouach/bridge
 def _handle_empty_fragment(self, fragment):
     xtr = XmlTextReader(StringReader(str(fragment) + '/>'))
     reader = XmlReader.Create(xtr, self.settings)
     while reader.Read():
         node_type = reader.NodeType
         if node_type == XmlNodeType.Element:
             return self.handle_start_element(reader)
コード例 #5
0
 def __init__(self, xaml):
     self._xaml = xaml
     xr = XmlReader.Create(StringReader(xaml))
     self.winLoad = XamlReader.Load(xr)
     self._button = self.winLoad.FindName('button')
     self._stakpanel = self.winLoad.FindName('stackPanel')
     self._button.Click += self.onClick
コード例 #6
0
 def Parse(self, data, isfinal=False):
     self._data.append(data)
     if isfinal:
         data = "".join(self._data)
         self._data = None
         reader = StringReader(data)
         self._parse(reader)
    def __deserialize_from_xml(file_full_name):
        iaddin_custom_frame_instance = None
        try:
            filereader = None
            try:
                filereader = File.OpenText(file_full_name)
                if filereader:
                    content = filereader.ReadToEnd()
                    stringreader = StringReader(content)
                    xmlreader = None
                    try:
                        xmlreader = XmlReader.Create(stringreader)
                        if xmlreader:
                            iaddin_custom_frame_instance = XamlReader.Load(
                                xmlreader)
                    finally:
                        if xmlreader:
                            xmlreader.Dispose()
                            xmlreader = None
            finally:
                if filereader:
                    filereader.Dispose()
                    filereader = None
        except Exception as e:
            CommonUtil.sprint("Failed to desrialize: {}".format(e))
            iaddin_custom_frame_instance = None

        return iaddin_custom_frame_instance
コード例 #8
0
 def __init__(self, xaml):
     self._xaml = xaml
     xr = XmlReader.Create(StringReader(self._xaml))
     self.winLoad = wpf.LoadComponent(self, xr)
     #self._comboBox = self.winLoad.FindName('_comboBox') # not necessary with wpf IronPython Module Wpf
     for x in range(1, 10):
         self._comboBox.Items.Add("Item " + str(x))
コード例 #9
0
    def __init__(self, overlay: OverlayWindow):
        self.overlay = overlay

        self.window = XamlReader.Load(
            XmlReader.Create(StringReader(SettingsXaml)))
        self.InitializeComponent()
        self.LoadConfig()
コード例 #10
0
ファイル: sympl.py プロジェクト: zgramana/IronLanguages.PCG
 def ExecuteExpr(self, expr_str, moduleEO):
     f = StringReader(expr_str)
     ASTs = parser.ParseExpr(f)
     self.dbgASTs = ASTs
     scope = etgen.AnalysisScope(
         None,  #parent
         "__snippet__",
         self,
         Exprs.Expression.Parameter(Sympl, "symplRuntime"),
         Exprs.Expression.Parameter(ExpandoObject, "fileModule"))
     self.dbgascope = scope
     body = [
         Exprs.Expression.Convert(etgen.AnalyzeExpr(ASTs, scope), object)
     ]
     #body = [etgen.AnalyzeExpr(ASTs, scope)]
     self.dbgbody = body
     ftype = Exprs.Expression.GetFuncType(
         System.Array[System.Type]([Sympl, ExpandoObject, object]))
     ## Due to .NET 4.0 co/contra-variance, IPy's binding isn't picking
     ## the overload with just IEnumerable<Expr>, so pick it explicitly.
     body = Exprs.Expression.Block.Overloads[IEnumerable[Exprs.Expression]](
         body)
     fun = Exprs.Expression.Lambda(ftype, body, scope.RuntimeExpr,
                                   scope.ModuleExpr)
     dbgmodfun = fun
     return fun.Compile()(self, moduleEO)
コード例 #11
0
ファイル: jumping.py プロジェクト: malaybaku/harriet
def makeEndAnimation():
    xamlStr = """
<Storyboard xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
    <DoubleAnimationUsingKeyFrames>
        <DiscreteDoubleKeyFrame KeyTime="0" Value="1"/>
        <EasingDoubleKeyFrame KeyTime="0:0:0.15" Value="1.2">
            <EasingDoubleKeyFrame.EasingFunction>
                <QuadraticEase EasingMode="EaseOut"/>
            </EasingDoubleKeyFrame.EasingFunction>
        </EasingDoubleKeyFrame>
        <EasingDoubleKeyFrame KeyTime="0:0:0.3" Value="1.0">
            <EasingDoubleKeyFrame.EasingFunction>
                <QuadraticEase EasingMode="EaseIn"/>
            </EasingDoubleKeyFrame.EasingFunction>
        </EasingDoubleKeyFrame>
    </DoubleAnimationUsingKeyFrames>
    <DoubleAnimationUsingKeyFrames>
        <DiscreteDoubleKeyFrame KeyTime="0" Value="1"/>
        <EasingDoubleKeyFrame KeyTime="0:0:0.15" Value="0.84">
            <EasingDoubleKeyFrame.EasingFunction>
                <QuadraticEase EasingMode="EaseOut"/>
            </EasingDoubleKeyFrame.EasingFunction>
        </EasingDoubleKeyFrame>
        <EasingDoubleKeyFrame KeyTime="0:0:0.3" Value="1.0">
            <EasingDoubleKeyFrame.EasingFunction>
                <QuadraticEase EasingMode="EaseIn"/>
            </EasingDoubleKeyFrame.EasingFunction>
        </EasingDoubleKeyFrame>
    </DoubleAnimationUsingKeyFrames>
</Storyboard>
"""

    sr = StringReader(xamlStr)
    sb = XamlServices.Load(sr)
    sr.Dispose()

    #FIXME: 入れる先が用意されてないのでダメ
    Storyboard.SetTarget(sb.Children[0], harriet.Character)
    Storyboard.SetTarget(sb.Children[1], harriet.Character)

    Storyboard.SetTargetProperty(
        sb.Children[0], PropertyPath("RenderTransform.Children[2].ScaleX"))
    Storyboard.SetTargetProperty(
        sb.Children[1], PropertyPath("RenderTransform.Children[2].ScaleY"))

    return sb
コード例 #12
0
def ReadLinesFromText(text):
  lines = []
  with StringReader(text) as reader:
    line = reader.ReadLine()
    while line is not None:
      lines.append(line)
      line = reader.ReadLine()
  return lines
コード例 #13
0
def _getStoryboardAppliedToWindowProperty(xamlStr, propertyPath):
    with StringReader(xamlStr) as sr:
        sb = XamlServices.Load(sr)

    Storyboard.SetTarget(sb.Children[0], harriet.Window.Window)
    Storyboard.SetTargetProperty(sb.Children[0], PropertyPath(propertyPath))

    return sb
コード例 #14
0
 def __init__(self):
     self.ui = wpf.LoadComponent(self, StringReader(MyForm.LAYOUT))
     collElems = FilteredElementCollector(
         doc, doc.ActiveView.Id).OfClass(FamilyInstance).ToElements()
     collElems = sorted(collElems, key=lambda x: x.Name)
     for e in collElems:
         item = System.Windows.Controls.ListBoxItem()
         item.Content = e.Name
         item.Tag = e.Id
         self.ui.listBox1.Items.Add(item)
コード例 #15
0
 def test_external_assemblies(self):
     import clr
     clr.AddReferenceByPartialName('System.Xml')
     from System.IO import StringReader
     from System.Xml import XmlReader
     buffer = StringReader("<foo>test</foo>")
     xml = XmlReader.Create(buffer)
     xml.ReadStartElement("foo")
     assert xml.ReadString() == 'test'
     xml.ReadEndElement()
コード例 #16
0
 def _parse(self, data):
     settings = XmlReaderSettings(ProhibitDtd=False)
     reader = XmlReader.Create(StringReader(data), settings)
     self._reader = reader
     while reader.Read():
         nodetype = reader.NodeType
         typename = Enum.GetName(XmlNodeType, nodetype)
         handler = getattr(self, '_handle_' + typename, None)
         if handler is not None:
             handler()
コード例 #17
0
 def __init__(self, xaml_file, literal_string=False):
     self.Parent = self
     if not literal_string:
         if not op.exists(xaml_file):
             # noinspection PyUnresolvedReferences
             wpf.LoadComponent(self, os.path.join(__commandpath__, xaml_file))
         else:
             wpf.LoadComponent(self, xaml_file)
     else:
         wpf.LoadComponent(self, StringReader(xaml_file))
コード例 #18
0
ファイル: forms.py プロジェクト: kidasse/revitpythonwrapper
    def __init__(self, title, default=None, description=None):
        self.selected = None
        self.ui = wpf.LoadComponent(self, StringReader(TextInput.LAYOUT))
        # self.ui = wpf.LoadComponent(self, os.path.join(cwd, 'form_text_input.xaml'))
        self.ui.Title = title

        if default is not None:
            self.ui.text_box.Text = default

        if description is not None:
            self.ui.selection_label.Content = description
        self.ui.button_select.Click += self.select_click
コード例 #19
0
    def __init__(self):
        self.window = XamlReader.Load(
            XmlReader.Create(StringReader(OverlayXaml)))

        self.console = Console()

        self.InitializeComponent()
        self.LoadConfig()

        self.settings = SettingsWindow(self)

        self.Run()
コード例 #20
0
	def __init__(self, title, options, description=None):
		self.selected = None
		self.ui = wpf.LoadComponent(self, StringReader(DropdownInput.LAYOUT))
		self.ui.Title = title
	
		if description is not None:
			self.ui.selection_label.Content = description
		self.ui.button_select.Click += self.select_click
	
		self.ui.combo_data.Items.Clear()
		self.ui.combo_data.ItemsSource = options
		self.ui.combo_data.SelectedItem = options[0]
コード例 #21
0
ファイル: forms.py プロジェクト: kidasse/revitpythonwrapper
    def __init__(self, title, options, description=None):
        # TODO: Validate options type, and handle dictionary input
        # So user can feed a list or a dictionary
        self.selected = None
        self.ui = wpf.LoadComponent(self, StringReader(SelectFromList.LAYOUT))
        # self.ui = wpf.LoadComponent(self, os.path.join(cwd, 'form_select_list.xaml'))
        self.ui.Title = title

        if description is not None:
            self.ui.selection_label.Content = description
        self.ui.button_select.Click += self.select_click

        self.ui.combo_data.Items.Clear()
        self.ui.combo_data.ItemsSource = options
        self.ui.combo_data.SelectedItem = options[0]
コード例 #22
0
ファイル: fade.py プロジェクト: malaybaku/harriet
def _makeFadeStoryboard(start, end, duration):
    xamlStr = """
<Storyboard xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
    <DoubleAnimation From="{0:.2f}" To="{1:.2f}" Duration="0:0:{2:.2f}" />
</Storyboard>
""".format(start, end, duration)

    with StringReader(xamlStr) as sr:
        sb = XamlServices.Load(sr)

    Storyboard.SetTarget(sb.Children[0], harriet.Window.Window)
    Storyboard.SetTargetProperty(sb.Children[0],
                                 PropertyPath("(UIElement.Opacity)"))

    return sb
コード例 #23
0
def ImportEnv():
    #read each line from the file
    file = open(EnvironmentData, "r")
    contents = file.read()
    reader = CsvReader(StringReader(contents), False)
    reader.SkipEmptyLines = False
    rows = []
    while reader.ReadNextRecord():
        row = []
        colCount = reader.FieldCount
        for i in range(colCount):
            row.append(reader[i])
        rows.append(row)
    file.close()
    global envAsList
    envAsList = rows[0]
    return envAsList
コード例 #24
0
ファイル: _compat.py プロジェクト: subokita/Aglyph
        def close(self):
            """Parse the XML from the internal buffer to build an
            element tree.

            :return:
                the root element of the XML document
            :rtype:
                :class:`xml.etree.ElementTree.ElementTree`

            """
            xml_string = "".join(self._buffer)
            self._buffer = None

            reader = XmlReader.Create(StringReader(xml_string), self.settings)

            # figure out which encoding to use
            next = reader.Read()
            document_encoding = (
                reader.GetAttribute("encoding") if next
                and reader.NodeType == XmlNodeType.XmlDeclaration else None)
            if document_encoding:
                self.__log.info(
                    "parsed document encoding %r from XML declaration",
                    document_encoding)
            else:
                document_encoding = "UTF-8"
                self.__log.warn(
                    "document encoding is missing! assuming default %r",
                    document_encoding)

            while next:
                if reader.IsStartElement():
                    self._start_element(reader)
                elif reader.NodeType in [XmlNodeType.Text, XmlNodeType.CDATA]:
                    # decode the value first to work around IronPython quirk
                    self._target.data(reader.Value.decode(document_encoding))
                elif reader.NodeType == XmlNodeType.EndElement:
                    self._target.end(reader.LocalName)

                next = reader.Read()

            return self._target.close()
コード例 #25
0
    def __init__(self, xml):
        self._xml = xml
        self.Sources = List[String]()
        self.Video = True
        self.Loop = True
        self.Autoplay = True
        self.Volume = .5
        self.Width = 300
        self.Height = 150
        self.Poster = ""
        self.Controls = True
        self.Autobuffer = True
        self.Muted = False

        reader = XmlReader.Create(StringReader(self._xml))
        while (reader.Read()):
            if reader.Name == "video":
                self.Video = reader.ReadElementContentAsBoolean()
            elif reader.Name == "width":
                self.Width = reader.ReadElementContentAsDouble()
            elif reader.Name == "height":
                self.Height = reader.ReadElementContentAsDouble()
            elif reader.Name == "autoplay":
                self.Autoplay = reader.ReadElementContentAsString()
            elif reader.Name == "volume":
                self.Volume = reader.ReadElementContentAsDouble()
            elif reader.Name == "poster":
                self.Poster = reader.ReadElementContentAsString()
            elif reader.Name == "loop":
                self.Loop = reader.ReadElementContentAsBoolean()
            elif reader.Name == "controls":
                self.Controls = reader.ReadElementContentAsBoolean()
            elif reader.Name == "autobuffer":
                self.Autobuffer = reader.ReadElementContentAsBoolean()
            elif reader.Name == "muted":
                self.Muted = reader.ReadElementContentAsBoolean()
            elif reader.Name == "sources":
                item = None
                while (reader.Read()):
                    if reader.Name == "source":
                        item = reader.ReadElementContentAsString()
                        self.Sources.Add(item)
コード例 #26
0
ファイル: rollin.py プロジェクト: malaybaku/harriet
def getOpacityMaskAndStoryboard(duration):
    xamlStr = """
<Rectangle xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
           xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
           Width="10" Height="10">
    <Rectangle.Resources>
        <Storyboard x:Key="Appear">
            <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(GradientBrush.GradientStops)[0].(GradientStop.Offset)"
                                           Storyboard.TargetName="OpacityBrush">
                <EasingDoubleKeyFrame KeyTime="0:0:0" Value="-0.1"/>
                <EasingDoubleKeyFrame KeyTime="0:0:{0}" Value="1">
                    <EasingDoubleKeyFrame.EasingFunction>
                        <CubicEase EasingMode="EaseInOut"/>
                    </EasingDoubleKeyFrame.EasingFunction>
                </EasingDoubleKeyFrame>
            </DoubleAnimationUsingKeyFrames>
            <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(GradientBrush.GradientStops)[1].(GradientStop.Offset)"
                                           Storyboard.TargetName="OpacityBrush">
                <EasingDoubleKeyFrame KeyTime="0:0:0" Value="0"/>
                <EasingDoubleKeyFrame KeyTime="0:0:{0}" Value="1.1">
                    <EasingDoubleKeyFrame.EasingFunction>
                        <CubicEase EasingMode="EaseInOut"/>
                    </EasingDoubleKeyFrame.EasingFunction>
                </EasingDoubleKeyFrame>
            </DoubleAnimationUsingKeyFrames>
        </Storyboard>
    </Rectangle.Resources>
    <Rectangle.OpacityMask>
        <LinearGradientBrush x:Name="OpacityBrush" EndPoint="0.5,1" StartPoint="0.5,0">
            <GradientStop Offset="0" Color="Black" />
            <GradientStop Offset="0" Color="Transparent" />
        </LinearGradientBrush>
    </Rectangle.OpacityMask>
</Rectangle>
""".format(duration)

    with StringReader(xamlStr) as sr:
        rect = XamlServices.Load(sr)

    sb = rect.TryFindResource("Appear")
    opMask = rect.OpacityMask
    return opMask, sb
コード例 #27
0
ファイル: xml_cli.py プロジェクト: juney-lee/compas
    def close(self):
        """Parse the XML from the internal buffer to build an
        element tree.

        Returns
        -------
        :class:`xml.etree.ElementTree.ElementTree`
            The root element of the XML document
        """
        xml_string = "".join(self._buffer)
        self._buffer = None
        reader = XmlReader.Create(StringReader(xml_string), self.settings)
        while reader.Read():
            if reader.IsStartElement():
                self._start_element(reader)
            elif reader.NodeType in [XmlNodeType.Text, XmlNodeType.CDATA]:
                self._target.data(reader.Value.decode(self._document_encoding))
            elif reader.NodeType == XmlNodeType.EndElement:
                self._target.end(reader.Name)
            elif reader.NodeType == XmlNodeType.XmlDeclaration:
                self._parse_xml_declaration(reader.Value)
        return self._target.close()
コード例 #28
0
ファイル: test_syntax.py プロジェクト: zpeach68/ironpython2
 def GetReader(self):
     return SourceCodeReader(StringReader(self.text), Encoding.GetEncoding(0))
コード例 #29
0
 def _deserialize(cls, type, xml):
     if NilClasses.CanDeserialize(xml):
         raise DeserializeFailedError
     else:
         return type.Serializer.Deserialize(StringReader(xml))
コード例 #30
0
print "\n" * 3
print "Enter expressions.  Enter blank line to abort input."
print "Enter 'exit (the symbol) to exit."
print "\n"
while True:
    print prompt,
    input = Console.ReadLine()
    if (input == ""):
        exprstr = ""
        prompt = ">>> "
        continue
    else:
        exprstr = exprstr + " " + input
    ## See if we have complete input.
    try:
        sympl.parser.ParseExpr(StringReader(exprstr))
    except Exception, e:
        prompt = "... "
        continue
    ## We do, so execute.
    try:
        res = s.ExecuteExpr(exprstr, feo)
        exprstr = ""
        prompt = ">>> "
        if res is s.MakeSymbol("exit"): break
        print res
    except Exception, e:
        exprstr = ""
        prompt = ">>> "
        Console.Write("ERROR: ")
        Console.WriteLine(e)
コード例 #31
0
ファイル: ElementIron.py プロジェクト: EDRN/PublicPortal
def _ironparse(source):

    # internal event generator.  takes a TextReader subclass, a file-
    # like object, or a filename, and generates an event stream.  use
    # the parse() and iterparse() adapters to access this from user-
    # code.

    if isinstance(source, TextReader):
        pass  # use as is
    elif hasattr(source, "read"):
        # FIXME: implement TextReader wrapper for Python I/O objects
        source = StringReader(source.read())

    # FIXME: handle settings here? (disable comments, etc)

    reader = XmlReader.Create(source)

    # tag cache
    tags = {}
    namespaces = []

    def gettag():
        key = reader.NamespaceURI, reader.LocalName
        try:
            tag = tags[key]
        except KeyError:
            if key[0]:
                tag = "{%s}%s" % key
            else:
                tag = key[1]
            tags[key] = tag
        return tag

    while reader.Read():
        node = reader.NodeType
        if node == START:
            tag = gettag()
            attrib = {}
            ns = 0  # count namespace declarations
            while reader.MoveToNextAttribute():
                if reader.LocalName == "xmlns":
                    ns += 1  # default namespace
                    yield "start-ns", ("", reader.Value)
                elif reader.Prefix == "xmlns":
                    ns += 1  # prefixed namespace
                    yield "start-ns", (reader.LocalName, reader.Value)
                else:
                    attrib[gettag()] = reader.Value
            namespaces.append(ns)
            reader.MoveToElement()
            yield "start", tag, attrib
            if reader.IsEmptyElement:
                yield "end", tag
                for i in xrange(namespaces.pop()):
                    yield "end-ns", None
        elif node == END:
            yield "end", tags[reader.NamespaceURI, reader.LocalName]
            for i in xrange(namespaces.pop()):
                yield "end-ns", None
        elif node == DATA_TEXT or node == DATA_SPACE or node == DATA_CDATA:
            yield "data", reader.Value
        else:
            pass  # yield "unknown", node
    reader.Close()