Exemple #1
0
    def __init__(self, specto):
        """
        In this init we are going to display the main notifier window.
        """
        self.specto = specto
        uifile = os.path.join(self.specto.PATH, "uis/notifier.ui")
        windowname = "notifier"
        self.builder = gtk.Builder()
        self.builder.set_translation_domain("specto")
        self.builder.add_from_file(uifile)
        self.notifier = self.builder.get_object("notifier")
        if INDICATOR:
            self.indicator = Indicator(specto)
            self.tray = None
        else:
            self.tray = Tray(specto, self)
            self.indicator = None
        if SOUND:
            self.sound = Sound()
        else:
            self.sound = None
        self.balloon = NotificationToast(specto, self)
        self.preferences_initialized = False

        #create tree
        self.iter = {}
        self.model = gtk.ListStore(gobject.TYPE_BOOLEAN, gtk.gdk.Pixbuf,
                                   gobject.TYPE_STRING, gobject.TYPE_INT,
                                   gobject.TYPE_STRING, pango.Weight)

        #catch some events
        dic = {
            "on_add_activate": self.show_add_watch_menu,
            "on_edit_activate": self.show_edit_watch,
            "on_clear_all_activate": self.mark_all_as_read,
            "on_preferences_activate": self.show_preferences,
            "on_refresh_activate": self.refresh_all_watches,
            "on_close_activate": self.close_event,
            "on_quit_activate": self.delete_event,
            "on_import_watches_activate": self.import_watches,
            "on_export_watches_activate": self.export_watches,
            "on_error_log_activate": self.show_error_log,
            "on_display_all_watches_activate":
            self.toggle_show_deactivated_watches,
            "on_display_toolbar_activate": self.toggle_display_toolbar,
            "on_help_activate": self.show_help,
            "on_about_activate": self.show_about,
            "on_treeview_row_activated": self.open_watch_callback,
            "on_btnOpen_clicked": self.open_watch_callback,
            "on_btnClear_clicked": self.mark_watch_as_read,
            "on_treeview_cursor_changed": self.show_watch_info,
            "on_btnEdit_clicked": self.show_edit_watch,
            "on_by_watch_type_activate": self.sort_type,
            "on_by_name_activate": self.sort_name,
            "on_by_watch_active_activate": self.sort_active,
            "on_remove_clicked": self.remove_watch,
            "on_clear_activate": self._mark_watch_as_read,
            "on_remove_activate": self.remove_watch
        }
        self.builder.connect_signals(dic)

        self.notifier.set_icon_from_file(self.specto.LOGO_PATH)
        self.specto.notifier_initialized = True
        self.create_notifier_gui()
        self.stop_refresh = False