1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
|
#!/usr/bin/env python
import pygtk
import gtk
import gobject
pygtk.require('2.0')
class FolderSelector(gtk.Window):
def __init__(self, jules):
gtk.Window.__init__(self, gtk.WINDOW_TOPLEVEL)
print "init folder selector", self, jules
self.set_title("Select Folder")
self.jules = jules
self.set_size_request(140, 200)
self.list_model = gtk.ListStore(gobject.TYPE_STRING)
self.tree = gtk.TreeView(self.list_model)
self.folder_column = gtk.TreeViewColumn('Folder')
self.tree.append_column(self.folder_column)
self.folder_cell = gtk.CellRendererText()
self.folder_column.pack_start(self.folder_cell, True)
self.folder_column.add_attribute(self.folder_cell, 'text', 0)
self.tree.set_search_column(0)
self.icon_theme = gtk.icon_theme_get_default()
self.add(self.tree)
self.show_all()
self.tree.columns_autosize()
print "done init"
class Jules(gtk.Window):
def __init__(self):
gtk.Window.__init__(self, gtk.WINDOW_TOPLEVEL)
self.set_title("Jules")
self.set_size_request(150, 320)
self.connect("delete_event", self.on_delete_event)
self.connect("destroy", self.on_destroy)
self.scroll = gtk.ScrolledWindow()
self.tree_model = gtk.TreeStore(gobject.TYPE_STRING,
gobject.TYPE_STRING)
self.tree = gtk.TreeView(self.tree_model)
self.file_column = gtk.TreeViewColumn('name', gtk.CellRendererText(),
markup=0)
self.file_column.set_sort_indicator(True)
self.file_column.set_clickable(True)
self.file_column.set_sort_column_id(1)
self.tree.append_column(self.file_column)
self.tree.set_headers_clickable(True)
self.tree.set_search_column(0)
self.scroll.add(self.tree)
self.add(self.scroll)
self.show_all()
self.project_selector = FolderSelector(self)
self.project_selector.hide()
self.project_selector.hide()
self.project_selector.show()
def on_delete_event(self, widget, event):
return False
def on_destroy(self, widget):
gtk.main_quit()
def run(self):
gtk.main()
if __name__ == "__main__":
jules = Jules()
jules.run()
|