コード例 #1
0
    def __init__(self, journalactivity):
        Gtk.TreeView.__init__(self)

        self._journalactivity = journalactivity
        self.icon_activity_column = None
        self.buddies_columns = []

        self._invoker = TreeViewInvoker()
        self._invoker.attach_treeview(self)

        self.set_headers_visible(False)
        self.set_enable_search(False)
        self.add_events(Gdk.EventMask.BUTTON_PRESS_MASK
                        | Gdk.EventMask.TOUCH_MASK
                        | Gdk.EventMask.BUTTON_RELEASE_MASK)
コード例 #2
0
    def __init__(self):
        Gtk.TreeView.__init__(self)

        self._query = ''

        self.set_headers_visible(False)
        self.add_events(Gdk.EventMask.BUTTON_PRESS_MASK |
                        Gdk.EventMask.TOUCH_MASK |
                        Gdk.EventMask.BUTTON_RELEASE_MASK)
        selection = self.get_selection()
        selection.set_mode(Gtk.SelectionMode.NONE)

        self._model = ListModel()
        self._model.set_visible_func(self.__model_visible_cb)
        self.set_model(self._model)

        column = Gtk.TreeViewColumn()

        cell_favorites = []
        for i in range(desktop.get_number_of_views()):
            cell_favorites.append(CellRendererFavorite(i))
            cell_favorites[i].connect('clicked', self.__favorite_clicked_cb)
            column.pack_start(cell_favorites[i], True)
            column.set_cell_data_func(cell_favorites[i],
                                      self.__favorite_set_data_cb)

        self.append_column(column)

        cell_icon = CellRendererActivityIcon()
        cell_icon.connect('clicked', self.__icon_clicked_cb)

        column = Gtk.TreeViewColumn()
        column.pack_start(cell_icon, True)
        column.add_attribute(cell_icon, 'file-name', self._model.column_icon)
        self.append_column(column)

        self._icon_column = column

        cell_text = Gtk.CellRendererText()
        cell_text.props.ellipsize = style.ELLIPSIZE_MODE_DEFAULT
        cell_text.props.ellipsize_set = True

        column = Gtk.TreeViewColumn()
        column.props.sizing = Gtk.TreeViewColumnSizing.GROW_ONLY
        column.props.expand = True
        column.set_sort_column_id(self._model.column_title)
        column.pack_start(cell_text, True)
        column.add_attribute(cell_text, 'markup', self._model.column_title)
        self.append_column(column)

        cell_text = Gtk.CellRendererText()
        cell_text.props.xalign = 1

        column = Gtk.TreeViewColumn()
        column.set_alignment(1)
        column.props.sizing = Gtk.TreeViewColumnSizing.GROW_ONLY
        column.props.resizable = True
        column.props.reorderable = True
        column.props.expand = True
        column.set_sort_column_id(self._model.column_version)
        column.pack_start(cell_text, True)
        column.add_attribute(cell_text, 'text',
                             self._model.column_version_text)
        self.append_column(column)

        cell_text = Gtk.CellRendererText()
        cell_text.props.xalign = 1

        column = Gtk.TreeViewColumn()
        column.set_alignment(1)
        column.props.sizing = Gtk.TreeViewColumnSizing.GROW_ONLY
        column.props.resizable = True
        column.props.reorderable = True
        column.props.expand = True
        column.set_sort_column_id(self._model.column_date)
        column.pack_start(cell_text, True)
        column.add_attribute(cell_text, 'text', self._model.column_date_text)
        self.append_column(column)

        self.set_search_column(self._model.column_title)
        self.set_enable_search(False)
        self._activity_selected = None
        self._invoker = TreeViewInvoker()
        self._invoker.attach_treeview(self)
