* [PATCH 0/4] Hob tweaks
@ 2012-04-06 23:18 Joshua Lock
2012-04-06 23:18 ` [PATCH 1/4] lib/bb/ui/crumbs: only display one 'Brought in by' item in Hob trees Joshua Lock
` (4 more replies)
0 siblings, 5 replies; 6+ messages in thread
From: Joshua Lock @ 2012-04-06 23:18 UTC (permalink / raw)
To: bitbake-devel
A series of minor tweaks based on feedback from design in bug #2182
https://bugzilla.yoctoproject.org/show_bug.cgi?id=2182
Cheers,
Joshua
The following changes since commit d49db15badb77855cef855ee73430fcbc16b6916:
Hob: a minor fix on pmake (2012-04-05 18:47:37 +0100)
are available in the git repository at:
git://github.com/incandescant/bitbake josh/hob
https://github.com/incandescant/bitbake/tree/josh/hob
Joshua Lock (4):
lib/bb/ui/crumbs: only display one 'Brought in by' item in Hob trees
lib/bb/ui/crumbs/recipeselectionpage: include 'Group' in 'Included'
view
lib/bb/ui/crumbs/[recipe|package]selectionpage: fixed width Included
col
selectionpage: show persistent tooltips on click
lib/bb/ui/crumbs/hobwidget.py | 15 ++++++++
lib/bb/ui/crumbs/packageselectionpage.py | 38 +++++++++++++--------
lib/bb/ui/crumbs/recipeselectionpage.py | 53 +++++++++++++++++++----------
3 files changed, 73 insertions(+), 33 deletions(-)
--
1.7.7.6
^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH 1/4] lib/bb/ui/crumbs: only display one 'Brought in by' item in Hob trees
2012-04-06 23:18 [PATCH 0/4] Hob tweaks Joshua Lock
@ 2012-04-06 23:18 ` Joshua Lock
2012-04-06 23:18 ` [PATCH 2/4] lib/bb/ui/crumbs/recipeselectionpage: include 'Group' in 'Included' view Joshua Lock
` (3 subsequent siblings)
4 siblings, 0 replies; 6+ messages in thread
From: Joshua Lock @ 2012-04-06 23:18 UTC (permalink / raw)
To: bitbake-devel
The design calls for a single 'Brought in by' item to be shown in the
tree views with any extra items to be shown in the tooltip.
Signed-off-by: Joshua Lock <josh@linux.intel.com>
---
lib/bb/ui/crumbs/hobwidget.py | 13 +++++++++++++
lib/bb/ui/crumbs/packageselectionpage.py | 2 +-
lib/bb/ui/crumbs/recipeselectionpage.py | 2 +-
3 files changed, 15 insertions(+), 2 deletions(-)
diff --git a/lib/bb/ui/crumbs/hobwidget.py b/lib/bb/ui/crumbs/hobwidget.py
index edb85db..3f6dd34 100644
--- a/lib/bb/ui/crumbs/hobwidget.py
+++ b/lib/bb/ui/crumbs/hobwidget.py
@@ -150,6 +150,10 @@ class HobViewTable (gtk.VBox):
col.pack_end(cell, True)
col.set_attributes(cell, active=column['col_id'])
self.toggle_columns.append(column['col_name'])
+ elif column['col_style'] == 'binb':
+ cell = gtk.CellRendererText()
+ col.pack_start(cell, True)
+ col.set_cell_data_func(cell, self.display_binb_cb, column['col_id'])
scroll = gtk.ScrolledWindow()
scroll.set_policy(gtk.POLICY_NEVER, gtk.POLICY_ALWAYS)
@@ -157,6 +161,15 @@ class HobViewTable (gtk.VBox):
scroll.add(self.table_tree)
self.pack_start(scroll, True, True, 0)
+ def display_binb_cb(self, col, cell, model, it, col_id):
+ binb = model.get_value(it, col_id)
+ # Just display the first item
+ if binb:
+ bin = binb.split(', ')
+ cell.set_property('text', bin[0])
+
+ return True
+
def set_model(self, tree_model):
self.table_tree.set_model(tree_model)
diff --git a/lib/bb/ui/crumbs/packageselectionpage.py b/lib/bb/ui/crumbs/packageselectionpage.py
index 7926636..78963f6 100755
--- a/lib/bb/ui/crumbs/packageselectionpage.py
+++ b/lib/bb/ui/crumbs/packageselectionpage.py
@@ -45,7 +45,7 @@ class PackageSelectionPage (HobPage):
}, {
'col_name' : 'Brought in by',
'col_id' : PackageListModel.COL_BINB,
- 'col_style': 'text',
+ 'col_style': 'binb',
'col_min' : 100,
'col_max' : 350
}, {
diff --git a/lib/bb/ui/crumbs/recipeselectionpage.py b/lib/bb/ui/crumbs/recipeselectionpage.py
index e4616a8..956b02d 100755
--- a/lib/bb/ui/crumbs/recipeselectionpage.py
+++ b/lib/bb/ui/crumbs/recipeselectionpage.py
@@ -45,7 +45,7 @@ class RecipeSelectionPage (HobPage):
}, {
'col_name' : 'Brought in by',
'col_id' : RecipeListModel.COL_BINB,
- 'col_style': 'text',
+ 'col_style': 'binb',
'col_min' : 100,
'col_max' : 500
}, {
--
1.7.7.6
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [PATCH 2/4] lib/bb/ui/crumbs/recipeselectionpage: include 'Group' in 'Included' view
2012-04-06 23:18 [PATCH 0/4] Hob tweaks Joshua Lock
2012-04-06 23:18 ` [PATCH 1/4] lib/bb/ui/crumbs: only display one 'Brought in by' item in Hob trees Joshua Lock
@ 2012-04-06 23:18 ` Joshua Lock
2012-04-06 23:18 ` [PATCH 3/4] lib/bb/ui/crumbs/[recipe|package]selectionpage: fixed width Included col Joshua Lock
` (2 subsequent siblings)
4 siblings, 0 replies; 6+ messages in thread
From: Joshua Lock @ 2012-04-06 23:18 UTC (permalink / raw)
To: bitbake-devel
The 'Included' tab of the notebook should show the 'Group' a recipe
belongs to, per the design.
Signed-off-by: Joshua Lock <josh@linux.intel.com>
---
lib/bb/ui/crumbs/recipeselectionpage.py | 6 ++++++
1 files changed, 6 insertions(+), 0 deletions(-)
diff --git a/lib/bb/ui/crumbs/recipeselectionpage.py b/lib/bb/ui/crumbs/recipeselectionpage.py
index 956b02d..8314449 100755
--- a/lib/bb/ui/crumbs/recipeselectionpage.py
+++ b/lib/bb/ui/crumbs/recipeselectionpage.py
@@ -49,6 +49,12 @@ class RecipeSelectionPage (HobPage):
'col_min' : 100,
'col_max' : 500
}, {
+ 'col_name' : 'Group',
+ 'col_id' : RecipeListModel.COL_GROUP,
+ 'col_style': 'text',
+ 'col_min' : 100,
+ 'col_max' : 300
+ }, {
'col_name' : 'Included',
'col_id' : RecipeListModel.COL_INC,
'col_style': 'check toggle',
--
1.7.7.6
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [PATCH 3/4] lib/bb/ui/crumbs/[recipe|package]selectionpage: fixed width Included col
2012-04-06 23:18 [PATCH 0/4] Hob tweaks Joshua Lock
2012-04-06 23:18 ` [PATCH 1/4] lib/bb/ui/crumbs: only display one 'Brought in by' item in Hob trees Joshua Lock
2012-04-06 23:18 ` [PATCH 2/4] lib/bb/ui/crumbs/recipeselectionpage: include 'Group' in 'Included' view Joshua Lock
@ 2012-04-06 23:18 ` Joshua Lock
2012-04-06 23:18 ` [PATCH 4/4] selectionpage: show persistent tooltips on click Joshua Lock
2012-04-10 22:48 ` [PATCH 0/4] Hob tweaks Richard Purdie
4 siblings, 0 replies; 6+ messages in thread
From: Joshua Lock @ 2012-04-06 23:18 UTC (permalink / raw)
To: bitbake-devel
Set the expand property on all columns other than the 'Included' column
so that the included column remains at the max size set.
Signed-off-by: Joshua Lock <josh@linux.intel.com>
---
lib/bb/ui/crumbs/hobwidget.py | 2 +
lib/bb/ui/crumbs/packageselectionpage.py | 23 +++++++++++-------
lib/bb/ui/crumbs/recipeselectionpage.py | 36 ++++++++++++++++++-----------
3 files changed, 38 insertions(+), 23 deletions(-)
diff --git a/lib/bb/ui/crumbs/hobwidget.py b/lib/bb/ui/crumbs/hobwidget.py
index 3f6dd34..9ea70ad 100644
--- a/lib/bb/ui/crumbs/hobwidget.py
+++ b/lib/bb/ui/crumbs/hobwidget.py
@@ -127,6 +127,8 @@ class HobViewTable (gtk.VBox):
col.set_min_width(column['col_min'])
if 'col_max' in column.keys():
col.set_max_width(column['col_max'])
+ if 'expand' in column.keys():
+ col.set_expand(True)
self.table_tree.append_column(col)
if (not 'col_style' in column.keys()) or column['col_style'] == 'text':
diff --git a/lib/bb/ui/crumbs/packageselectionpage.py b/lib/bb/ui/crumbs/packageselectionpage.py
index 78963f6..b1a199c 100755
--- a/lib/bb/ui/crumbs/packageselectionpage.py
+++ b/lib/bb/ui/crumbs/packageselectionpage.py
@@ -41,25 +41,28 @@ class PackageSelectionPage (HobPage):
'col_id' : PackageListModel.COL_NAME,
'col_style': 'text',
'col_min' : 100,
- 'col_max' : 300
+ 'col_max' : 300,
+ 'expand' : 'True'
}, {
'col_name' : 'Brought in by',
'col_id' : PackageListModel.COL_BINB,
'col_style': 'binb',
'col_min' : 100,
- 'col_max' : 350
+ 'col_max' : 350,
+ 'expand' : 'True'
}, {
'col_name' : 'Size',
'col_id' : PackageListModel.COL_SIZE,
'col_style': 'text',
'col_min' : 100,
- 'col_max' : 300
+ 'col_max' : 300,
+ 'expand' : 'True'
}, {
'col_name' : 'Included',
'col_id' : PackageListModel.COL_INC,
'col_style': 'check toggle',
- 'col_min' : 50,
- 'col_max' : 50
+ 'col_min' : 100,
+ 'col_max' : 100
}]
}, {
'name' : 'All packages',
@@ -69,19 +72,21 @@ class PackageSelectionPage (HobPage):
'col_id' : PackageListModel.COL_NAME,
'col_style': 'text',
'col_min' : 100,
- 'col_max' : 400
+ 'col_max' : 400,
+ 'expand' : 'True'
}, {
'col_name' : 'Size',
'col_id' : PackageListModel.COL_SIZE,
'col_style': 'text',
'col_min' : 100,
- 'col_max' : 500
+ 'col_max' : 500,
+ 'expand' : 'True'
}, {
'col_name' : 'Included',
'col_id' : PackageListModel.COL_INC,
'col_style': 'check toggle',
- 'col_min' : 50,
- 'col_max' : 50
+ 'col_min' : 100,
+ 'col_max' : 100
}]
}
]
diff --git a/lib/bb/ui/crumbs/recipeselectionpage.py b/lib/bb/ui/crumbs/recipeselectionpage.py
index 8314449..d70fe52 100755
--- a/lib/bb/ui/crumbs/recipeselectionpage.py
+++ b/lib/bb/ui/crumbs/recipeselectionpage.py
@@ -41,25 +41,28 @@ class RecipeSelectionPage (HobPage):
'col_id' : RecipeListModel.COL_NAME,
'col_style': 'text',
'col_min' : 100,
- 'col_max' : 400
+ 'col_max' : 400,
+ 'expand' : 'True'
}, {
'col_name' : 'Brought in by',
'col_id' : RecipeListModel.COL_BINB,
'col_style': 'binb',
'col_min' : 100,
- 'col_max' : 500
+ 'col_max' : 500,
+ 'expand' : 'True'
}, {
'col_name' : 'Group',
'col_id' : RecipeListModel.COL_GROUP,
'col_style': 'text',
'col_min' : 100,
- 'col_max' : 300
+ 'col_max' : 300,
+ 'expand' : 'True'
}, {
'col_name' : 'Included',
'col_id' : RecipeListModel.COL_INC,
'col_style': 'check toggle',
- 'col_min' : 50,
- 'col_max' : 50
+ 'col_min' : 100,
+ 'col_max' : 100
}]
}, {
'name' : 'All recipes',
@@ -69,25 +72,28 @@ class RecipeSelectionPage (HobPage):
'col_id' : RecipeListModel.COL_NAME,
'col_style': 'text',
'col_min' : 100,
- 'col_max' : 400
+ 'col_max' : 400,
+ 'expand' : 'True'
}, {
'col_name' : 'License',
'col_id' : RecipeListModel.COL_LIC,
'col_style': 'text',
'col_min' : 100,
- 'col_max' : 400
+ 'col_max' : 400,
+ 'expand' : 'True'
}, {
'col_name' : 'Group',
'col_id' : RecipeListModel.COL_GROUP,
'col_style': 'text',
'col_min' : 100,
- 'col_max' : 400
+ 'col_max' : 400,
+ 'expand' : 'True'
}, {
'col_name' : 'Included',
'col_id' : RecipeListModel.COL_INC,
'col_style': 'check toggle',
- 'col_min' : 50,
- 'col_max' : 50
+ 'col_min' : 100,
+ 'col_max' : 100
}]
}, {
'name' : 'Tasks',
@@ -97,19 +103,21 @@ class RecipeSelectionPage (HobPage):
'col_id' : RecipeListModel.COL_NAME,
'col_style': 'text',
'col_min' : 100,
- 'col_max' : 400
+ 'col_max' : 400,
+ 'expand' : 'True'
}, {
'col_name' : 'Description',
'col_id' : RecipeListModel.COL_DESC,
'col_style': 'text',
'col_min' : 100,
- 'col_max' : 400
+ 'col_max' : 400,
+ 'expand' : 'True'
}, {
'col_name' : 'Included',
'col_id' : RecipeListModel.COL_INC,
'col_style': 'check toggle',
- 'col_min' : 50,
- 'col_max' : 50
+ 'col_min' : 100,
+ 'col_max' : 100
}]
}
]
--
1.7.7.6
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [PATCH 4/4] selectionpage: show persistent tooltips on click
2012-04-06 23:18 [PATCH 0/4] Hob tweaks Joshua Lock
` (2 preceding siblings ...)
2012-04-06 23:18 ` [PATCH 3/4] lib/bb/ui/crumbs/[recipe|package]selectionpage: fixed width Included col Joshua Lock
@ 2012-04-06 23:18 ` Joshua Lock
2012-04-10 22:48 ` [PATCH 0/4] Hob tweaks Richard Purdie
4 siblings, 0 replies; 6+ messages in thread
From: Joshua Lock @ 2012-04-06 23:18 UTC (permalink / raw)
To: bitbake-devel
Requiring a double click to show the tooltips isn't very intuitive, add
a callback to show the persistent tooltips on button release.
Signed-off-by: Joshua Lock <josh@linux.intel.com>
---
lib/bb/ui/crumbs/packageselectionpage.py | 13 ++++++++-----
lib/bb/ui/crumbs/recipeselectionpage.py | 13 ++++++++-----
2 files changed, 16 insertions(+), 10 deletions(-)
diff --git a/lib/bb/ui/crumbs/packageselectionpage.py b/lib/bb/ui/crumbs/packageselectionpage.py
index b1a199c..81ff76d 100755
--- a/lib/bb/ui/crumbs/packageselectionpage.py
+++ b/lib/bb/ui/crumbs/packageselectionpage.py
@@ -117,7 +117,7 @@ class PackageSelectionPage (HobPage):
tab.set_model(self.package_model.tree_model(filter))
tab.connect("toggled", self.table_toggled_cb)
if page['name'] == "Included":
- tab.connect("row-activated", self.tree_row_activated_cb)
+ tab.connect("button-release-event", self.button_click_cb)
label = gtk.Label(page['name'])
self.ins.append_page(tab, label)
@@ -146,10 +146,13 @@ class PackageSelectionPage (HobPage):
self.back_button.connect("clicked", self.back_button_clicked_cb)
button_box.pack_start(self.back_button, expand=False, fill=False)
- def tree_row_activated_cb(self, table, tree_model, path):
- binb = tree_model.get_value(tree_model.get_iter(path), PackageListModel.COL_BINB)
- if binb:
- self.builder.show_binb_dialog(binb)
+ def button_click_cb(self, widget, event):
+ path, col = widget.table_tree.get_cursor()
+ tree_model = widget.table_tree.get_model()
+ if path: # else activation is likely a removal
+ binb = tree_model.get_value(tree_model.get_iter(path), PackageListModel.COL_BINB)
+ if binb:
+ self.builder.show_binb_dialog(binb)
def build_image_clicked_cb(self, button):
self.builder.build_image()
diff --git a/lib/bb/ui/crumbs/recipeselectionpage.py b/lib/bb/ui/crumbs/recipeselectionpage.py
index d70fe52..019f9f3 100755
--- a/lib/bb/ui/crumbs/recipeselectionpage.py
+++ b/lib/bb/ui/crumbs/recipeselectionpage.py
@@ -148,7 +148,7 @@ class RecipeSelectionPage (HobPage):
tab.set_model(self.recipe_model.tree_model(filter))
tab.connect("toggled", self.table_toggled_cb)
if page['name'] == "Included":
- tab.connect("row-activated", self.tree_row_activated_cb)
+ tab.connect("button-release-event", self.button_click_cb)
label = gtk.Label(page['name'])
self.ins.append_page(tab, label)
@@ -177,10 +177,13 @@ class RecipeSelectionPage (HobPage):
self.back_button.connect("clicked", self.back_button_clicked_cb)
button_box.pack_start(self.back_button, expand=False, fill=False)
- def tree_row_activated_cb(self, table, tree_model, path):
- binb = tree_model.get_value(tree_model.get_iter(path), RecipeListModel.COL_BINB)
- if binb:
- self.builder.show_binb_dialog(binb)
+ def button_click_cb(self, widget, event):
+ path, col = widget.table_tree.get_cursor()
+ tree_model = widget.table_tree.get_model()
+ if path: # else activation is likely a removal
+ binb = tree_model.get_value(tree_model.get_iter(path), RecipeListModel.COL_BINB)
+ if binb:
+ self.builder.show_binb_dialog(binb)
def build_packages_clicked_cb(self, button):
self.builder.build_packages()
--
1.7.7.6
^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PATCH 0/4] Hob tweaks
2012-04-06 23:18 [PATCH 0/4] Hob tweaks Joshua Lock
` (3 preceding siblings ...)
2012-04-06 23:18 ` [PATCH 4/4] selectionpage: show persistent tooltips on click Joshua Lock
@ 2012-04-10 22:48 ` Richard Purdie
4 siblings, 0 replies; 6+ messages in thread
From: Richard Purdie @ 2012-04-10 22:48 UTC (permalink / raw)
To: Joshua Lock; +Cc: bitbake-devel
On Fri, 2012-04-06 at 16:18 -0700, Joshua Lock wrote:
> A series of minor tweaks based on feedback from design in bug #2182
> https://bugzilla.yoctoproject.org/show_bug.cgi?id=2182
>
> Cheers,
> Joshua
>
> The following changes since commit d49db15badb77855cef855ee73430fcbc16b6916:
>
> Hob: a minor fix on pmake (2012-04-05 18:47:37 +0100)
>
> are available in the git repository at:
> git://github.com/incandescant/bitbake josh/hob
> https://github.com/incandescant/bitbake/tree/josh/hob
>
> Joshua Lock (4):
> lib/bb/ui/crumbs: only display one 'Brought in by' item in Hob trees
> lib/bb/ui/crumbs/recipeselectionpage: include 'Group' in 'Included'
> view
> lib/bb/ui/crumbs/[recipe|package]selectionpage: fixed width Included
> col
> selectionpage: show persistent tooltips on click
Merged to master, thanks.
Richard
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2012-04-10 22:58 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-04-06 23:18 [PATCH 0/4] Hob tweaks Joshua Lock
2012-04-06 23:18 ` [PATCH 1/4] lib/bb/ui/crumbs: only display one 'Brought in by' item in Hob trees Joshua Lock
2012-04-06 23:18 ` [PATCH 2/4] lib/bb/ui/crumbs/recipeselectionpage: include 'Group' in 'Included' view Joshua Lock
2012-04-06 23:18 ` [PATCH 3/4] lib/bb/ui/crumbs/[recipe|package]selectionpage: fixed width Included col Joshua Lock
2012-04-06 23:18 ` [PATCH 4/4] selectionpage: show persistent tooltips on click Joshua Lock
2012-04-10 22:48 ` [PATCH 0/4] Hob tweaks Richard Purdie
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.