summaryrefslogtreecommitdiffstats
path: root/bitbake/lib/bb/ui/crumbs/packageselectionpage.py
diff options
context:
space:
mode:
authorLiming An <limingx.l.an@intel.com>2012-05-08 19:48:07 +0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2012-05-09 21:56:46 +0100
commit71b277acb12353eac21fddc2531c8bac886b058b (patch)
tree8e10221eb4eccec6711718785483f2527469daee /bitbake/lib/bb/ui/crumbs/packageselectionpage.py
parenta75562aa8b62247d09c52c92a620b947d19bbb95 (diff)
downloadpoky-71b277acb12353eac21fddc2531c8bac886b058b.tar.gz
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 <limingx.l.an@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/lib/bb/ui/crumbs/packageselectionpage.py')
-rwxr-xr-xbitbake/lib/bb/ui/crumbs/packageselectionpage.py26
1 files changed, 26 insertions, 0 deletions
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):
39 'columns' : [{ 39 'columns' : [{
40 'col_name' : 'Package name', 40 'col_name' : 'Package name',
41 'col_id' : PackageListModel.COL_NAME, 41 'col_id' : PackageListModel.COL_NAME,
42 'col_t_id' : PackageListModel.COL_FONT,
42 'col_style': 'text', 43 'col_style': 'text',
43 'col_min' : 100, 44 'col_min' : 100,
44 'col_max' : 300, 45 'col_max' : 300,
@@ -46,6 +47,7 @@ class PackageSelectionPage (HobPage):
46 }, { 47 }, {
47 'col_name' : 'Brought in by', 48 'col_name' : 'Brought in by',
48 'col_id' : PackageListModel.COL_BINB, 49 'col_id' : PackageListModel.COL_BINB,
50 'col_t_id' : PackageListModel.COL_FONT,
49 'col_style': 'binb', 51 'col_style': 'binb',
50 'col_min' : 100, 52 'col_min' : 100,
51 'col_max' : 350, 53 'col_max' : 350,
@@ -53,6 +55,7 @@ class PackageSelectionPage (HobPage):
53 }, { 55 }, {
54 'col_name' : 'Size', 56 'col_name' : 'Size',
55 'col_id' : PackageListModel.COL_SIZE, 57 'col_id' : PackageListModel.COL_SIZE,
58 'col_t_id' : PackageListModel.COL_FONT,
56 'col_style': 'text', 59 'col_style': 'text',
57 'col_min' : 100, 60 'col_min' : 100,
58 'col_max' : 300, 61 'col_max' : 300,
@@ -60,7 +63,9 @@ class PackageSelectionPage (HobPage):
60 }, { 63 }, {
61 'col_name' : 'Included', 64 'col_name' : 'Included',
62 'col_id' : PackageListModel.COL_INC, 65 'col_id' : PackageListModel.COL_INC,
66 'col_t_id' : PackageListModel.COL_FONT,
63 'col_style': 'check toggle', 67 'col_style': 'check toggle',
68 'col_group': 'tree store group',
64 'col_min' : 100, 69 'col_min' : 100,
65 'col_max' : 100 70 'col_max' : 100
66 }] 71 }]
@@ -70,6 +75,7 @@ class PackageSelectionPage (HobPage):
70 'columns' : [{ 75 'columns' : [{
71 'col_name' : 'Package name', 76 'col_name' : 'Package name',
72 'col_id' : PackageListModel.COL_NAME, 77 'col_id' : PackageListModel.COL_NAME,
78 'col_t_id' : PackageListModel.COL_FONT,
73 'col_style': 'text', 79 'col_style': 'text',
74 'col_min' : 100, 80 'col_min' : 100,
75 'col_max' : 400, 81 'col_max' : 400,
@@ -77,6 +83,7 @@ class PackageSelectionPage (HobPage):
77 }, { 83 }, {
78 'col_name' : 'Size', 84 'col_name' : 'Size',
79 'col_id' : PackageListModel.COL_SIZE, 85 'col_id' : PackageListModel.COL_SIZE,
86 'col_t_id' : PackageListModel.COL_FONT,
80 'col_style': 'text', 87 'col_style': 'text',
81 'col_min' : 100, 88 'col_min' : 100,
82 'col_max' : 500, 89 'col_max' : 500,
@@ -85,6 +92,7 @@ class PackageSelectionPage (HobPage):
85 'col_name' : 'Included', 92 'col_name' : 'Included',
86 'col_id' : PackageListModel.COL_INC, 93 'col_id' : PackageListModel.COL_INC,
87 'col_style': 'check toggle', 94 'col_style': 'check toggle',
95 'col_group': 'tree store group',
88 'col_min' : 100, 96 'col_min' : 100,
89 'col_max' : 100 97 'col_max' : 100
90 }] 98 }]
@@ -117,6 +125,7 @@ class PackageSelectionPage (HobPage):
117 filter = page['filter'] 125 filter = page['filter']
118 tab.set_model(self.package_model.tree_model(filter)) 126 tab.set_model(self.package_model.tree_model(filter))
119 tab.connect("toggled", self.table_toggled_cb, page['name']) 127 tab.connect("toggled", self.table_toggled_cb, page['name'])
128 tab.connect_group_selection(self.table_selected_cb)
120 if page['name'] == "Included": 129 if page['name'] == "Included":
121 tab.connect("button-release-event", self.button_click_cb) 130 tab.connect("button-release-event", self.button_click_cb)
122 tab.connect("cell-fadeinout-stopped", self.after_fadeout_checkin_include) 131 tab.connect("cell-fadeinout-stopped", self.after_fadeout_checkin_include)
@@ -247,3 +256,20 @@ class PackageSelectionPage (HobPage):
247 def after_fadeout_checkin_include(self, table, ctrl, cell, tree): 256 def after_fadeout_checkin_include(self, table, ctrl, cell, tree):
248 tree.set_model(self.package_model.tree_model(self.pages[0]['filter'])) 257 tree.set_model(self.package_model.tree_model(self.pages[0]['filter']))
249 tree.expand_all() 258 tree.expand_all()
259
260 def foreach_cell_change_font(self, model, path, iter, paths=None):
261 # Changed the font for a group cells
262 if path and iter and path[0] == paths[0]:
263 self.package_model.set(iter, self.package_model.COL_FONT, "bold")
264 else:
265 if iter and model.iter_parent(iter) == None:
266 self.package_model.set(iter, self.package_model.COL_FONT, '11')
267 else:
268 self.package_model.set(iter, self.package_model.COL_FONT, '10')
269
270 def table_selected_cb(self, selection):
271 model, paths = selection.get_selected_rows()
272 if paths:
273 child_path = self.package_model.convert_vpath_to_path(model, paths[0])
274 self.package_model.foreach(self.foreach_cell_change_font, child_path)
275