gtg team mailing list archive
-
gtg team
-
Mailing list archive
-
Message #03408
[Merge] lp:~bertrand-rousseau/gtg/bug-826693 into lp:gtg
Bertrand Rousseau has proposed merging lp:~bertrand-rousseau/gtg/bug-826693 into lp:gtg.
Requested reviews:
Gtg developers (gtg)
Related bugs:
Bug #826693 in Getting Things GNOME!: "regression: white space at the left of the tag sidebar"
https://bugs.launchpad.net/gtg/+bug/826693
For more details, see:
https://code.launchpad.net/~bertrand-rousseau/gtg/bug-826693/+merge/74638
This is a fix for bug #826693: regression: white space at the left of the tag sidebar
This patch restore the automatic removal of the expander column in treeviews, which allows to avoid wasting horizontal space when a list of tag/task with no child is displayed.
--
https://code.launchpad.net/~bertrand-rousseau/gtg/bug-826693/+merge/74638
Your team Gtg developers is requested to review the proposed merge of lp:~bertrand-rousseau/gtg/bug-826693 into lp:gtg.
=== modified file 'GTG/gtk/browser/treeview_factory.py'
--- GTG/gtk/browser/treeview_factory.py 2011-08-24 22:13:48 +0000
+++ GTG/gtk/browser/treeview_factory.py 2011-09-08 16:40:28 +0000
@@ -29,6 +29,29 @@
from GTG.gtk import colors
from GTG.tools import dates
+
+class AutoExpandTreeView(TreeView):
+ """TreeView which hide the expander column when not needed"""
+
+ def __init__(self, tree, desc):
+ TreeView.__init__(self, tree, desc)
+ self.show_expander = False
+ self.treemodel.connect("row-has-child-toggled", self.__show_expander_col)
+ self.__show_expander_col(self.treemodel, None, None)
+
+ def __has_child(self, model, path, iter):
+ if model.iter_has_child(iter):
+ self.show_expander = True
+ return True
+
+ def __show_expander_col(self, treemodel, path, iter):
+ self.show_expander = False
+ treemodel.foreach(self.__has_child)
+ if self.show_expander:
+ self.set_show_expanders(True)
+ else:
+ self.set_show_expanders(False)
+
class TreeviewFactory():
def __init__(self,requester,config):
@@ -423,7 +446,7 @@
return desc
def build_task_treeview(self,tree,desc):
- treeview = TreeView(tree,desc)
+ treeview = AutoExpandTreeView(tree,desc)
#Now that the treeview is done, we can polish
treeview.set_main_search_column('label')
treeview.set_expander_column('label')
@@ -440,7 +463,7 @@
return treeview
def build_tag_treeview(self,tree,desc):
- treeview = TreeView(tree,desc)
+ treeview = AutoExpandTreeView(tree,desc)
# Global treeview properties
treeview.set_property("enable-tree-lines", False)
treeview.set_rules_hint(False)