From 71b277acb12353eac21fddc2531c8bac886b058b Mon Sep 17 00:00:00 2001 From: Liming An Date: Tue, 8 May 2012 19:48:07 +0800 Subject: Hob: add group number show and 'bold' visible effect for Package view as ui design, add number of packages for each group, and make the text font to 'bold' when row be selected [YOCTO #2195] (Bitbake rev: 5812176a679a39a4d096134c871c3d24a7e505ea) Signed-off-by: Liming An Signed-off-by: Richard Purdie --- bitbake/lib/bb/ui/crumbs/packageselectionpage.py | 26 ++++++++++++++++++++++++ 1 file changed, 26 insertions(+) (limited to 'bitbake/lib/bb/ui/crumbs/packageselectionpage.py') diff --git a/bitbake/lib/bb/ui/crumbs/packageselectionpage.py b/bitbake/lib/bb/ui/crumbs/packageselectionpage.py index 104d49d108..238e2f9771 100755 --- a/bitbake/lib/bb/ui/crumbs/packageselectionpage.py +++ b/bitbake/lib/bb/ui/crumbs/packageselectionpage.py @@ -39,6 +39,7 @@ class PackageSelectionPage (HobPage): 'columns' : [{ 'col_name' : 'Package name', 'col_id' : PackageListModel.COL_NAME, + 'col_t_id' : PackageListModel.COL_FONT, 'col_style': 'text', 'col_min' : 100, 'col_max' : 300, @@ -46,6 +47,7 @@ class PackageSelectionPage (HobPage): }, { 'col_name' : 'Brought in by', 'col_id' : PackageListModel.COL_BINB, + 'col_t_id' : PackageListModel.COL_FONT, 'col_style': 'binb', 'col_min' : 100, 'col_max' : 350, @@ -53,6 +55,7 @@ class PackageSelectionPage (HobPage): }, { 'col_name' : 'Size', 'col_id' : PackageListModel.COL_SIZE, + 'col_t_id' : PackageListModel.COL_FONT, 'col_style': 'text', 'col_min' : 100, 'col_max' : 300, @@ -60,7 +63,9 @@ class PackageSelectionPage (HobPage): }, { 'col_name' : 'Included', 'col_id' : PackageListModel.COL_INC, + 'col_t_id' : PackageListModel.COL_FONT, 'col_style': 'check toggle', + 'col_group': 'tree store group', 'col_min' : 100, 'col_max' : 100 }] @@ -70,6 +75,7 @@ class PackageSelectionPage (HobPage): 'columns' : [{ 'col_name' : 'Package name', 'col_id' : PackageListModel.COL_NAME, + 'col_t_id' : PackageListModel.COL_FONT, 'col_style': 'text', 'col_min' : 100, 'col_max' : 400, @@ -77,6 +83,7 @@ class PackageSelectionPage (HobPage): }, { 'col_name' : 'Size', 'col_id' : PackageListModel.COL_SIZE, + 'col_t_id' : PackageListModel.COL_FONT, 'col_style': 'text', 'col_min' : 100, 'col_max' : 500, @@ -85,6 +92,7 @@ class PackageSelectionPage (HobPage): 'col_name' : 'Included', 'col_id' : PackageListModel.COL_INC, 'col_style': 'check toggle', + 'col_group': 'tree store group', 'col_min' : 100, 'col_max' : 100 }] @@ -117,6 +125,7 @@ class PackageSelectionPage (HobPage): filter = page['filter'] tab.set_model(self.package_model.tree_model(filter)) tab.connect("toggled", self.table_toggled_cb, page['name']) + tab.connect_group_selection(self.table_selected_cb) if page['name'] == "Included": tab.connect("button-release-event", self.button_click_cb) tab.connect("cell-fadeinout-stopped", self.after_fadeout_checkin_include) @@ -247,3 +256,20 @@ class PackageSelectionPage (HobPage): def after_fadeout_checkin_include(self, table, ctrl, cell, tree): tree.set_model(self.package_model.tree_model(self.pages[0]['filter'])) tree.expand_all() + + def foreach_cell_change_font(self, model, path, iter, paths=None): + # Changed the font for a group cells + if path and iter and path[0] == paths[0]: + self.package_model.set(iter, self.package_model.COL_FONT, "bold") + else: + if iter and model.iter_parent(iter) == None: + self.package_model.set(iter, self.package_model.COL_FONT, '11') + else: + self.package_model.set(iter, self.package_model.COL_FONT, '10') + + def table_selected_cb(self, selection): + model, paths = selection.get_selected_rows() + if paths: + child_path = self.package_model.convert_vpath_to_path(model, paths[0]) + self.package_model.foreach(self.foreach_cell_change_font, child_path) + -- cgit v1.2.3-54-g00ecf