summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoshua Lock <josh@linux.intel.com>2012-03-21 18:42:35 -0700
committerRichard Purdie <richard.purdie@linuxfoundation.org>2012-03-22 14:40:41 +0000
commit21970f475590e9ce81412c02c467c74e5d109ddc (patch)
treedc15a5b356f46a1cb1cb2f783958c6ae907ae1c1
parent457ec75e390e7ee1193a9b62a463b28db5730845 (diff)
downloadpoky-21970f475590e9ce81412c02c467c74e5d109ddc.tar.gz
lib/bb/ui/crumbs: Add HobAltButton and use it
This adds a gtk.Button subclass for secondary actions which unsets the relief so that the user is aware that the button is clickable and yet it is more subtle than the primary action (such that the primary action is the most obvious one) - this is per the interaction design. Further we replace all uses of gtk.LinkButton with the new HobAltButton Partially addresses [YOCTO #2105], a follow on patch will theme the button so that it matches the visual design. (From Poky rev: c3f17fed243180678264168968333463b203bfa0) (Bitbake rev: 601521c2d7f5568d94529a77b2cbe19fef7cbf48) Signed-off-by: Joshua Lock <josh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rwxr-xr-xbitbake/lib/bb/ui/crumbs/builddetailspage.py6
-rw-r--r--bitbake/lib/bb/ui/crumbs/hig.py2
-rw-r--r--bitbake/lib/bb/ui/crumbs/hobwidget.py9
-rw-r--r--bitbake/lib/bb/ui/crumbs/imageconfigurationpage.py13
-rwxr-xr-xbitbake/lib/bb/ui/crumbs/imagedetailspage.py12
-rwxr-xr-xbitbake/lib/bb/ui/crumbs/packageselectionpage.py4
-rwxr-xr-xbitbake/lib/bb/ui/crumbs/recipeselectionpage.py4
7 files changed, 28 insertions, 22 deletions
diff --git a/bitbake/lib/bb/ui/crumbs/builddetailspage.py b/bitbake/lib/bb/ui/crumbs/builddetailspage.py
index 7a5cfe67ff..3605ee1a6b 100755
--- a/bitbake/lib/bb/ui/crumbs/builddetailspage.py
+++ b/bitbake/lib/bb/ui/crumbs/builddetailspage.py
@@ -22,7 +22,7 @@
22 22
23import gtk 23import gtk
24from bb.ui.crumbs.progressbar import HobProgressBar 24from bb.ui.crumbs.progressbar import HobProgressBar
25from bb.ui.crumbs.hobwidget import hic, HobNotebook 25from bb.ui.crumbs.hobwidget import hic, HobNotebook, HobAltButton
26from bb.ui.crumbs.runningbuild import RunningBuildTreeView 26from bb.ui.crumbs.runningbuild import RunningBuildTreeView
27from bb.ui.crumbs.runningbuild import BuildConfigurationTreeView 27from bb.ui.crumbs.runningbuild import BuildConfigurationTreeView
28from bb.ui.crumbs.runningbuild import BuildFailureTreeView 28from bb.ui.crumbs.runningbuild import BuildFailureTreeView
@@ -49,7 +49,7 @@ class BuildDetailsPage (HobPage):
49 self.progress_box = gtk.HBox(False, 6) 49 self.progress_box = gtk.HBox(False, 6)
50 self.progress_bar = HobProgressBar() 50 self.progress_bar = HobProgressBar()
51 self.progress_box.pack_start(self.progress_bar, expand=True, fill=True) 51 self.progress_box.pack_start(self.progress_bar, expand=True, fill=True)
52 self.stop_button = gtk.LinkButton("Stop the build process", "Stop") 52 self.stop_button = HobAltButton("Stop")
53 self.stop_button.connect("clicked", self.stop_button_clicked_cb) 53 self.stop_button.connect("clicked", self.stop_button_clicked_cb)
54 self.progress_box.pack_end(self.stop_button, expand=False, fill=False) 54 self.progress_box.pack_end(self.stop_button, expand=False, fill=False)
55 55
@@ -78,7 +78,7 @@ class BuildDetailsPage (HobPage):
78 self.notebook.append_page(self.scrolled_view_build, gtk.Label("Log")) 78 self.notebook.append_page(self.scrolled_view_build, gtk.Label("Log"))
79 79
80 self.button_box = gtk.HBox(False, 6) 80 self.button_box = gtk.HBox(False, 6)
81 self.back_button = gtk.LinkButton("Go back to Image Configuration screen", "<< Back to image configuration") 81 self.back_button = HobAltButton("Back to image configuration")
82 self.back_button.connect("clicked", self.back_button_clicked_cb) 82 self.back_button.connect("clicked", self.back_button_clicked_cb)
83 self.button_box.pack_start(self.back_button, expand=False, fill=False) 83 self.button_box.pack_start(self.back_button, expand=False, fill=False)
84 84
diff --git a/bitbake/lib/bb/ui/crumbs/hig.py b/bitbake/lib/bb/ui/crumbs/hig.py
index e675f39bd4..bc37d90a46 100644
--- a/bitbake/lib/bb/ui/crumbs/hig.py
+++ b/bitbake/lib/bb/ui/crumbs/hig.py
@@ -28,7 +28,7 @@ import re
28import subprocess 28import subprocess
29import shlex 29import shlex
30from bb.ui.crumbs.hobcolor import HobColors 30from bb.ui.crumbs.hobcolor import HobColors
31from bb.ui.crumbs.hobwidget import hcc, hic, HobViewTable, HobInfoButton 31from bb.ui.crumbs.hobwidget import hcc, hic, HobViewTable, HobInfoButton, HobAltButton
32from bb.ui.crumbs.progressbar import HobProgressBar 32from bb.ui.crumbs.progressbar import HobProgressBar
33 33
34""" 34"""
diff --git a/bitbake/lib/bb/ui/crumbs/hobwidget.py b/bitbake/lib/bb/ui/crumbs/hobwidget.py
index db52c47415..189ffb40d3 100644
--- a/bitbake/lib/bb/ui/crumbs/hobwidget.py
+++ b/bitbake/lib/bb/ui/crumbs/hobwidget.py
@@ -171,11 +171,18 @@ class HobViewTable (gtk.VBox):
171 if not view_column.get_title() in self.toggle_columns: 171 if not view_column.get_title() in self.toggle_columns:
172 self.emit("row-activated", tree.get_model(), path) 172 self.emit("row-activated", tree.get_model(), path)
173 173
174class HobAltButton(gtk.Button):
175 """
176 A gtk.Button subclass which has no relief, and so is more discrete
177 """
178 def __init__(self, label=None):
179 gtk.Button.__init__(self, label)
180 self.set_relief(gtk.RELIEF_NONE)
181
174class HobXpmLabelButtonBox(gtk.EventBox): 182class HobXpmLabelButtonBox(gtk.EventBox):
175 """ label: name of buttonbox 183 """ label: name of buttonbox
176 description: the simple description 184 description: the simple description
177 """ 185 """
178
179 def __init__(self, display_file="", hover_file="", label="", description=""): 186 def __init__(self, display_file="", hover_file="", label="", description=""):
180 gtk.EventBox.__init__(self) 187 gtk.EventBox.__init__(self)
181 self._base_state_flags = gtk.STATE_NORMAL 188 self._base_state_flags = gtk.STATE_NORMAL
diff --git a/bitbake/lib/bb/ui/crumbs/imageconfigurationpage.py b/bitbake/lib/bb/ui/crumbs/imageconfigurationpage.py
index c1372ad2dd..6f01f050d5 100644
--- a/bitbake/lib/bb/ui/crumbs/imageconfigurationpage.py
+++ b/bitbake/lib/bb/ui/crumbs/imageconfigurationpage.py
@@ -24,7 +24,7 @@ import gtk
24import glib 24import glib
25from bb.ui.crumbs.progressbar import HobProgressBar 25from bb.ui.crumbs.progressbar import HobProgressBar
26from bb.ui.crumbs.hobcolor import HobColors 26from bb.ui.crumbs.hobcolor import HobColors
27from bb.ui.crumbs.hobwidget import hic, HobXpmLabelButtonBox, HobInfoButton 27from bb.ui.crumbs.hobwidget import hic, HobXpmLabelButtonBox, HobInfoButton, HobAltButton
28from bb.ui.crumbs.hoblistmodel import RecipeListModel 28from bb.ui.crumbs.hoblistmodel import RecipeListModel
29from bb.ui.crumbs.hobpages import HobPage 29from bb.ui.crumbs.hobpages import HobPage
30 30
@@ -153,7 +153,7 @@ class ImageConfigurationPage (HobPage):
153 self.progress_box = gtk.HBox(False, 6) 153 self.progress_box = gtk.HBox(False, 6)
154 self.progress_bar = HobProgressBar() 154 self.progress_bar = HobProgressBar()
155 self.progress_box.pack_start(self.progress_bar, expand=True, fill=True) 155 self.progress_box.pack_start(self.progress_bar, expand=True, fill=True)
156 self.stop_button = gtk.LinkButton("Stop the parsing process", "Stop") 156 self.stop_button = HobAltButton("Stop")
157 self.stop_button.connect("clicked", self.stop_button_clicked_cb) 157 self.stop_button.connect("clicked", self.stop_button_clicked_cb)
158 self.progress_box.pack_end(self.stop_button, expand=False, fill=False) 158 self.progress_box.pack_end(self.stop_button, expand=False, fill=False)
159 159
@@ -241,8 +241,7 @@ class ImageConfigurationPage (HobPage):
241 button_box.pack_end(label, expand=False, fill=False) 241 button_box.pack_end(label, expand=False, fill=False)
242 242
243 # create button "Build Packages" 243 # create button "Build Packages"
244 build_packages_button = gtk.LinkButton("Build packages first based on recipe selection " 244 build_packages_button = HobAltButton("Build Packages")
245 "for late customization on packages for the target image", "Build Packages")
246 build_packages_button.connect("clicked", self.build_packages_button_clicked_cb) 245 build_packages_button.connect("clicked", self.build_packages_button_clicked_cb)
247 button_box.pack_end(build_packages_button, expand=False, fill=False) 246 button_box.pack_end(build_packages_button, expand=False, fill=False)
248 247
@@ -344,14 +343,14 @@ class ImageConfigurationPage (HobPage):
344 self.image_combo.set_active(-1) 343 self.image_combo.set_active(-1)
345 self.image_combo.set_active(active) 344 self.image_combo.set_active(active)
346 345
347 def layer_button_clicked_cb(self, event, data): 346 def layer_button_clicked_cb(self, button):
348 # Create a layer selection dialog 347 # Create a layer selection dialog
349 self.builder.show_layer_selection_dialog() 348 self.builder.show_layer_selection_dialog()
350 349
351 def view_recipes_button_clicked_cb(self, event, data): 350 def view_recipes_button_clicked_cb(self, button):
352 self.builder.show_recipes() 351 self.builder.show_recipes()
353 352
354 def view_packages_button_clicked_cb(self, event, data): 353 def view_packages_button_clicked_cb(self, button):
355 self.builder.show_packages() 354 self.builder.show_packages()
356 355
357 def just_bake_button_clicked_cb(self, button): 356 def just_bake_button_clicked_cb(self, button):
diff --git a/bitbake/lib/bb/ui/crumbs/imagedetailspage.py b/bitbake/lib/bb/ui/crumbs/imagedetailspage.py
index b7663d8443..9213255265 100755
--- a/bitbake/lib/bb/ui/crumbs/imagedetailspage.py
+++ b/bitbake/lib/bb/ui/crumbs/imagedetailspage.py
@@ -23,7 +23,7 @@
23import gobject 23import gobject
24import gtk 24import gtk
25from bb.ui.crumbs.hobcolor import HobColors 25from bb.ui.crumbs.hobcolor import HobColors
26from bb.ui.crumbs.hobwidget import hic, HobViewTable 26from bb.ui.crumbs.hobwidget import hic, HobViewTable, HobAltButton
27from bb.ui.crumbs.hobpages import HobPage 27from bb.ui.crumbs.hobpages import HobPage
28 28
29# 29#
@@ -213,7 +213,7 @@ class ImageDetailsPage (HobPage):
213 vallist.append(layer) 213 vallist.append(layer)
214 i += 1 214 i += 1
215 215
216 edit_config_button = gtk.LinkButton("Changes settings for build", "Edit configuration") 216 edit_config_button = HobAltButton("Edit configuration")
217 edit_config_button.connect("clicked", self.edit_config_button_clicked_cb) 217 edit_config_button.connect("clicked", self.edit_config_button_clicked_cb)
218 setting_detail = self.DetailBox(varlist=varlist, vallist=vallist, button=edit_config_button) 218 setting_detail = self.DetailBox(varlist=varlist, vallist=vallist, button=edit_config_button)
219 self.box_group_area.pack_start(setting_detail, expand=False, fill=False) 219 self.box_group_area.pack_start(setting_detail, expand=False, fill=False)
@@ -224,7 +224,7 @@ class ImageDetailsPage (HobPage):
224 vallist.append(pkg_num) 224 vallist.append(pkg_num)
225 vallist.append(image_size) 225 vallist.append(image_size)
226 if build_succeeded: 226 if build_succeeded:
227 edit_packages_button = gtk.LinkButton("Change package selection for customization", "Edit packages") 227 edit_packages_button = HobAltButton("Edit packages")
228 edit_packages_button.connect("clicked", self.edit_packages_button_clicked_cb) 228 edit_packages_button.connect("clicked", self.edit_packages_button_clicked_cb)
229 else: # get to this page from "My images" 229 else: # get to this page from "My images"
230 edit_packages_button = None 230 edit_packages_button = None
@@ -288,7 +288,7 @@ class ImageDetailsPage (HobPage):
288 bottom_buttons.pack_end(label, expand=False, fill=False) 288 bottom_buttons.pack_end(label, expand=False, fill=False)
289 289
290 # create button "Run image" 290 # create button "Run image"
291 run_button = gtk.LinkButton("Launch and boot the image in the QEMU emulator", "Run image") 291 run_button = HobAltButton("Run image")
292 run_button.connect("clicked", self.run_button_clicked_cb) 292 run_button.connect("clicked", self.run_button_clicked_cb)
293 bottom_buttons.pack_end(run_button, expand=False, fill=False) 293 bottom_buttons.pack_end(run_button, expand=False, fill=False)
294 created = True 294 created = True
@@ -301,7 +301,7 @@ class ImageDetailsPage (HobPage):
301 bottom_buttons.pack_end(label, expand=False, fill=False) 301 bottom_buttons.pack_end(label, expand=False, fill=False)
302 302
303 # create button "Save as template" 303 # create button "Save as template"
304 save_button = gtk.LinkButton("Save the hob build template for future use", "Save as template") 304 save_button = HobAltButton("Save as template")
305 save_button.connect("clicked", self.save_button_clicked_cb) 305 save_button.connect("clicked", self.save_button_clicked_cb)
306 bottom_buttons.pack_end(save_button, expand=False, fill=False) 306 bottom_buttons.pack_end(save_button, expand=False, fill=False)
307 create = True 307 create = True
@@ -309,7 +309,7 @@ class ImageDetailsPage (HobPage):
309 name = "Build new image" 309 name = "Build new image"
310 if name in buttonlist: 310 if name in buttonlist:
311 # create button "Build new image" 311 # create button "Build new image"
312 build_new_button = gtk.LinkButton("Initiate another new build from the beginning", "Build new image") 312 build_new_button = HobAltButton("Build new image")
313 build_new_button.connect("clicked", self.build_new_button_clicked_cb) 313 build_new_button.connect("clicked", self.build_new_button_clicked_cb)
314 bottom_buttons.pack_start(build_new_button, expand=False, fill=False) 314 bottom_buttons.pack_start(build_new_button, expand=False, fill=False)
315 315
diff --git a/bitbake/lib/bb/ui/crumbs/packageselectionpage.py b/bitbake/lib/bb/ui/crumbs/packageselectionpage.py
index e2c76ccbf6..0a12cbf4da 100755
--- a/bitbake/lib/bb/ui/crumbs/packageselectionpage.py
+++ b/bitbake/lib/bb/ui/crumbs/packageselectionpage.py
@@ -23,7 +23,7 @@
23import gtk 23import gtk
24import glib 24import glib
25from bb.ui.crumbs.hobcolor import HobColors 25from bb.ui.crumbs.hobcolor import HobColors
26from bb.ui.crumbs.hobwidget import HobViewTable, HobNotebook 26from bb.ui.crumbs.hobwidget import HobViewTable, HobNotebook, HobAltButton
27from bb.ui.crumbs.hoblistmodel import PackageListModel 27from bb.ui.crumbs.hoblistmodel import PackageListModel
28from bb.ui.crumbs.hobpages import HobPage 28from bb.ui.crumbs.hobpages import HobPage
29 29
@@ -144,7 +144,7 @@ class PackageSelectionPage (HobPage):
144 self.build_image_button.connect("clicked", self.build_image_clicked_cb) 144 self.build_image_button.connect("clicked", self.build_image_clicked_cb)
145 button_box.pack_end(self.build_image_button, expand=False, fill=False) 145 button_box.pack_end(self.build_image_button, expand=False, fill=False)
146 146
147 self.back_button = gtk.LinkButton("Go back to Image Configuration screen", "<< Back to image configuration") 147 self.back_button = HobAltButton("Back to image configuration")
148 self.back_button.connect("clicked", self.back_button_clicked_cb) 148 self.back_button.connect("clicked", self.back_button_clicked_cb)
149 button_box.pack_start(self.back_button, expand=False, fill=False) 149 button_box.pack_start(self.back_button, expand=False, fill=False)
150 150
diff --git a/bitbake/lib/bb/ui/crumbs/recipeselectionpage.py b/bitbake/lib/bb/ui/crumbs/recipeselectionpage.py
index 2e5b7274a4..dcdea05432 100755
--- a/bitbake/lib/bb/ui/crumbs/recipeselectionpage.py
+++ b/bitbake/lib/bb/ui/crumbs/recipeselectionpage.py
@@ -23,7 +23,7 @@
23import gtk 23import gtk
24import glib 24import glib
25from bb.ui.crumbs.hobcolor import HobColors 25from bb.ui.crumbs.hobcolor import HobColors
26from bb.ui.crumbs.hobwidget import HobViewTable, HobNotebook 26from bb.ui.crumbs.hobwidget import HobViewTable, HobNotebook, HobAltButton
27from bb.ui.crumbs.hoblistmodel import RecipeListModel 27from bb.ui.crumbs.hoblistmodel import RecipeListModel
28from bb.ui.crumbs.hobpages import HobPage 28from bb.ui.crumbs.hobpages import HobPage
29 29
@@ -166,7 +166,7 @@ class RecipeSelectionPage (HobPage):
166 self.build_packages_button.connect("clicked", self.build_packages_clicked_cb) 166 self.build_packages_button.connect("clicked", self.build_packages_clicked_cb)
167 button_box.pack_end(self.build_packages_button, expand=False, fill=False) 167 button_box.pack_end(self.build_packages_button, expand=False, fill=False)
168 168
169 self.back_button = gtk.LinkButton("Go back to Image Configuration screen", "<< Back to image configuration") 169 self.back_button = HobAltButton("Back to image configuration")
170 self.back_button.connect("clicked", self.back_button_clicked_cb) 170 self.back_button.connect("clicked", self.back_button_clicked_cb)
171 button_box.pack_start(self.back_button, expand=False, fill=False) 171 button_box.pack_start(self.back_button, expand=False, fill=False)
172 172