コード例 #3
0
    def __init__(self):
        Gtk.TreeView.__init__(self)
        self.set_can_focus(False)

        self._query = ''

        self.set_headers_visible(False)
        self.add_events(Gdk.EventMask.BUTTON_PRESS_MASK
                        | Gdk.EventMask.TOUCH_MASK
                        | Gdk.EventMask.BUTTON_RELEASE_MASK)
        selection = self.get_selection()
        selection.set_mode(Gtk.SelectionMode.NONE)

        self._model = ListModel()
        self._model.set_visible_func(self.__model_visible_cb)
        self.set_model(self._model)

        self._favorite_columns = []
        for i in range(desktop.get_number_of_views()):
            self.fav_column = Gtk.TreeViewColumn()
            self.cell_favorite = CellRendererFavorite(i)
            self.cell_favorite.connect('clicked', self.__favorite_clicked_cb)
            self.fav_column.pack_start(self.cell_favorite, True)
            self.fav_column.set_cell_data_func(self.cell_favorite,
                                               self.__favorite_set_data_cb)
            self.append_column(self.fav_column)

            self._favorite_columns.append(self.fav_column)

        self.cell_icon = CellRendererActivityIcon()

        column = Gtk.TreeViewColumn()
        column.pack_start(self.cell_icon, True)
        column.add_attribute(self.cell_icon, 'file-name',
                             self._model.column_icon)
        self.append_column(column)

        self._icon_column = column

        cell_text = Gtk.CellRendererText()
        cell_text.props.ellipsize = style.ELLIPSIZE_MODE_DEFAULT
        cell_text.props.ellipsize_set = True

        column = Gtk.TreeViewColumn()
        column.props.sizing = Gtk.TreeViewColumnSizing.GROW_ONLY
        column.props.expand = True
        column.set_sort_column_id(self._model.column_title)
        column.pack_start(cell_text, True)
        column.add_attribute(cell_text, 'markup', self._model.column_title)
        self.append_column(column)

        cell_text = Gtk.CellRendererText()
        cell_text.props.xalign = 1

        self.version_column = Gtk.TreeViewColumn()
        self.version_column.set_alignment(1)
        self.version_column.props.sizing = Gtk.TreeViewColumnSizing.GROW_ONLY
        self.version_column.props.resizable = True
        self.version_column.props.reorderable = True
        self.version_column.props.expand = True
        self.version_column.set_sort_column_id(self._model.column_version)
        self.version_column.pack_start(cell_text, True)
        self.version_column.add_attribute(cell_text, 'text',
                                          self._model.column_version_text)
        self.append_column(self.version_column)

        cell_text = Gtk.CellRendererText()
        cell_text.props.xalign = 1

        self.date_column = Gtk.TreeViewColumn()
        self.date_column.set_alignment(1)
        self.date_column.props.sizing = Gtk.TreeViewColumnSizing.GROW_ONLY
        self.date_column.props.resizable = True
        self.date_column.props.reorderable = True
        self.date_column.props.expand = True
        self.date_column.set_sort_column_id(self._model.column_date)
        self.date_column.pack_start(cell_text, True)
        self.date_column.add_attribute(cell_text, 'text',
                                       self._model.column_date_text)
        self.append_column(self.date_column)

        self.set_search_column(self._model.column_title)
        self.set_enable_search(False)
        self._activity_selected = None
        self._invoker = TreeViewInvoker()
        self._invoker.attach_treeview(self)

        self.button_press_handler = None
        self.button_reslease_handler = None
        self.icon_clicked_handler = None
        self.row_activated_handler = None
        if hasattr(self.props, 'activate_on_single_click'):
            # Gtk+ 3.8 and later
            self.props.activate_on_single_click = True
            self.row_activated_handler = self.connect('row-activated',
                                                      self.__row_activated_cb)
        else:
            self.icon_clicked_handler = self.cell_icon.connect(
                'clicked', self.__icon_clicked_cb)
            self.button_press_handler = self.connect('button-press-event',
                                                     self.__button_press_cb)
            self.button_reslease_handler = self.connect(
                'button-release-event', self.__button_release_cb)
            self._row_activated_armed_path = None
コード例 #4
0
scrolled.add(treeview)
test.pack_start(scrolled, True, True, 0)
test.show_all()

col = Gtk.TreeViewColumn()
treeview.append_column(col)

xo_color = XoColor('#FF0000,#00FF00')
cell_icon = CellRendererIcon()
cell_icon.props.width = style.GRID_CELL_SIZE
cell_icon.props.height = style.GRID_CELL_SIZE
cell_icon.props.size = style.STANDARD_ICON_SIZE
cell_icon.props.xo_color = xo_color

col.pack_start(cell_icon, expand=False)
col.add_attribute(cell_icon, 'icon-name', 0)
cell_text = Gtk.CellRendererText()
col.pack_start(cell_text, expand=True)
col.add_attribute(cell_text, 'text', 0)

invoker = TreeViewInvoker()
invoker.attach_treeview(treeview)

detector = ScrollingDetector(scrolled)
detector.connect('scroll-start', _scroll_start_cb, treeview, invoker)
detector.connect('scroll-end', _scroll_end_cb, treeview, invoker)

if __name__ == '__main__':
    time_ini = time.time()
    common.main(test)