Rev 536: merge removal of glade from olive rename dialog. in file:///data/jelmer/bzr-gtk/trunk/

Jelmer Vernooij jelmer at samba.org
Fri Jul 18 11:29:29 BST 2008


At file:///data/jelmer/bzr-gtk/trunk/

------------------------------------------------------------
revno: 536
revision-id: jelmer at samba.org-20080718102927-rjlytptxscmyolvs
parent: jelmer at samba.org-20080718102703-z6wef7x9qokf4gsv
parent: colbrac at xs4all.nl-20080717213221-zmuvu1jicqdgtijs
committer: Jelmer Vernooij <jelmer at samba.org>
branch nick: trunk
timestamp: Fri 2008-07-18 12:29:27 +0200
message:
  merge removal of glade from olive rename dialog.
modified:
  NEWS                           news-20070325173539-3va57o99cz3o57xe-1
  olive/__init__.py              __init__.py-20060925014013-13wdvwl8vi8gfqi1-2
  olive/rename.py                rename.py-20060809143844-edgdedgalykd5zci-1
    ------------------------------------------------------------
    revno: 533.4.1
    revision-id: colbrac at xs4all.nl-20080717213221-zmuvu1jicqdgtijs
    parent: jelmer at samba.org-20080717115103-djh5sb0pvpse2zkb
    committer: Jasper Groenewegen <colbrac at xs4all.nl>
    branch nick: renamedialog
    timestamp: Thu 2008-07-17 23:32:21 +0200
    message:
      Replace glade OliveRename dialog with RenameDialog
    modified:
      olive/__init__.py              __init__.py-20060925014013-13wdvwl8vi8gfqi1-2
      olive/rename.py                rename.py-20060809143844-edgdedgalykd5zci-1
=== modified file 'NEWS'
--- a/NEWS	2008-07-18 10:27:03 +0000
+++ b/NEWS	2008-07-18 10:29:27 +0000
@@ -53,7 +53,7 @@
 
   * Remove glade from merge dialog. (Jasper Groenewegen)
 
-  * Remove glade from olive about dialog. (Jasper Groenewegen)
+  * Remove glade from olive about, rename dialogs. (Jasper Groenewegen)
 
 0.94.0    2008-05-04
 

=== modified file 'olive/__init__.py'
--- a/olive/__init__.py	2008-07-18 10:27:03 +0000
+++ b/olive/__init__.py	2008-07-18 10:29:27 +0000
@@ -736,9 +736,12 @@
     
     def on_menuitem_file_rename_activate(self, widget):
         """ File/Rename... menu handler. """
-        from rename import OliveRename
-        rename = OliveRename(self.wt, self.wtpath, self.get_selected_right())
-        rename.display()
+        from bzrlib.plugins.gtk.olive.rename import RenameDialog
+        rename = RenameDialog(self.wt, self.wtpath, self.get_selected_right(), self.window)
+        response = rename.run()
+        rename.destroy()
+        if response == gtk.RESPONSE_OK:
+            self.refresh_right()
 
     def on_menuitem_remove_file_activate(self, widget):
         """ Remove (unversion) selected file. """

=== modified file 'olive/rename.py'
--- a/olive/rename.py	2008-05-05 18:16:46 +0000
+++ b/olive/rename.py	2008-07-17 21:32:21 +0000
@@ -23,49 +23,60 @@
     pass
 
 import gtk
-import gtk.glade
 
 import bzrlib.errors as errors
 from bzrlib.workingtree import WorkingTree
 
-from errors import show_bzr_error
+from bzrlib.plugins.gtk import _i18n
 from bzrlib.plugins.gtk.dialog import error_dialog
-from guifiles import GLADEFILENAME
-from bzrlib.plugins.gtk import _i18n
-
-
-class OliveRename:
+from bzrlib.plugins.gtk.errors import show_bzr_error
+
+
+class RenameDialog(gtk.Dialog):
     """ Display the Rename dialog and perform the needed actions. """
-    def __init__(self, wt, wtpath, selected=[]):
-        """ Initialize the Rename dialog. """
-        self.glade = gtk.glade.XML(GLADEFILENAME, 'window_rename')
-        
-        self.window = self.glade.get_widget('window_rename')
-        self.entry = self.glade.get_widget('entry_rename')
-        
-        # Dictionary for signal_autoconnect
-        dic = { "on_button_rename_rename_clicked": self.rename,
-                "on_button_rename_cancel_clicked": self.close }
-        
-        # Connect the signals to the handlers
-        self.glade.signal_autoconnect(dic)
-        
+    
+    def __init__(self, wt, wtpath, selected=None, parent=None):
+        """ Initialize the Rename file dialog. """
+        gtk.Dialog.__init__(self, title="Olive - Rename files",
+                                  parent=parent,
+                                  flags=0,
+                                  buttons=(gtk.STOCK_CANCEL, gtk.RESPONSE_CANCEL))
+        
+        # Get arguments
         self.wt = wt
         self.wtpath = wtpath
         self.selected = selected
         
-    def display(self):
-        """ Display the Rename dialog. """
+        # Create widgets
+        self._hbox = gtk.HBox()
+        self._label_rename_to = gtk.Label(_i18n("Rename to"))
+        self._entry = gtk.Entry()
+        self._button_rename = gtk.Button(_i18n("_Rename"))
+        self._button_rename_icon = gtk.Image()
+        self._button_rename_icon.set_from_stock(gtk.STOCK_APPLY, gtk.ICON_SIZE_BUTTON)
+        self._button_rename.set_image(self._button_rename_icon)
+        
+        self._entry.connect('activate', self._on_rename_clicked)
+        self._button_rename.connect('clicked', self._on_rename_clicked)
+        
+        # Set text
         if self.selected is not None:
-            self.entry.set_text(self.selected)
-        
-        self.window.show_all()
-
+            self._entry.set_text(self.selected)
+        
+        # Add widgets to dialog
+        self.vbox.add(self._hbox)
+        self._hbox.add(self._label_rename_to)
+        self._hbox.add(self._entry)
+        self._hbox.set_spacing(5)
+        self.action_area.pack_end(self._button_rename)
+        
+        self.vbox.show_all()
+        
     @show_bzr_error
-    def rename(self, widget):
+    def _on_rename_clicked(self, widget):
         # Get entry
         old_filename = self.selected
-        new_filename = self.entry.get_text()
+        new_filename = self._entry.get_text()
             
         if old_filename is None:
             error_dialog(_i18n('No file was selected'),
@@ -89,7 +100,5 @@
                          _i18n('The destination is not in the same branch.'))
             return
         wt1.rename_one(source, destination)
-        self.close()
-    
-    def close(self, widget=None):
-        self.window.destroy()
+        
+        self.response(gtk.RESPONSE_OK)




More information about the bazaar-commits mailing list