[meld] Add support for labelling folder comparison tabs (closes bgo#692907)



commit 9cb286b9e214182407094c7362c3379520343f6c
Author: Kai Willadsen <kai willadsen gmail com>
Date:   Wed Feb 6 06:35:41 2013 +1000

    Add support for labelling folder comparison tabs (closes bgo#692907)

 meld/dirdiff.py |   15 ++++++++++++++-
 1 files changed, 14 insertions(+), 1 deletions(-)
---
diff --git a/meld/dirdiff.py b/meld/dirdiff.py
index d5cce9e..159fd42 100644
--- a/meld/dirdiff.py
+++ b/meld/dirdiff.py
@@ -268,6 +268,7 @@ class DirDiff(melddoc.MeldDoc, gnomeglade.Component):
         self.widget.connect("style-set", self.on_style_set)
         self.widget.ensure_style()
 
+        self.custom_labels = []
         self.set_num_panes(num_panes)
 
         self.widget.connect("style-set", self.model.on_style_set)
@@ -1273,11 +1274,23 @@ class DirDiff(melddoc.MeldDoc, gnomeglade.Component):
     def recompute_label(self):
         root = self.model.get_iter_root()
         filenames = self.model.value_paths(root)
-        shortnames = misc.shorten_names(*filenames)
+        if self.custom_labels:
+            label_options = zip(self.custom_labels, filenames)
+            shortnames = [l[0] or l[1] for l in label_options]
+        else:
+            shortnames = misc.shorten_names(*filenames)
         self.label_text = " : ".join(shortnames)
         self.tooltip_text = self.label_text
         self.label_changed()
 
+    def set_labels(self, labels):
+        labels = labels[:self.num_panes]
+        extra = self.num_panes - len(labels)
+        if extra:
+            labels.extend([""] * extra)
+        self.custom_labels = labels
+        self.recompute_label()
+
     def _update_diffmaps(self):
         self.diffmap[0].queue_draw()
         self.diffmap[1].queue_draw()



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]