Example #1
0
    def on_row_activated(self, tv, path, column):
        model = self.__model
        jid = model.get_value(model.get_iter(path), RosterModel.COLUMN_JID)
        ## It's a group, expand/contract it
        if not jid:
            if tv.row_expanded(path):
                tv.collapse_row(path)
            else:
                tv.expand_row(path, 0)
            return

        Popups.User().updateSelectedJID(self.__cur_jid)
        Popups.User().activate()
Example #2
0
    def __init__(self, tv, rm):
        self.__view = tv
        self.__model = rm

        tv.set_model(rm)

        self.__selection = tv.get_selection()
        self.__selection.set_mode(gtk.SELECTION_BROWSE)

        column = gtk.TreeViewColumn('Name')
        cell = gtk.CellRendererPixbuf()
        column.pack_start(cell, 0)
        column.set_attributes(cell, pixbuf=RosterModel.COLUMN_ICON)
        cell = gtk.CellRendererText()
        column.pack_start(cell, 1)
        column.set_attributes(cell, text=RosterModel.COLUMN_NAME)
        tv.append_column(column)

        tv.connect("cursor-changed", self.on_cursor_changed)
        tv.connect("button-press-event", self.on_button_press_event)
        tv.connect("row-activated", self.on_row_activated)

        del_user_item = Popups.User().getItem("delete_this_contact")
        del_user_item.connect("activate", self.__on_delete_contact_activate)

        self.__cur_jid = None
Example #3
0
 def __init__(self):
     self.__app = GabberApp()
     self.__chats = {}
     self.__query = self.__app.session.registerXPath(
         "/message[@type='chat']", self.__on_chat_node)
     self.__menu_item = MenuItem("One-on-one _Chat...")
     self.__menu_item.connect("activate", self.__on_chat_menu_activate)
     Popups.User().addItem(self.__menu_item)
Example #4
0
    def on_button_press_event(self, tv, event):
        if event.button == 3:
            ret = tv.get_path_at_pos(event.x, event.y)
            if not ret or not ret[0]:
                return

            path = ret[0]

            model = self.__model
            jid = model.get_value(model.get_iter(path), RosterModel.COLUMN_JID)
            if not jid:
                return

            if not self.__cur_jid:
                self.__cur_jid = self.__get_full_jid(jid)

            Popups.User().updateSelectedJID(self.__cur_jid)
            Popups.User().popup(None, None, None, event.button, event.time)
 def loadSinks(self):
     self.sink_list.addSink(Info.init())
     self.sink_list.addSink(Buttons.init())
     self.sink_list.addSink(Menus.init())
     self.sink_list.addSink(Images.init())
     self.sink_list.addSink(Layouts.init())
     self.sink_list.addSink(Lists.init())
     self.sink_list.addSink(Popups.init())
     self.sink_list.addSink(Tables.init())
     self.sink_list.addSink(Text.init())
     self.sink_list.addSink(Trees.init())
     self.sink_list.addSink(Frames.init())
     self.sink_list.addSink(Tabs.init())
Example #6
0
 def loadSinks(self):
     self.sink_list.add(Info.init())
     self.sink_list.add(Buttons.init())
     self.sink_list.add(Menus.init())
     self.sink_list.add(Images.init())
     self.sink_list.add(Layouts.init())
     self.sink_list.add(Lists.init())
     self.sink_list.add(Popups.init())
     self.sink_list.add(Tables.init())
     self.sink_list.add(Text.init())
     self.sink_list.add(Trees.init())
     self.sink_list.add(Frames.init())
     self.sink_list.add(Tabs.init())
Example #7
0
 def loadSinks(self):
     #self.sink_list.addSink(DataTree.init())
     #self.sink_list.addSink(RecipeSystemIFACE.init())
     self.sink_list.addSink(ADViewerIFACE.init())
     self.sink_list.addSink(RecipeViewer.init())
     self.sink_list.addSink(FITSStoreFACE.init())
     self.sink_list.addSink(DisplayIFACE.init())
     self.sink_list.addSink(Info.init())
     if False:
         self.sink_list.addSink(Buttons.init())
         self.sink_list.addSink(Menus.init())
         self.sink_list.addSink(Images.init())
         self.sink_list.addSink(Layouts.init())
         self.sink_list.addSink(Lists.init())
         self.sink_list.addSink(Popups.init())
         self.sink_list.addSink(Tables.init())
         self.sink_list.addSink(Text.init())
     if False: #preserving originaly order
         self.sink_list.addSink(Frames.init())
         self.sink_list.addSink(Tabs.init())
Example #8
0
 def __on_chat_menu_activate(self, menu):
     to = Popups.User().getSelectedJID()
     if not self.__chats.has_key(to):
         self.__chats[to] = ChatView(self, to)