Beispiel #1
0
    def load_existing_modules(self):
        for(dirpath, dirnames, filenames) in os.walk(self.workspace):
            print("load existing modules")
            for file in filenames:
                if(file[-2:] == "py"):
                    abs_path = os.path.abspath(os.path.join(dirpath, file))
                    first_classname = Module.get_first_classname(abs_path)
                    if first_classname is not None:
                        new_module = Module(self.workspace, title=file,
                                            main_class=first_classname)
                        self.add_module(new_module, alert_collision=False)
                    else:
                        print("Can't found class in file " + file)
            break
        self.load_edges()
        self.load_existing_placement()

        self.redraw()
Beispiel #2
0
    def new_module_action(self):
        new_module_dialog = TextDialog(self.window,
                                       "Choose new class name", "Class name",
                                       optional_field_name="Parent class",
                                       opt_placeholder="<module.Class>")

        self.window.wait_window(new_module_dialog.dialog)

        if new_module_dialog.field_value is not None:
            new_module = Module(self.window.workspace,
                                main_class=new_module_dialog.field_value)
            opt_value = new_module_dialog.opt_field_value
            if opt_value is not None and opt_value != "" and re.search("\.", opt_value) is not None and re.search("\<", opt_value) is None:
                parent_info = new_module_dialog.opt_field_value.replace(" ", "").split(".")
                new_module.parent_classes.append(parent_info[1])
                new_module.imports = parent_info
            new_module.create_python_module()
            new_module.init_file_module()
            self.schema_module.add_module(new_module)
            self.schema_module.refresh()