Exemplo n.º 1
0
    def load(cls, file_name):
        """
        This method loads the code_template from XML file.

        Returns:

            * **Types** (:class:`boolean<boolean>`)
        """
        # load the code_template
        if os.path.exists(file_name) is False:
            return
        parser = XMLParser(file_name)

        if parser.getTag("HarpiaCodeTemplate") is None:
            return None

        try:
            code_template = CodeTemplate()
            code_template.name = parser.getTagAttr("HarpiaCodeTemplate",  "name")
            code_template.type = parser.getTagAttr("HarpiaCodeTemplate",  "type")
            code_template.description = parser.getTagAttr("HarpiaCodeTemplate",  "description")
            code_template.language = parser.getTagAttr("HarpiaCodeTemplate",  "language")
            code_template.extension = parser.getTagAttr("HarpiaCodeTemplate",  "extension")
            code_template.source = parser.getTagAttr("HarpiaCodeTemplate",  "source")
            code_template.command = parser.getTag("HarpiaCodeTemplate").getTag("command").getText()
            code_template.code = parser.getTag("HarpiaCodeTemplate").getTag("code").getText()
        except:
            return None

        if code_template.name == "":
            return None
        return code_template
Exemplo n.º 2
0
    def load(cls, file_name):
        """
        This method loads the port from XML file.

        Returns:

            * **Types** (:class:`boolean<boolean>`)
        """
        # load the port
        if os.path.exists(file_name) is False:
            return
        parser = XMLParser(file_name)
        if parser.getTag("HarpiaPort") is None:
            return None

        port = Port()
        port.type = parser.getTagAttr("HarpiaPort", "type")
        port.language = parser.getTagAttr("HarpiaPort", "language")
        port.label = parser.getTagAttr("HarpiaPort", "label")
        port.color = parser.getTagAttr("HarpiaPort", "color")
        port.multiple = parser.getTagAttr("HarpiaPort", "multiple")
        port.source = parser.getTagAttr("HarpiaPort", "source")
        port.code = parser.getTag("HarpiaPort").getTag("code").getText()

        count = 0
        for code in port.input_codes:
            port.input_codes[count] = parser.getTag('HarpiaPort').getTag('input_code' + str(count)).getText()
            port.output_codes[count] = parser.getTag('HarpiaPort').getTag('output_code' + str(count)).getText()
            count = count + 1

        if port.type == "":
            return None
        return port
Exemplo n.º 3
0
    def load(cls):
        """
        This method loads the diagram.

        Returns:

            * **Types** (:class:`boolean<boolean>`)
        """
        prefs = Preferences()
        from harpia.system import System
        file_name = System.get_user_dir() + "/" + prefs.conf_file_path
        file_name = os.path.expanduser(file_name)
        if os.path.exists(file_name) is False:
            return prefs
        parser = XMLParser(file_name)

        if parser.getTag("HarpiaProperties") is None:
            return prefs

        try:
            prefs.default_directory = parser.getTagAttr("HarpiaProperties",
                        "default_directory")
            prefs.default_filename = parser.getTagAttr("HarpiaProperties",
                        "default_filename")
            prefs.grid = int(parser.getTagAttr("HarpiaProperties","grid"))
            prefs.width = int(parser.getTagAttr("HarpiaProperties","width"))
            prefs.height = int(parser.getTagAttr("HarpiaProperties",
                        "height"))
            prefs.hpaned_work_area = int(parser.getTagAttr("HarpiaProperties",
                        "hpaned_work_area"))
            prefs.vpaned_bottom = int(parser.getTagAttr("HarpiaProperties",
                        "vpaned_bottom"))
            prefs.vpaned_left = int(parser.getTagAttr("HarpiaProperties",
                        "vpaned_left"))

            files = parser.getTag("HarpiaProperties").getTag(
                        "recent_files").getChildTags("name")
            for file_name in files:
                prefs.recent_files.append(file_name.getAttr("value"))
        except:
            pass
        return prefs