summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjvoisin2011-07-18 16:16:53 +0200
committerjvoisin2011-07-18 16:16:53 +0200
commit57ab1cbe47a373f0e4a958ffaacbf54909ea99f1 (patch)
treeda4b71b80bb723e5adc4d9eb1813550389a838d4
parent5e4f031ade2de68bbbc467afd208ef1f56ef973b (diff)
Add a menubar
-rw-r--r--gui.py37
1 files changed, 31 insertions, 6 deletions
diff --git a/gui.py b/gui.py
index c2ac0f2..ba0dcb9 100644
--- a/gui.py
+++ b/gui.py
@@ -32,21 +32,24 @@ class ListStoreApp:
32 self.window.connect('destroy', Gtk.main_quit) 32 self.window.connect('destroy', Gtk.main_quit)
33 self.window.set_default_size(800, 600) 33 self.window.set_default_size(800, 600)
34 34
35 vbox = self.create_toolbar() 35 vbox = Gtk.VBox()
36 self.window.add(vbox) 36 self.window.add(vbox)
37 37
38 sw = Gtk.ScrolledWindow() 38 menubar = self.create_menu()
39 vbox.pack_start(sw, True, True, 0) 39 toolbar = self.create_toolbar()
40 content = Gtk.ScrolledWindow()
41 vbox.pack_start(menubar, False, True, 0)
42 vbox.pack_start(toolbar, False, True, 0)
43 vbox.pack_start(content, True, True, 0)
40 44
41 self.model = Gtk.ListStore(str, str, str) #name - type - cleaned 45 self.model = Gtk.ListStore(str, str, str) #name - type - cleaned
42 46
43 treeview = Gtk.TreeView(model=self.model) 47 treeview = Gtk.TreeView(model=self.model)
44 treeview.set_rules_hint(True) 48 treeview.set_rules_hint(True)
45
46 self.selection = treeview.get_selection() 49 self.selection = treeview.get_selection()
47 self.selection.set_mode(Gtk.SelectionMode.MULTIPLE) 50 self.selection.set_mode(Gtk.SelectionMode.MULTIPLE)
48 51
49 sw.add(treeview) 52 content.add(treeview)
50 self.add_columns(treeview) 53 self.add_columns(treeview)
51 54
52 self.statusbar = Gtk.Statusbar() 55 self.statusbar = Gtk.Statusbar()
@@ -113,6 +116,28 @@ class ListStoreApp:
113 column.set_sort_column_id(self.COLUMN_CLEANED) 116 column.set_sort_column_id(self.COLUMN_CLEANED)
114 treeview.append_column(column) 117 treeview.append_column(column)
115 118
119 def create_menu(self):
120 menubar = Gtk.MenuBar()
121
122 file_menu = Gtk.Menu()
123
124 filem = Gtk.MenuItem()
125 filem.set_submenu(file_menu)
126 filem.set_label('Files')
127
128 add_ = Gtk.MenuItem()
129 add_.set_label('Add files')
130 add_.connect('activate', self.add_files)
131 file_menu.append(add_)
132
133 quit_ = Gtk.MenuItem()
134 quit_.set_label('Quit')
135 quit_.connect('activate', Gtk.main_quit)
136 file_menu.append(quit_)
137 menubar.append(filem)
138
139 return menubar
140
116 def create_filter(self): 141 def create_filter(self):
117 ''' 142 '''
118 Return a filter for 143 Return a filter for
@@ -150,7 +175,6 @@ class ListStoreApp:
150 175
151 if response is 0: #Gtk.STOCK_OK 176 if response is 0: #Gtk.STOCK_OK
152 filenames = chooser.get_filenames() 177 filenames = chooser.get_filenames()
153 chooser.destroy()
154 for item in filenames: #directory 178 for item in filenames: #directory
155 if os.path.isdir(item): 179 if os.path.isdir(item):
156 for root, dirs, files in os.walk(item): 180 for root, dirs, files in os.walk(item):
@@ -158,6 +182,7 @@ class ListStoreApp:
158 self.populate(os.path.join(root, name)) 182 self.populate(os.path.join(root, name))
159 else: #regular file 183 else: #regular file
160 self.populate(item) 184 self.populate(item)
185 chooser.destroy()
161 186
162 def populate(self, item): 187 def populate(self, item):
163 try: 188 try: