[Thunar-workers] CVS: design/ui shortcuts.png, NONE, 1.1 .cvsignore, 1.1, 1.2 ChangeLog, 1.8, 1.9 ThunarSidePane.py, 1.1, 1.2 ThunarWindow.py, 1.4, 1.5 thunar.ui, 1.3, 1.4

Benedikt Meurer benny at xfce.org
Thu Mar 3 01:16:22 CET 2005


Update of /var/cvs/thunar/design/ui
In directory espresso.foo-projects.org:/tmp/cvs-serv7621

Modified Files:
	.cvsignore ChangeLog ThunarSidePane.py ThunarWindow.py 
	thunar.ui 
Added Files:
	shortcuts.png 
Log Message:
2005-03-02	Benedikt Meurer <benny at xfce.org>

	* .cvsignore: Ignore vim swap files.
	* shortcuts.png, ThunarWindow.py, ThunarSidePane.py, thunar.ui: Rework
	  the sidebar handling to get rid of the notebook. Remove the home
	  button from the default toolbar, as its highly redundant.




--- NEW FILE: shortcuts.png ---
‰PNG


SÊ¡/~Ž–ÍâÒeLq÷‘yYŽPÊ"A‡ç®ÏVôãÀ)@ÕV&bñÄúuØ‘Al®ˆ)ù¨¼O4ç£*I¬!&@Yt¨P¥YŽRc…ÅmNÑ·¤áùp9Ð뀮8`ü
qÂñ)‚R„Œ4ÆB`ŒEû2P¨P¡Cƒ¶!1,ÆXòJ_¦ë¨ûj²<°õôØS}‘ƒR߇ ¢µÅŠjjTT]FjŒ6€@¸‚xwhÃù’¬õCØz£…® {*Ðk3Òon2†° CCäK´2èÈ "Ž4ZêjY
Index: .cvsignore
===================================================================
RCS file: /var/cvs/thunar/design/ui/.cvsignore,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- .cvsignore	15 Feb 2005 17:00:55 -0000	1.1
+++ .cvsignore	3 Mar 2005 00:16:18 -0000	1.2
@@ -1 +1,2 @@
 *.pyc
+.*.swp

Index: ChangeLog
===================================================================
RCS file: /var/cvs/thunar/design/ui/ChangeLog,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -d -r1.8 -r1.9
--- ChangeLog	28 Feb 2005 22:04:12 -0000	1.8
+++ ChangeLog	3 Mar 2005 00:16:18 -0000	1.9
@@ -1,3 +1,10 @@
+2005-03-02	Benedikt Meurer <benny at xfce.org>
+
+	* .cvsignore: Ignore vim swap files.
+	* shortcuts.png, ThunarWindow.py, ThunarSidePane.py, thunar.ui: Rework
+	  the sidebar handling to get rid of the notebook. Remove the home
+	  button from the default toolbar, as its highly redundant.
+
 2005-02-28	Benedikt Meurer <benny at xfce.org>
 
 	* ThunarBookmarksPane.py, ThunarSidePane.py, ThunarTreePane.py,

Index: ThunarSidePane.py
===================================================================
RCS file: /var/cvs/thunar/design/ui/ThunarSidePane.py,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- ThunarSidePane.py	28 Feb 2005 22:04:12 -0000	1.1
+++ ThunarSidePane.py	3 Mar 2005 00:16:18 -0000	1.2
@@ -35,52 +35,90 @@
 
 signals_registered = False
 
-class ThunarSidePane(gtk.Notebook):
+class ThunarSidePane(gtk.VBox):
+    DISABLED = 0
+    TREE = 1
+    SHORTCUTS = 2
+
     def __init__(self):
-        gtk.Notebook.__init__(self)
+        gtk.VBox.__init__(self)
+
+        #self.set_size_request(150, -1)
 
         # register signals
         global signals_registered
         if not signals_registered:
             gobject.signal_new('directory-changed', self, gobject.SIGNAL_RUN_LAST, \
                                gobject.TYPE_NONE, [ThunarFileInfo])
+            gobject.signal_new('hide-sidepane', self, gobject.SIGNAL_RUN_LAST, \
+                               gobject.TYPE_NONE, [])
             signals_registered = True
 
-        swin = gtk.ScrolledWindow(None, None)
-        swin.set_policy(gtk.POLICY_AUTOMATIC, gtk.POLICY_AUTOMATIC)
-        label = gtk.Label('Tree')
-        self.append_page(swin, label)
-        label.show()
-        swin.show()
+        frame = gtk.Frame()
+        frame.set_border_width(0)
+        frame.set_shadow_type(gtk.SHADOW_ETCHED_IN)
+        self.pack_start(frame, False, False, 0)
+        frame.show()
 
-        self.tree = ThunarTreePane()
-        self.tree_handler_id = self.tree.connect('directory-changed0', lambda tree, info: self._directory_changed(info))
-        swin.add(self.tree)
-        self.tree.show()
+        hbox = gtk.HBox(False, 6)
+        hbox.set_border_width(0)
+        frame.add(hbox)
+        hbox.show()
 
-        swin = gtk.ScrolledWindow(None, None)
-        swin.set_policy(gtk.POLICY_NEVER, gtk.POLICY_AUTOMATIC)
-        swin.set_shadow_type(gtk.SHADOW_IN)
-        label = gtk.Label('Bookmarks')
-        self.append_page(swin, label)
-        label.show()
-        swin.show()
+        self.label = gtk.Label('')
+        self.label.set_alignment(0.0, 0.5)
+        hbox.pack_start(self.label, True, True, 0)
+        self.label.show()
 
-        self.bm = ThunarBookmarksPane()
-        self.bm_handler_id = self.bm.connect('directory-changed1', lambda bm, info: self._directory_changed(info))
-        swin.add(self.bm)
-        self.bm.show()
+        button = gtk.Button()
+        button.set_relief(gtk.RELIEF_NONE)
+        button.set_border_width(0)
+        image = gtk.image_new_from_stock(gtk.STOCK_CLOSE, gtk.ICON_SIZE_MENU)
+        button.add(image)
+        image.show()
+        button.connect('clicked', lambda btn: self.emit('hide-sidepane'))
+        hbox.pack_start(button, False, False, 0)
+        button.show()
+
+        self.swin = gtk.ScrolledWindow(None, None)
+        self.pack_start(self.swin, True, True, 0)
+        self.swin.show()
+
+        self.child = None
+        self.set_state(self.SHORTCUTS)
 
 
     def _directory_changed(self, info):
         self.emit('directory-changed', info)
 
 
+    def set_state(self, state):
+        if self.child:
+            self.child.destroy()
+            self.child = None
+
+        if state == self.TREE:
+            self.child = ThunarTreePane()
+            self.handler_id = self.child.connect('directory-changed0', lambda tree, info: self._directory_changed(info))
+            self.swin.set_policy(gtk.POLICY_AUTOMATIC, gtk.POLICY_AUTOMATIC)
+            self.label.set_label(' Tree')
+        elif state == self.SHORTCUTS:
+            self.child = ThunarBookmarksPane()
+            self.handler_id = self.child.connect('directory-changed1', lambda bm, info: self._directory_changed(info))
+            self.swin.set_policy(gtk.POLICY_NEVER, gtk.POLICY_AUTOMATIC)
+            self.label.set_label(' Shortcuts')
+        else:
+            self.hide()
+            return
+
+        self.swin.add(self.child)
+        self.child.show()
+        self.show()
+
+
     def select_by_info(self, info):
-        self.tree.handler_block(self.tree_handler_id)
-        self.tree.select_by_info(info)
-        self.tree.handler_unblock(self.tree_handler_id)
+        if self.child:
+            self.child.handler_block(self.handler_id)
+            self.child.select_by_info(info)
+            self.child.handler_unblock(self.handler_id)
 
-        self.bm.handler_block(self.bm_handler_id)
-        self.bm.select_by_info(info)
-        self.bm.handler_unblock(self.bm_handler_id)

Index: ThunarWindow.py
===================================================================
RCS file: /var/cvs/thunar/design/ui/ThunarWindow.py,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -d -r1.4 -r1.5
--- ThunarWindow.py	28 Feb 2005 22:04:12 -0000	1.4
+++ ThunarWindow.py	3 Mar 2005 00:16:18 -0000	1.5
@@ -46,7 +46,14 @@
         gtk.Window.__init__(self, gtk.WINDOW_TOPLEVEL)
         self.set_title('Thunar: ' + info.get_visible_name())
         self.set_icon(info.render_icon(48))
-        self.set_default_size(600,500)
+        self.set_default_size(650,550)
+
+
+        set = gtk.IconSet(gtk.gdk.pixbuf_new_from_file('shortcuts.png'))
+        factory = gtk.IconFactory()
+        factory.add('thunar-shortcuts', set)
+        factory.add_default()
+
 
         self.bookmarks = []
 
@@ -70,11 +77,14 @@
         ], self)
         self.action_group.add_actions([
             ('view-menu', None, '_View'),
+            ('view-sidebar-menu', None, '_Sidebar'),
             ('reload', gtk.STOCK_REFRESH, '_Reload', '<Control>R', None, lambda ign, self: self._internal_open_dir(self.info)),
         ], self)
-        self.action_group.add_toggle_actions([
-            ('sidepane', None, '_Side Pane', None, None, lambda ign, self: self._action_show_sidepane(), True),
-        ], self)
+        self.action_group.add_radio_actions([
+            ('sidebar-tree', gtk.STOCK_OPEN, 'Tree', None, 'Display the tree pane on the left', 1),
+            ('sidebar-shortcuts', 'thunar-shortcuts', 'Shortcuts', None, 'Display the shortcuts on the left', 2),
+            ('sidebar-disabled', None, 'Hidden', None, 'Hide the sidebar', 3),
+        ], 2, lambda action, whatever, self: self._action_sidebar_toggled(), self)
         self.action_group.add_radio_actions([
             ('view-as-icons', None, 'View as _Icons'),
             ('view-as-list', None, 'View as _List'),
@@ -98,6 +108,9 @@
             ('about', gtk.STOCK_DIALOG_INFO, '_About'),
         ], self)
 
+        self.action_group.get_action('sidebar-tree').set_property('is-important', True)
+        self.action_group.get_action('sidebar-shortcuts').set_property('is-important', True)
+
         self.action_group.get_action('copy-files').set_property('sensitive', False)
         self.action_group.get_action('cut-files').set_property('sensitive', False)
         self.action_group.get_action('paste-files').set_property('sensitive', False)
@@ -119,12 +132,25 @@
         self.add(self.main_vbox)
         self.main_vbox.show()
 
+        frame = gtk.Frame()
+        frame.set_shadow_type(gtk.SHADOW_OUT)
+        self.main_vbox.pack_start(frame, False, False, 0)
+        frame.show()
+
         menu_bar = self.ui_manager.get_widget('/main-menu')
-        self.main_vbox.pack_start(menu_bar, False, False, 0)
+        #self.main_vbox.pack_start(menu_bar, False, False, 0)
+        frame.add(menu_bar)
         menu_bar.show()
 
+        frame = gtk.Frame()
+        frame.set_shadow_type(gtk.SHADOW_OUT)
+        self.main_vbox.pack_start(frame, False, False, 0)
+        frame.show()
+
         tool_bar = self.ui_manager.get_widget('/main-toolbar')
-        self.main_vbox.pack_start(tool_bar, False, False, 0)
+        tool_bar.set_style(gtk.TOOLBAR_BOTH_HORIZ)
+        #self.main_vbox.pack_start(tool_bar, False, False, 0)
+        frame.add(tool_bar)
         tool_bar.show()
 
         self.main_hbox = gtk.HPaned()
@@ -135,12 +161,13 @@
         self.main_hbox.set_position(self.sidepane.size_request()[0])
         self.sidepane.select_by_info(self.info)
         self.sidepane_selection_id = self.sidepane.connect('directory-changed', lambda ign, info: self._action_open_dir(info))
-        self.main_hbox.add1(self.sidepane)
+        self.sidepane_selection_id = self.sidepane.connect('hide-sidepane', lambda ign: self.action_group.get_action('sidebar-disabled').activate())
+        self.main_hbox.pack1(self.sidepane, True, False)
         self.sidepane.show()
 
         self.swin = gtk.ScrolledWindow(None, None)
         self.swin.set_policy(gtk.POLICY_AUTOMATIC, gtk.POLICY_AUTOMATIC)
-        self.main_hbox.add2(self.swin)
+        self.main_hbox.pack2(self.swin, True, False)
         self.swin.show()
 
         if icon_view_support:
@@ -187,11 +214,14 @@
         self.view.show()
 
 
-    def _action_show_sidepane(self):
-        if self.action_group.get_action('sidepane').get_active():
-            self.sidepane.show()
+    def _action_sidebar_toggled(self):
+        if self.action_group.get_action('sidebar-tree').get_active():
+            self.sidepane.set_state(ThunarSidePane.TREE)
+        elif self.action_group.get_action('sidebar-shortcuts').get_active():
+            self.sidepane.set_state(ThunarSidePane.SHORTCUTS)
         else:
-            self.sidepane.hide()
+            self.sidepane.set_state(ThunarSidePane.DISABLED)
+        self.sidepane.select_by_info(self.info)
 
 
     def _action_get_info(self):

Index: thunar.ui
===================================================================
RCS file: /var/cvs/thunar/design/ui/thunar.ui,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -d -r1.3 -r1.4
--- thunar.ui	28 Feb 2005 22:04:12 -0000	1.3
+++ thunar.ui	3 Mar 2005 00:16:19 -0000	1.4
@@ -54,7 +54,13 @@
       <menuitem action="show-hidden-files" />
 -->
       <separator />
-      <menuitem action="sidepane" />
+
+      <menu action="view-sidebar-menu">
+        <menuitem action="sidebar-tree" />
+        <menuitem action="sidebar-shortcuts" />
+        <menuitem action="sidebar-disabled" />
+      </menu>
+
       <separator />
 
       <menuitem action="view-as-icons" />
@@ -90,6 +96,7 @@
     <separator />
     <toolitem action="reload" />
     <separator />
-    <toolitem action="go-home" />
+    <toolitem action="sidebar-tree" />
+    <toolitem action="sidebar-shortcuts" />
   </toolbar>
 </ui>




More information about the Thunar-workers mailing list