Ticket #4139: gtktree_sensitive.py

File gtktree_sensitive.py, 1.4 KB (added by humitos, 11 years ago)

Script as example

Line 
1#!/usr/bin/python
2from gi.repository import Gtk
3
4# http://python-gtk-3-tutorial.readthedocs.org/en/latest/introduction.html
5
6
7class MyWindow(Gtk.Window):
8
9    def __init__(self):
10        Gtk.Window.__init__(self, title="Gtk.TreeView 'sensitive'")
11        self.set_default_size(250, 200)
12
13        self.connect("delete-event", Gtk.main_quit)
14
15        self.box = Gtk.VBox()
16        self.scrolled = Gtk.ScrolledWindow()
17        self.scrolled.set_policy(Gtk.PolicyType.AUTOMATIC,
18                                 Gtk.PolicyType.AUTOMATIC)
19
20        self.store = Gtk.ListStore(str, str)
21        for i in range(5):
22            self.store.append([str(i), 'Item %s' % i])
23
24        self.treeview = Gtk.TreeView(self.store)
25        renderer_no_sens = Gtk.CellRendererText()
26        # set 'sensitive' property
27        renderer_no_sens.set_property('sensitive', False)
28
29        renderer = Gtk.CellRendererText()
30
31        column = Gtk.TreeViewColumn('\'sensitive\' False',
32                                    renderer_no_sens, text=0)
33        self.treeview.append_column(column)
34
35        column = Gtk.TreeViewColumn('\'sensitive\' True',
36                                    renderer, text=1)
37        self.treeview.append_column(column)
38
39        self.scrolled.add(self.treeview)
40        self.box.add(self.scrolled)
41        self.add(self.box)
42
43        self.show_all()
44
45
46if __name__ == '__main__':
47    win = MyWindow()
48    Gtk.main()