Пример #1
0
 def init(self):
     # Load plugins
     self.update_blocks()
     for plugin in System.get_plugins():
         plugin.load(self.main_window)
     self.main_window.menu.update_recent_files(
         System.get_preferences().recent_files)
     self.main_window.menu.update_examples(System.get_list_of_examples())
Пример #2
0
 def test_update_examples(self):
     System.get_list_of_examples().append("language/framework/test")
     System.get_list_of_examples().append("language/framework/test1")
     self.menu.update_examples(System.get_list_of_examples())
     System.get_list_of_examples().append("test")
     self.menu.update_examples(System.get_list_of_examples())
     # language
     self.menu.example_menu.get_children()[0].activate()
     # extension
     self.menu.example_menu.get_children()[0].get_children()[0].activate()
Пример #3
0
 def test_update_examples(self):
     System.get_list_of_examples().append("language/framework/test")
     System.get_list_of_examples().append("language/framework/test1")
     self.menu.update_examples()
     System.get_list_of_examples().append("test")
     self.menu.update_examples()
     example_menu = self.menu.example_menu
     language = example_menu.get_children()[0].get_submenu()
     extension = language.get_children()[0].get_submenu()
     example = extension.get_children()[0]
     example.emit("activate")
Пример #4
0
    def update_examples(self):

        for widget in self.example_menu.get_children():
            self.example_menu.remove(widget)
        # Create submenu
        list_of_examples = System.get_list_of_examples()
        submenu = None
        for example in list_of_examples:
            directory_list = example.split("/")
            name = ""
            extension = ""
            language = ""
            if len(directory_list) >= 3:
                name = directory_list.pop()
                extension = directory_list.pop()
                language = directory_list.pop()

            # first, the language submenu
            language_menu_item = self.__get_child_by_name(
                self.example_menu, language)
            if language_menu_item is None:
                language_menu_item = Gtk.MenuItem.new_with_label(language)
                language_menu_item.set_name(language)
                self.example_menu.append(language_menu_item)
                language_menu = Gtk.Menu()
                language_menu_item.set_submenu(language_menu)
            else:
                language_menu = language_menu_item.get_submenu()

            extension_menu_item = self.__get_child_by_name(
                language_menu, extension)
            if extension_menu_item is None:
                extension_menu_item = Gtk.MenuItem.new_with_label(extension)
                extension_menu_item.set_name(extension)
                language_menu.append(extension_menu_item)
                extension_menu = Gtk.Menu()
                extension_menu_item.set_submenu(extension_menu)
            else:
                extension_menu = extension_menu_item.get_submenu()

            menu_item = Gtk.MenuItem.new_with_label(name)
            extension_menu.append(menu_item)
            menu_item.connect("activate", self.__load_example, example)

        self.example_menu.show_all()