def __init__(self, applet): self.applet = applet self.button = PanelButton() self.button.connect('toggled', self.on_toggle) self.applet.add(self.button) self.applet.setup_menu_from_file( runtime.data_dir, "Hamster_Applet.xml", None, [ ("about", self.on_about), ("overview", self.show_overview), ("preferences", self.show_preferences), ("help", self.on_help_clicked), ]) # load window of activity switcher and todays view self._gui = load_ui_file("applet.ui") self.window = self._gui.get_object('hamster-window') # on close don't destroy the popup, just hide it instead self.window.connect("delete_event", lambda *args: self.__show_toggle(False)) self.window.connect("window-state-event", self.on_window_state_changed) self.new_name = widgets.ActivityEntry() self.new_name.connect("value-entered", self.on_switch_activity_clicked) self.new_name.set_property("secondary-icon-name", "help-contents") self.new_name.connect("icon-press", self.on_more_info_button_clicked) widgets.add_hint(self.new_name, _("Activity")) self.get_widget("new_name_box").add(self.new_name) self.new_name.connect("changed", self.on_activity_text_changed) self.new_tags = widgets.TagsEntry() self.new_tags.connect("tags_selected", self.on_switch_activity_clicked) widgets.add_hint(self.new_tags, _("Tags")) self.get_widget("new_tags_box").add(self.new_tags) self.tag_box = widgets.TagBox(interactive=False) self.get_widget("tag_box").add(self.tag_box) self.treeview = widgets.FactTree() self.treeview.connect("key-press-event", self.on_todays_keys) self.treeview.connect("edit-clicked", self._open_edit_activity) self.treeview.connect("row-activated", self.on_today_row_activated) self.get_widget("today_box").add(self.treeview) # DBus Setup try: dbus.mainloop.glib.DBusGMainLoop(set_as_default=True) # Set up connection to the screensaver self.dbusIdleListener = idle.DbusIdleListener() self.dbusIdleListener.connect('idle-changed', self.on_idle_changed) except dbus.DBusException, e: logging.error("Can't init dbus: %s" % e)
def __init__(self): gtk.VBox.__init__(self) self.set_border_width(6) scroll = gtk.ScrolledWindow() scroll.set_policy(gtk.POLICY_NEVER, gtk.POLICY_AUTOMATIC) scroll.set_shadow_type(gtk.SHADOW_IN) self.start_date, self.end_date = None, None self.facts = [] self.fact_tree = widgets.FactTree(True) self.fact_tree.connect("row-activated", self.on_facts_row_activated) self.fact_tree.connect("key-press-event", self.on_facts_keys) self.fact_tree.connect("edit-clicked", lambda tree, fact: self.on_edit_clicked(fact)) scroll.add(self.fact_tree) self.add(scroll)