Package: meld
Version: 1.0.0-1
Severity: wishlist
Tags: patch

Meld is a little inconsistent in the sense that 'Save As' is not
available from the toolbar or the File menu.  The attached patch
implements this.

Giridhar

-- 
Y Giridhar Appaji Nag | http://www.appaji.net/

-- System Information:
Debian Release: testing/unstable
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: i386 (i686)
Shell:  /bin/sh linked to /bin/bash
Kernel: Linux 2.6.11-1-686
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)

Versions of packages meld depends on:
ii  python                        2.3.5-3    An interactive high-level object-o
ii  python-glade2                 2.6.3-1    GTK+ bindings: Glade support
ii  python-gnome2                 2.10.0-3   Python bindings for the GNOME desk
ii  python-gtk2                   2.6.3-1    Python bindings for the GTK+ widge

Versions of packages meld recommends:
ii  python-gnome2-extras          2.10.0-4   Python bindings for the GNOME desk

-- no debconf information
diff -Nur meld-1.0.0.orig/glade2/meldapp.glade meld-1.0.0/glade2/meldapp.glade
--- meld-1.0.0.orig/glade2/meldapp.glade        2005-10-04 15:49:21.875377000 
+0530
+++ meld-1.0.0/glade2/meldapp.glade     2005-10-04 19:50:59.064688000 +0530
@@ -80,6 +80,28 @@
                          </child>
 
                          <child>
+                           <widget class="GtkImageMenuItem" 
id="menu_file_save_as">
+                             <property name="visible">True</property>
+                             <property name="label" translatable="yes">Save 
_As</property>
+                             <property name="use_underline">True</property>
+                             <signal name="activate" 
handler="on_menu_save_as_activate" last_modification_time="Fri, 01 Nov 2002 
18:22:54 GMT"/>
+                             <accelerator key="a" modifiers="GDK_CONTROL_MASK" 
signal="activate"/>
+
+                             <child internal-child="image">
+                               <widget class="GtkImage" id="image671">
+                                 <property name="visible">True</property>
+                                 <property name="stock">gtk-save-as</property>
+                                 <property name="icon_size">1</property>
+                                 <property name="xalign">0.5</property>
+                                 <property name="yalign">0.5</property>
+                                 <property name="xpad">0</property>
+                                 <property name="ypad">0</property>
+                               </widget>
+                             </child>
+                           </widget>
+                         </child>
+
+                         <child>
                            <widget class="GtkImageMenuItem" 
id="menu_file_save">
                              <property name="visible">True</property>
                              <property name="label" 
translatable="yes">_Save</property>
@@ -399,7 +421,7 @@
              </child>
 
              <child>
-               <widget class="GtkToolButton" id="button15">
+               <widget class="GtkToolButton" id="toolbar_save">
                  <property name="visible">True</property>
                  <property name="label">Save</property>
                  <property name="use_underline">True</property>
@@ -416,6 +438,23 @@
              </child>
 
              <child>
+               <widget class="GtkToolButton" id="toolbar_save_as">
+                 <property name="visible">True</property>
+                 <property name="label">Save As</property>
+                 <property name="use_underline">True</property>
+                 <property name="stock_id">gtk-save-as</property>
+                 <property name="visible_horizontal">True</property>
+                 <property name="visible_vertical">True</property>
+                 <property name="is_important">False</property>
+                 <signal name="clicked" handler="on_menu_save_as_activate" 
last_modification_time="Fri, 01 Nov 2002 18:25:12 GMT"/>
+               </widget>
+               <packing>
+                 <property name="expand">False</property>
+                 <property name="homogeneous">True</property>
+               </packing>
+             </child>
+
+             <child>
                <widget class="GtkToolButton" id="button_undo">
                  <property name="visible">True</property>
                  <property name="label">Undo</property>

diff -Nur meld-1.0.0.orig/meldapp.py meld-1.0.0/meldapp.py
--- meld-1.0.0.orig/meldapp.py  2005-10-04 15:49:21.958381000 +0530
+++ meld-1.0.0/meldapp.py       2005-10-04 19:32:52.875390000 +0530
@@ -602,6 +602,11 @@
     def on_menu_save_activate(self, menuitem):
         self.current_doc().save()
 
+    def on_menu_save_as_activate(self, menuitem):
+        pane = self.current_doc()._get_focused_pane()
+        if pane >= 0:
+            self.current_doc().save_file(pane, 1)
+
     def on_menu_refresh_activate(self, *args):
         self.current_doc().refresh()
 
diff -Nur meld-1.0.0.orig/melddoc.py meld-1.0.0/melddoc.py
--- meld-1.0.0.orig/melddoc.py  2005-10-04 15:49:21.962380000 +0530
+++ meld-1.0.0/melddoc.py       2005-10-04 19:50:09.812331000 +0530
@@ -47,6 +47,9 @@
     def save(self):
         pass
 
+    def save_file(self, pane, saveas=0):
+        pass
+
     def stop(self):
         if len(self.scheduler.tasks):
             del self.scheduler.tasks[0]

Reply via email to