Пример #1
0
    def __init__(self):
        super(SidebarTreeView, self).__init__()

        self.model = Gtk.TreeStore(str, GdkPixbuf.Pixbuf)
        self.model_filter = self.model.filter_new()
        self.model_filter.set_visible_func(self.filter_rule)
        self.set_model(self.model_filter)

        column = Gtk.TreeViewColumn("Runners")
        column.set_sizing(Gtk.TreeViewColumnSizing.FIXED)

        # Icon
        icon_renderer = Gtk.CellRendererPixbuf()
        icon_renderer.set_property('stock-size', 16)
        column.pack_start(icon_renderer, False)
        column.add_attribute(icon_renderer, "pixbuf", ICON)

        # Label
        text_renderer = Gtk.CellRendererText()
        column.pack_start(text_renderer, True)
        column.add_attribute(text_renderer, "text", LABEL)

        self.append_column(column)
        self.set_headers_visible(False)
        self.set_fixed_height_mode(True)

        self.connect('button-press-event', self.popup_contextual_menu)

        self.runners = lutris.runners.__all__
        self.used_runners = pga.get_used_runners()
        self.load_all_runners()
        self.update()
        self.expand_all()
Пример #2
0
 def update(self):
     self.used_runners = pga.get_used_runners()
     self.model_filter.refilter()
     self.expand_all()