Ejemplo n.º 1
0
    def __init__(self, notifier, INOTIFY_SUPPORT):
        self.menu = GtkMenu(self.destroy, self.ExecuteAction)
        self.notifier = notifier

        config = ConfigController()
        self.terminal = config.getValue("terminal")
        self.systray = config.getValue("systray")
        self.hideList = config.getValue("hide_list").split(",")
        self.showFavorites = config.getValue("favorites")

        self.makemenu = snapfly_core.MakeMenu(
            self.ExecuteAction, self.move_on_scroll_event, self.terminal, self.hideList, self.showFavorites
        )

        # self.menu.len = self.makemenu.make(self.menu.nbook)
        self.menu.set_menu(self.makemenu.get_menu())
        self.menu.create_menu(self.makemenu.get_favorites(), snapfly_core.cat_icon)

        self.INOTIFY_SUPPORT = INOTIFY_SUPPORT
        if self.systray == "true":
            self.tray = TrayIcon(self.menu.toggle_hide, self.doQuit)
            self.menu.set_tray_icon(self.tray)
Ejemplo n.º 2
0
class Menu:
    def __init__(self, notifier, INOTIFY_SUPPORT):
        self.menu = GtkMenu(self.destroy, self.ExecuteAction)
        self.notifier = notifier

        config = ConfigController()
        self.terminal = config.getValue("terminal")
        self.systray = config.getValue("systray")
        self.hideList = config.getValue("hide_list").split(",")
        self.showFavorites = config.getValue("favorites")

        self.makemenu = snapfly_core.MakeMenu(
            self.ExecuteAction, self.move_on_scroll_event, self.terminal, self.hideList, self.showFavorites
        )

        # self.menu.len = self.makemenu.make(self.menu.nbook)
        self.menu.set_menu(self.makemenu.get_menu())
        self.menu.create_menu(self.makemenu.get_favorites(), snapfly_core.cat_icon)

        self.INOTIFY_SUPPORT = INOTIFY_SUPPORT
        if self.systray == "true":
            self.tray = TrayIcon(self.menu.toggle_hide, self.doQuit)
            self.menu.set_tray_icon(self.tray)

    def doQuit(self, *gtk_args):
        gtk.main_quit()

    def run(self):
        gtk.main()

    def update_menu(self):
        if not self.updating:
            self.updating = True
            self.menu.set_menu(self.makemenu.get_menu())
            self.menu.create_menu(self.makemenu.get_favorites(), snapfly_core.cat_icon)
            self.updating = False

    def ExecuteAction(self, widget, event, cmd):
        self.focus_check = False
        launch_command(cmd)
        self.menu.toggle_hide(widget, event)

    def callback_signal(self):
        self.menu.mode = "mouse"
        self.menu.toggle_hide()
        self.menu.mode = None

    def callback_signal_show(self, category):
        self.menu.mode = "mouse"
        self.menu.set_current_page(category)
        self.menu.toggle_hide()
        self.menu.mode = None

    def destroy(self):
        if self.INOTIFY_SUPPORT:
            self.notifier.stop()

    def move_on_scroll_event(self, *gtk_args):
        """
        Method, that have to been called when mouse moves at right part of menu.
        """
        self.mouse_at_scroll = True