All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/4] More Hob tweaks
@ 2012-03-27  3:30 Joshua Lock
  2012-03-27  3:30 ` [PATCH 1/4] lib/bb/ui/crumbs: apply primary/secondary dialogue button styling Joshua Lock
                   ` (4 more replies)
  0 siblings, 5 replies; 8+ messages in thread
From: Joshua Lock @ 2012-03-27  3:30 UTC (permalink / raw)
  To: bitbake-devel

Hi all,

Here's some more tweaks for Hob.

The primary/secondary button styling change is similar to the same titled patch I submitted recently only the 'Advanced settings' dialogue retains it's Save/Cancel buttons.

I've also included some layout changes to match design and ensure the widgets are not moved around when re-drawing the layout.

Cheers,
Joshua

The following changes since commit 02d3451b2e0744204a1280f9effe9fd862bb4faf:

  Hob: add build status labels in the build details screen to make it more close to the visual design (2012-03-25 12:13:58 +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: apply primary/secondary dialogue button styling
  lib/bb/ui/crumbs: tweak build status display
  lib/bb/ui/crumbs/imageconfigurationpage: ensure widgets stay
    positioned
  lib/bb/ui/crumbs/imagedetails: use secondary button style for 'View
    files'

 lib/bb/ui/crumbs/builddetailspage.py       |    9 ++-
 lib/bb/ui/crumbs/builder.py                |  111 +++++++++++++++++----------
 lib/bb/ui/crumbs/hig.py                    |   34 +++++----
 lib/bb/ui/crumbs/imageconfigurationpage.py |   20 ++++--
 lib/bb/ui/crumbs/imagedetailspage.py       |    6 +-
 5 files changed, 115 insertions(+), 65 deletions(-)

-- 
1.7.7.6




^ permalink raw reply	[flat|nested] 8+ messages in thread

* [PATCH 1/4] lib/bb/ui/crumbs: apply primary/secondary dialogue button styling
  2012-03-27  3:30 [PATCH 0/4] More Hob tweaks Joshua Lock
@ 2012-03-27  3:30 ` Joshua Lock
  2012-03-27  3:30 ` [PATCH 2/4] lib/bb/ui/crumbs: tweak build status display Joshua Lock
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 8+ messages in thread
From: Joshua Lock @ 2012-03-27  3:30 UTC (permalink / raw)
  To: bitbake-devel

The design calls for primary buttons which are orange and large and
secondary buttons which are subtle with pale blue text. This is so that the
user is drawn towards the primary action and their use of the application
is more guided.

This patch uses HobButton and HobAltButton classes to style all dialogue
buttons accordingly.

Fixes [YOCTO #2125]

Signed-off-by: Joshua Lock <josh@linux.intel.com>
---
 lib/bb/ui/crumbs/builder.py |  108 +++++++++++++++++++++++++++---------------
 lib/bb/ui/crumbs/hig.py     |   34 ++++++++------
 2 files changed, 89 insertions(+), 53 deletions(-)

diff --git a/lib/bb/ui/crumbs/builder.py b/lib/bb/ui/crumbs/builder.py
index f32a066..f57a855 100755
--- a/lib/bb/ui/crumbs/builder.py
+++ b/lib/bb/ui/crumbs/builder.py
@@ -32,7 +32,7 @@ from bb.ui.crumbs.recipeselectionpage import RecipeSelectionPage
 from bb.ui.crumbs.packageselectionpage import PackageSelectionPage
 from bb.ui.crumbs.builddetailspage import BuildDetailsPage
 from bb.ui.crumbs.imagedetailspage import ImageDetailsPage
-from bb.ui.crumbs.hobwidget import hwc
+from bb.ui.crumbs.hobwidget import hwc, HobButton, HobAltButton
 from bb.ui.crumbs.hig import CrumbsMessageDialog, ImageSelectionDialog, \
                              AdvancedSettingDialog, LayerSelectionDialog, \
                              DeployImageDialog
@@ -444,7 +444,8 @@ class Builder(gtk.Window):
             lbl = "<b>Error</b>\n"
             lbl = lbl + "%s\n\n" % msg
             dialog = CrumbsMessageDialog(self, lbl, gtk.STOCK_DIALOG_WARNING)
-            dialog.add_button(gtk.STOCK_OK, gtk.RESPONSE_OK)
+            button = dialog.add_button("Close", gtk.RESPONSE_OK)
+            HobButton.style_button(button)
             response = dialog.run()
             dialog.destroy()
         self.handler.clear_busy()
@@ -620,8 +621,10 @@ class Builder(gtk.Window):
     def destroy_window_cb(self, widget, event):
         lbl = "<b>Do you really want to exit the Hob image creator?</b>"
         dialog = CrumbsMessageDialog(self, lbl, gtk.STOCK_DIALOG_INFO)
-        dialog.add_button("Keep using Hob", gtk.RESPONSE_NO)
-        dialog.add_button("Exit Hob", gtk.RESPONSE_YES)
+        button = dialog.add_button("Cancel", gtk.RESPONSE_NO)
+        HobAltButton.style_button(button)
+        button = dialog.add_button("Exit Hob", gtk.RESPONSE_YES)
+        HobButton.style_button(button)
         dialog.set_default_response(gtk.RESPONSE_YES)
         response = dialog.run()
         dialog.destroy()
@@ -637,7 +640,8 @@ class Builder(gtk.Window):
             lbl = "<b>No selections made</b>\nYou have not made any selections"
             lbl = lbl + " so there isn't anything to bake at this time."
             dialog = CrumbsMessageDialog(self, lbl, gtk.STOCK_DIALOG_INFO)
-            dialog.add_button(gtk.STOCK_OK, gtk.RESPONSE_OK)
+            button = dialog.add_button("Close", gtk.RESPONSE_OK)
+            HobButton.style_button(button)
             dialog.run()
             dialog.destroy()
             return
@@ -649,7 +653,8 @@ class Builder(gtk.Window):
             lbl = "<b>No selections made</b>\nYou have not made any selections"
             lbl = lbl + " so there isn't anything to bake at this time."
             dialog = CrumbsMessageDialog(self, lbl, gtk.STOCK_DIALOG_INFO)
-            dialog.add_button(gtk.STOCK_OK, gtk.RESPONSE_OK)
+            button = dialog.add_button("Close", gtk.RESPONSE_OK)
+            HobButton.style_button(button)
             dialog.run()
             dialog.destroy()
             return
@@ -664,7 +669,8 @@ class Builder(gtk.Window):
             lbl = "<b>No selections made</b>\nYou have not made any selections"
             lbl = lbl + " so there isn't anything to bake at this time."
             dialog = CrumbsMessageDialog(self, lbl, gtk.STOCK_DIALOG_INFO)
-            dialog.add_button(gtk.STOCK_OK, gtk.RESPONSE_OK)
+            button = dialog.add_button("Close", gtk.RESPONSE_OK)
+            HobButton.style_button(button)
             dialog.run()
             dialog.destroy()
             return
@@ -684,8 +690,9 @@ class Builder(gtk.Window):
                      parent = self,
                      flags = gtk.DIALOG_MODAL
                          | gtk.DIALOG_DESTROY_WITH_PARENT
-                         | gtk.DIALOG_NO_SEPARATOR,
-                     buttons = (gtk.STOCK_CLOSE, gtk.RESPONSE_YES))
+                         | gtk.DIALOG_NO_SEPARATOR)
+        button = dialog.add_button("Close", gtk.RESPONSE_YES)
+        HobButton.style_button(button)
         response = dialog.run()
         if response == gtk.RESPONSE_YES:
             self.configuration.layers = dialog.layers
@@ -696,9 +703,11 @@ class Builder(gtk.Window):
 
     def show_load_template_dialog(self):
         dialog = gtk.FileChooserDialog("Load Template Files", self,
-                                       gtk.FILE_CHOOSER_ACTION_OPEN,
-                                      (gtk.STOCK_CANCEL, gtk.RESPONSE_NO,
-                                       gtk.STOCK_OPEN, gtk.RESPONSE_YES))
+                                       gtk.FILE_CHOOSER_ACTION_OPEN)
+        button = dialog.add_button("Cancel", gtk.RESPONSE_NO)
+        HobAltButton.style_button(button)
+        button = dialog.add_button("Open", gtk.RESPONSE_YES)
+        HobButton.style_button(button)
         filter = gtk.FileFilter()
         filter.set_name("Hob Files")
         filter.add_pattern("*.hob")
@@ -712,9 +721,11 @@ class Builder(gtk.Window):
 
     def show_save_template_dialog(self):
         dialog = gtk.FileChooserDialog("Save Template Files", self,
-                                       gtk.FILE_CHOOSER_ACTION_SAVE,
-                                      (gtk.STOCK_CANCEL, gtk.RESPONSE_NO,
-                                       gtk.STOCK_SAVE, gtk.RESPONSE_YES))
+                                       gtk.FILE_CHOOSER_ACTION_SAVE)
+        button = dialog.add_button("Cancel", gtk.RESPONSE_NO)
+        HobAltButton.style_button(button)
+        button = dialog.add_button("Save", gtk.RESPONSE_YES)
+        HobButton.style_button(button)
         dialog.set_current_name("hob")
         response = dialog.run()
         if response == gtk.RESPONSE_YES:
@@ -725,15 +736,18 @@ class Builder(gtk.Window):
     def show_load_my_images_dialog(self):
         dialog = ImageSelectionDialog(self.parameters.image_addr, self.parameters.image_types,
                                       "Open My Images", self,
-                                       gtk.FILE_CHOOSER_ACTION_SAVE,
-                                      (gtk.STOCK_CANCEL, gtk.RESPONSE_NO,
-                                       gtk.STOCK_OPEN, gtk.RESPONSE_YES))
+                                       gtk.FILE_CHOOSER_ACTION_SAVE)
+        button = dialog.add_button("Cancel", gtk.RESPONSE_NO)
+        HobAltButton.style_button(button)
+        button = dialog.add_button("Open", gtk.RESPONSE_YES)
+        HobButton.style_button(button)
         response = dialog.run()
         if response == gtk.RESPONSE_YES:
             if not dialog.image_names:
                 lbl = "<b>No selections made</b>\nYou have not made any selections"
                 crumbs_dialog = CrumbsMessageDialog(self, lbl, gtk.STOCK_DIALOG_INFO)
-                crumbs_dialog.add_button(gtk.STOCK_OK, gtk.RESPONSE_OK)
+                button = crumbs_dialog.add_button("Close", gtk.RESPONSE_OK)
+                HobButton.style_button(button)
                 crumbs_dialog.run()
                 crumbs_dialog.destroy()
                 dialog.destroy()
@@ -756,9 +770,11 @@ class Builder(gtk.Window):
             parent = self,
             flags = gtk.DIALOG_MODAL
                     | gtk.DIALOG_DESTROY_WITH_PARENT
-                    | gtk.DIALOG_NO_SEPARATOR,
-            buttons = (gtk.STOCK_CANCEL, gtk.RESPONSE_NO,
-                       "Save", gtk.RESPONSE_YES))
+                    | gtk.DIALOG_NO_SEPARATOR)
+        button = dialog.add_button("Cancel", gtk.RESPONSE_NO)
+        HobAltButton.style_button(button)
+        button = dialog.add_button("Save", gtk.RESPONSE_YES)
+        HobButton.style_button(button)
         response = dialog.run()
         if response == gtk.RESPONSE_YES:
             self.configuration = dialog.configuration
@@ -774,7 +790,8 @@ class Builder(gtk.Window):
         if not image_name:
             lbl = "<b>Please select an image to deploy.</b>"
             dialog = CrumbsMessageDialog(self, lbl, gtk.STOCK_DIALOG_INFO)
-            dialog.add_button(gtk.STOCK_OK, gtk.RESPONSE_OK)
+            button = dialog.add_button("Close", gtk.RESPONSE_OK)
+            HobButton.style_button(button)
             dialog.run()
             dialog.destroy()
             return
@@ -785,9 +802,11 @@ class Builder(gtk.Window):
             parent = self,
             flags = gtk.DIALOG_MODAL
                     | gtk.DIALOG_DESTROY_WITH_PARENT
-                    | gtk.DIALOG_NO_SEPARATOR,
-            buttons = ("Close", gtk.RESPONSE_NO,
-                       "Make usb image", gtk.RESPONSE_YES))
+                    | gtk.DIALOG_NO_SEPARATOR)
+        button = dialog.add_button("Close", gtk.RESPONSE_NO)
+        HobAltButton.style_button(button)
+        button = dialog.add_button("Make usb image", gtk.RESPONSE_YES)
+        HobButton.style_button(button)
         response = dialog.run()
         dialog.destroy()
 
@@ -795,15 +814,18 @@ class Builder(gtk.Window):
         if not image_name:
             lbl = "<b>Please select an image to launch in QEMU.</b>"
             dialog = CrumbsMessageDialog(self, lbl, gtk.STOCK_DIALOG_INFO)
-            dialog.add_button(gtk.STOCK_OK, gtk.RESPONSE_OK)
+            button = dialog.add_button("Close", gtk.RESPONSE_OK)
+            HobButton.style_button(button)
             dialog.run()
             dialog.destroy()
             return
 
         dialog = gtk.FileChooserDialog("Load Kernel Files", self,
-                                       gtk.FILE_CHOOSER_ACTION_SAVE,
-                                      (gtk.STOCK_CANCEL, gtk.RESPONSE_NO,
-                                       gtk.STOCK_OPEN, gtk.RESPONSE_YES))
+                                       gtk.FILE_CHOOSER_ACTION_SAVE)
+        button = dialog.add_button("Cancel", gtk.RESPONSE_NO)
+        HobAltButton.style_button(button)
+        button = dialog.add_button("Open", gtk.RESPONSE_YES)
+        HobButton.style_button(button)
         filter = gtk.FileFilter()
         filter.set_name("Kernel Files")
         filter.add_pattern("*.bin")
@@ -835,7 +857,8 @@ class Builder(gtk.Window):
                 lbl = lbl + "source environment path:" + source_env_path + "\n"
                 lbl = lbl + "tmp path: " + tmp_path + "."
                 dialog = CrumbsMessageDialog(self, lbl, gtk.STOCK_DIALOG_INFO)
-                dialog.add_button(gtk.STOCK_OK, gtk.RESPONSE_OK)
+                button = dialog.add_button("Close", gtk.RESPONSE_OK)
+                HobButton.style_button(button)
                 dialog.run()
                 dialog.destroy()
 
@@ -843,10 +866,12 @@ class Builder(gtk.Window):
         _, selected_recipes = self.recipe_model.get_selected_recipes()
         if selected_recipes and ask:
             lbl = "<b>Package list may be incomplete!</b>\nDo you want to build selected recipes"
-            lbl = lbl + " to get a full list (Yes) or just view the existing packages (No)?"
+            lbl = lbl + " to get a full list or just view the existing packages?"
             dialog = CrumbsMessageDialog(self, lbl, gtk.STOCK_DIALOG_INFO)
-            dialog.add_button(gtk.STOCK_NO, gtk.RESPONSE_NO)
-            dialog.add_button(gtk.STOCK_YES, gtk.RESPONSE_YES)
+            button = dialog.add_button("View packages", gtk.RESPONSE_NO)
+            HobAltButton.style_button(button)
+            button = dialog.add_button("Build packages", gtk.RESPONSE_YES)
+            HobButton.style_button(button)
             dialog.set_default_response(gtk.RESPONSE_YES)
             response = dialog.run()
             dialog.destroy()
@@ -879,8 +904,10 @@ class Builder(gtk.Window):
             lbl = lbl + " well leave your build directory in an  unusable state"
             lbl = lbl + " that requires manual steps to fix.\n"
             dialog = CrumbsMessageDialog(self, lbl, gtk.STOCK_DIALOG_WARNING)
-            dialog.add_button(gtk.STOCK_CANCEL, gtk.RESPONSE_CANCEL)
-            dialog.add_button("Force Stop", gtk.RESPONSE_YES)
+            button = dialog.add_button("Cancel", gtk.RESPONSE_CANCEL)
+            HobAltButton.style_button(button)
+            button = dialog.add_button("Force Stop", gtk.RESPONSE_YES)
+            HobButton.style_button(button)
         else:
             lbl = "<b>Stop build?</b>\n\nAre you sure you want to stop this"
             lbl = lbl + " build?\n\n'Force Stop' will stop the build as quickly as"
@@ -891,9 +918,12 @@ class Builder(gtk.Window):
             lbl = lbl + " lengthy compilation phase is in progress this may take"
             lbl = lbl + " some time."
             dialog = CrumbsMessageDialog(self, lbl, gtk.STOCK_DIALOG_WARNING)
-            dialog.add_button(gtk.STOCK_CANCEL, gtk.RESPONSE_CANCEL)
-            dialog.add_button("Stop", gtk.RESPONSE_OK)
-            dialog.add_button("Force Stop", gtk.RESPONSE_YES)
+            button = dialog.add_button("Cancel", gtk.RESPONSE_CANCEL)
+            HobAltButton.style_button(button)
+            button = dialog.add_button("Stop", gtk.RESPONSE_OK)
+            HobAltButton.style_button(button)
+            button = dialog.add_button("Force Stop", gtk.RESPONSE_YES)
+            HobButton.style_button(button)
         response = dialog.run()
         dialog.destroy()
         if response != gtk.RESPONSE_CANCEL:
diff --git a/lib/bb/ui/crumbs/hig.py b/lib/bb/ui/crumbs/hig.py
index 6ae682b..a30e7d9 100644
--- a/lib/bb/ui/crumbs/hig.py
+++ b/lib/bb/ui/crumbs/hig.py
@@ -28,7 +28,7 @@ import re
 import subprocess
 import shlex
 from bb.ui.crumbs.hobcolor import HobColors
-from bb.ui.crumbs.hobwidget import hcc, hic, HobViewTable, HobInfoButton
+from bb.ui.crumbs.hobwidget import hcc, hic, HobViewTable, HobInfoButton, HobButton, HobAltButton
 from bb.ui.crumbs.progressbar import HobProgressBar
 
 """
@@ -137,9 +137,11 @@ class AdvancedSettingDialog (CrumbsDialog):
 
     def entry_widget_select_path_cb(self, action, parent, entry):
         dialog = gtk.FileChooserDialog("", parent,
-                                       gtk.FILE_CHOOSER_ACTION_SELECT_FOLDER,
-                                       (gtk.STOCK_CANCEL, gtk.RESPONSE_NO,
-                                        gtk.STOCK_OPEN, gtk.RESPONSE_YES))
+                                       gtk.FILE_CHOOSER_ACTION_SELECT_FOLDER)
+        button = dialog.add_button("Cancel", gtk.RESPONSE_NO)
+        HobAltButton.style_button(button)
+        button = dialog.add_button("Open", gtk.RESPONSE_YES)
+        HobButton.style_button(button)
         response = dialog.run()
         if response == gtk.RESPONSE_YES:
             path = dialog.get_filename()
@@ -307,7 +309,7 @@ class AdvancedSettingDialog (CrumbsDialog):
 
     def __init__(self, title, configuration, all_image_types,
             all_package_formats, all_distros, all_sdk_machines,
-            max_threads, parent, flags, buttons):
+            max_threads, parent, flags, buttons=None):
         super(AdvancedSettingDialog, self).__init__(title, parent, flags, buttons)
 
         # class members from other objects
@@ -563,7 +565,7 @@ class DeployImageDialog (CrumbsDialog):
 
     __dummy_usb__ = "--select a usb drive--"
 
-    def __init__(self, title, image_path, parent, flags, buttons):
+    def __init__(self, title, image_path, parent, flags, buttons=None):
         super(DeployImageDialog, self).__init__(title, parent, flags, buttons)
 
         self.image_path = image_path
@@ -713,9 +715,11 @@ class LayerSelectionDialog (CrumbsDialog):
 
     def layer_widget_add_clicked_cb(self, action, layer_store, parent):
         dialog = gtk.FileChooserDialog("Add new layer", parent,
-                                       gtk.FILE_CHOOSER_ACTION_SELECT_FOLDER,
-                                       (gtk.STOCK_CANCEL, gtk.RESPONSE_NO,
-                                        gtk.STOCK_OPEN, gtk.RESPONSE_YES))
+                                       gtk.FILE_CHOOSER_ACTION_SELECT_FOLDER)
+        button = dialog.add_button("Cancel", gtk.RESPONSE_NO)
+        HobAltButton.style_button(button)
+        button = dialog.add_button("Open", gtk.RESPONSE_YES)
+        HobButton.style_button(button)
         label = gtk.Label("Select the layer you wish to add")
         label.show()
         dialog.set_extra_widget(label)
@@ -827,7 +831,7 @@ class LayerSelectionDialog (CrumbsDialog):
     def add_leave_cb(self, button, event):
         self.im.set_from_file(hic.ICON_INDI_ADD_FILE)
 
-    def __init__(self, title, layers, all_layers, parent, flags, buttons):
+    def __init__(self, title, layers, all_layers, parent, flags, buttons=None):
         super(LayerSelectionDialog, self).__init__(title, parent, flags, buttons)
 
         # class members from other objects
@@ -921,7 +925,7 @@ class ImageSelectionDialog (CrumbsDialog):
     }]
 
 
-    def __init__(self, image_folder, image_types, title, parent, flags, buttons):
+    def __init__(self, image_folder, image_types, title, parent, flags, buttons=None):
         super(ImageSelectionDialog, self).__init__(title, parent, flags, buttons)
         self.connect("response", self.response_cb)
 
@@ -975,9 +979,11 @@ class ImageSelectionDialog (CrumbsDialog):
 
     def select_path_cb(self, action, parent, entry):
         dialog = gtk.FileChooserDialog("", parent,
-                                       gtk.FILE_CHOOSER_ACTION_SELECT_FOLDER,
-                                       (gtk.STOCK_CANCEL, gtk.RESPONSE_NO,
-                                        gtk.STOCK_OPEN, gtk.RESPONSE_YES))
+                                       gtk.FILE_CHOOSER_ACTION_SELECT_FOLDER)
+        button = dialog.add_button("Cancel", gtk.RESPONSE_NO)
+        HobAltButton.style_button(button)
+        button = dialog.add_button("Open", gtk.RESPONSE_YES)
+        HobButton.style_button(button)
         response = dialog.run()
         if response == gtk.RESPONSE_YES:
             path = dialog.get_filename()
-- 
1.7.7.6




^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [PATCH 2/4] lib/bb/ui/crumbs: tweak build status display
  2012-03-27  3:30 [PATCH 0/4] More Hob tweaks Joshua Lock
  2012-03-27  3:30 ` [PATCH 1/4] lib/bb/ui/crumbs: apply primary/secondary dialogue button styling Joshua Lock
@ 2012-03-27  3:30 ` Joshua Lock
  2012-03-27  3:30 ` [PATCH 3/4] lib/bb/ui/crumbs/imageconfigurationpage: ensure widgets stay positioned Joshua Lock
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 8+ messages in thread
From: Joshua Lock @ 2012-03-27  3:30 UTC (permalink / raw)
  To: bitbake-devel

Use two lines to display the active task and recipe, per visual design.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
---
 lib/bb/ui/crumbs/builddetailspage.py |    9 ++++++---
 lib/bb/ui/crumbs/builder.py          |    3 +--
 2 files changed, 7 insertions(+), 5 deletions(-)

diff --git a/lib/bb/ui/crumbs/builddetailspage.py b/lib/bb/ui/crumbs/builddetailspage.py
index c2f980f..df8304e 100755
--- a/lib/bb/ui/crumbs/builddetailspage.py
+++ b/lib/bb/ui/crumbs/builddetailspage.py
@@ -47,7 +47,7 @@ class BuildDetailsPage (HobPage):
         self.vbox = gtk.VBox(False, 12)
 
         self.progress_box = gtk.VBox(False, 12)
-        self.task_status = gtk.Label()
+        self.task_status = gtk.Label("\n") # to ensure layout is correct
         self.task_status.set_alignment(0.0, 0.5)
         self.progress_box.pack_start(self.task_status, expand=False, fill=False)
         self.progress_hbox = gtk.HBox(False, 6)
@@ -89,11 +89,14 @@ class BuildDetailsPage (HobPage):
         self.back_button.connect("clicked", self.back_button_clicked_cb)
         self.button_box.pack_start(self.back_button, expand=False, fill=False)
 
-    def update_build_status(self, tsk_msg):
+    def update_build_status(self, current, total, task):
+        recipe_path, recipe_task = task.split(", ")
+        recipe = os.path.basename(recipe_path).rstrip(".bb")
+        tsk_msg = "<b>Running task %s of %s:</b> %s\n<b>Recipe:</b> %s" % (current, total, recipe_task, recipe)
         self.task_status.set_markup(tsk_msg)
 
     def reset_build_status(self):
-        self.task_status.set_markup("")
+        self.task_status.set_markup("\n") # to ensure layout is correct
 
     def show_issues(self):
         self.num_of_issues += 1
diff --git a/lib/bb/ui/crumbs/builder.py b/lib/bb/ui/crumbs/builder.py
index f57a855..1d32a13 100755
--- a/lib/bb/ui/crumbs/builder.py
+++ b/lib/bb/ui/crumbs/builder.py
@@ -612,8 +612,7 @@ class Builder(gtk.Window):
             elif message["eventname"] == "runQueueTaskStarted":
                 fraction = 0.2 + 0.8 * fraction
         self.build_details_page.update_progress_bar(title + ": ", fraction)
-        self.build_details_page.update_build_status(
-            "<span weight=\'bold\'>Running task %s of %s:</span> %s" % (message["current"], message["total"], message["task"]))
+        self.build_details_page.update_build_status(message["current"], message["total"], message["task"])
 
     def handler_build_failure_cb(self, running_build):
         self.build_details_page.show_issues()
-- 
1.7.7.6




^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [PATCH 3/4] lib/bb/ui/crumbs/imageconfigurationpage: ensure widgets stay positioned
  2012-03-27  3:30 [PATCH 0/4] More Hob tweaks Joshua Lock
  2012-03-27  3:30 ` [PATCH 1/4] lib/bb/ui/crumbs: apply primary/secondary dialogue button styling Joshua Lock
  2012-03-27  3:30 ` [PATCH 2/4] lib/bb/ui/crumbs: tweak build status display Joshua Lock
@ 2012-03-27  3:30 ` Joshua Lock
  2012-03-27  3:30 ` [PATCH 4/4] lib/bb/ui/crumbs/imagedetails: use secondary button style for 'View files' Joshua Lock
  2012-03-27 14:14 ` [PATCH 0/4] More Hob tweaks Wang, Shane
  4 siblings, 0 replies; 8+ messages in thread
From: Joshua Lock @ 2012-03-27  3:30 UTC (permalink / raw)
  To: bitbake-devel

Tweak the table layout and insert some dummy widgets when the buttons
aren't drawn such that when the buttons do get drawn the existing widgets
don't all jump up.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
---
 lib/bb/ui/crumbs/imageconfigurationpage.py |   20 ++++++++++++++------
 1 files changed, 14 insertions(+), 6 deletions(-)

diff --git a/lib/bb/ui/crumbs/imageconfigurationpage.py b/lib/bb/ui/crumbs/imageconfigurationpage.py
index 8e0e9fc..d7437a9 100644
--- a/lib/bb/ui/crumbs/imageconfigurationpage.py
+++ b/lib/bb/ui/crumbs/imageconfigurationpage.py
@@ -88,8 +88,16 @@ class ImageConfigurationPage (HobPage):
         self.pack_start(self.group_align, expand=True, fill=True)
 
         self.box_group_area.pack_start(self.gtable, expand=True, fill=True)
-        if pack_config_build_button == True:
+        if pack_config_build_button:
             self.box_group_area.pack_end(self.config_build_button, expand=False, fill=False)
+        else:
+            box = gtk.HBox(False, 6)
+            box.show()
+            subbox = gtk.HBox(False, 0)
+            subbox.set_size_request(205, 49)
+            subbox.show()
+            box.add(subbox)
+            self.box_group_area.pack_end(box, False, False)
 
     def show_machine(self):
         self.progress_bar.reset()
@@ -209,14 +217,14 @@ class ImageConfigurationPage (HobPage):
 
     def set_config_baseimg_layout(self):
         self.gtable.attach(self.image_title, 0, 40, 13, 17)
-        self.gtable.attach(self.image_title_desc, 0, 40, 17, 22)
-        self.gtable.attach(self.image_combo, 0, 12, 22, 25)
-        self.gtable.attach(self.image_desc, 14, 38, 22, 27)
+        self.gtable.attach(self.image_title_desc, 0, 40, 18, 23)
+        self.gtable.attach(self.image_combo, 0, 12, 24, 27)
+        self.gtable.attach(self.image_desc, 14, 38, 24, 29)
         self.gtable.attach(self.image_separator, 0, 40, 35, 36)
 
     def set_rcppkg_layout(self):
-        self.gtable.attach(self.view_recipes_button, 0, 20, 27, 32)
-        self.gtable.attach(self.view_packages_button, 20, 40, 27, 32)
+        self.gtable.attach(self.view_recipes_button, 0, 20, 30, 35)
+        self.gtable.attach(self.view_packages_button, 20, 40, 30, 35)
 
     def create_config_build_button(self):
         # Create the "Build packages" and "Just bake" buttons at the bottom
-- 
1.7.7.6




^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [PATCH 4/4] lib/bb/ui/crumbs/imagedetails: use secondary button style for 'View files'
  2012-03-27  3:30 [PATCH 0/4] More Hob tweaks Joshua Lock
                   ` (2 preceding siblings ...)
  2012-03-27  3:30 ` [PATCH 3/4] lib/bb/ui/crumbs/imageconfigurationpage: ensure widgets stay positioned Joshua Lock
@ 2012-03-27  3:30 ` Joshua Lock
  2012-03-27 14:14 ` [PATCH 0/4] More Hob tweaks Wang, Shane
  4 siblings, 0 replies; 8+ messages in thread
From: Joshua Lock @ 2012-03-27  3:30 UTC (permalink / raw)
  To: bitbake-devel

Use HobAltButton, rather than gtk.LinkButton, for the 'View files'
button.

Use xdg-open to display the folders contents.

Signed-off-by: Joshua Lock <josh@linux.intel.com>
---
 lib/bb/ui/crumbs/imagedetailspage.py |    6 +++++-
 1 files changed, 5 insertions(+), 1 deletions(-)

diff --git a/lib/bb/ui/crumbs/imagedetailspage.py b/lib/bb/ui/crumbs/imagedetailspage.py
index 5a5ec3f..276281d 100755
--- a/lib/bb/ui/crumbs/imagedetailspage.py
+++ b/lib/bb/ui/crumbs/imagedetailspage.py
@@ -185,7 +185,8 @@ class ImageDetailsPage (HobPage):
         image_table.set_model(self.image_store)
         image_size = self._size_to_string(os.stat(os.path.join(image_addr, image_names[0])).st_size)
         image_table.connect("toggled", self.toggled_cb)
-        view_files_button = gtk.LinkButton("file://%s" % image_addr, "View files")
+        view_files_button = HobAltButton("View files")
+        view_files_button.connect("clicked", self.view_files_clicked_cb, image_addr)
         self.box_group_area.pack_start(self.DetailBox(widget=image_table, button=view_files_button), expand=True, fill=True)
 
         # Machine, Base image and Layers
@@ -239,6 +240,9 @@ class ImageDetailsPage (HobPage):
 
         self.show_all()
 
+    def view_files_clicked_cb(self, button, image_addr):
+        os.system("xdg-open /%s" % image_addr)
+
     def refresh_package_detail_box(self, image_size):
         self.package_detail.update_line_widgets("Total image size: ", image_size)
 
-- 
1.7.7.6




^ permalink raw reply related	[flat|nested] 8+ messages in thread

* Re: [PATCH 0/4] More Hob tweaks
  2012-03-27  3:30 [PATCH 0/4] More Hob tweaks Joshua Lock
                   ` (3 preceding siblings ...)
  2012-03-27  3:30 ` [PATCH 4/4] lib/bb/ui/crumbs/imagedetails: use secondary button style for 'View files' Joshua Lock
@ 2012-03-27 14:14 ` Wang, Shane
  2012-03-27 18:42   ` Joshua Lock
  4 siblings, 1 reply; 8+ messages in thread
From: Wang, Shane @ 2012-03-27 14:14 UTC (permalink / raw)
  To: Joshua Lock, bitbake-devel@lists.openembedded.org

ACK.

But I also persist in my opinion for the fix that there would be only one button "Close" for layer dialog;-)

--
Shane

Joshua Lock wrote on 2012-03-27:

> Hi all,
> 
> Here's some more tweaks for Hob.
> 
> The primary/secondary button styling change is similar to the same titled
> patch I submitted recently only the 'Advanced settings' dialogue retains it's
> Save/Cancel buttons.
> 
> I've also included some layout changes to match design and ensure the
> widgets are not moved around when re-drawing the layout.
> 
> Cheers,
> Joshua
> 
> The following changes since commit
> 02d3451b2e0744204a1280f9effe9fd862bb4faf:
> 
>   Hob: add build status labels in the build details screen to make it more
> close to the visual design (2012-03-25 12:13:58 +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: apply primary/secondary dialogue button styling
>   lib/bb/ui/crumbs: tweak build status display
>   lib/bb/ui/crumbs/imageconfigurationpage: ensure widgets stay
>     positioned lib/bb/ui/crumbs/imagedetails: use secondary button style
>     for 'View files'
>  lib/bb/ui/crumbs/builddetailspage.py       |    9 ++-
>  lib/bb/ui/crumbs/builder.py                |  111
>  +++++++++++++++++---------- lib/bb/ui/crumbs/hig.py                   
>  |   34 +++++---- lib/bb/ui/crumbs/imageconfigurationpage.py |   20
>  ++++-- lib/bb/ui/crumbs/imagedetailspage.py       |    6 +- 5 files
>  changed, 115 insertions(+), 65 deletions(-)




^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH 0/4] More Hob tweaks
  2012-03-27 14:14 ` [PATCH 0/4] More Hob tweaks Wang, Shane
@ 2012-03-27 18:42   ` Joshua Lock
  2012-03-28  1:06     ` Wang, Shane
  0 siblings, 1 reply; 8+ messages in thread
From: Joshua Lock @ 2012-03-27 18:42 UTC (permalink / raw)
  To: Wang, Shane; +Cc: bitbake-devel@lists.openembedded.org

On 27/03/12 07:14, Wang, Shane wrote:
> ACK.
>
> But I also persist in my opinion for the fix that there would be only one button "Close" for layer dialog;-)

You mean the using Cancel/Save on the layer dialogue? It seems there's a 
consensus for that approach and I'm planning on submitting a follow on.

I'm hoping to only submit small patches with minor tweaks now that we're 
in the stabilisation phase and the dialogue buttons patch was getting 
large enough that I would like to see it merged asap and not have to 
churn on it any more.

Thanks for the ack, expect more patches in a few hours.

Cheers,
Joshua
-- 
Joshua '贾詡' Lock
         Yocto Project "Johannes factotum"
         Intel Open Source Technology Centre



^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH 0/4] More Hob tweaks
  2012-03-27 18:42   ` Joshua Lock
@ 2012-03-28  1:06     ` Wang, Shane
  0 siblings, 0 replies; 8+ messages in thread
From: Wang, Shane @ 2012-03-28  1:06 UTC (permalink / raw)
  To: Joshua Lock; +Cc: bitbake-devel@lists.openembedded.org

Joshua Lock wrote on 2012-03-28:

> On 27/03/12 07:14, Wang, Shane wrote:
>> ACK.
>> 
>> But I also persist in my opinion for the fix that there would be only one
> button "Close" for layer dialog;-)
> 
> You mean the using Cancel/Save on the layer dialogue? It seems there's a
> consensus for that approach and I'm planning on submitting a follow on.
Yes. Thank you for explanations. That is OK with me.

> 
> I'm hoping to only submit small patches with minor tweaks now that we're
> in the stabilisation phase and the dialogue buttons patch was getting
> large enough that I would like to see it merged asap and not have to
> churn on it any more.
> 
> Thanks for the ack, expect more patches in a few hours.
> 
> Cheers,
> Joshua

--
Shane

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2012-03-28  1:15 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-03-27  3:30 [PATCH 0/4] More Hob tweaks Joshua Lock
2012-03-27  3:30 ` [PATCH 1/4] lib/bb/ui/crumbs: apply primary/secondary dialogue button styling Joshua Lock
2012-03-27  3:30 ` [PATCH 2/4] lib/bb/ui/crumbs: tweak build status display Joshua Lock
2012-03-27  3:30 ` [PATCH 3/4] lib/bb/ui/crumbs/imageconfigurationpage: ensure widgets stay positioned Joshua Lock
2012-03-27  3:30 ` [PATCH 4/4] lib/bb/ui/crumbs/imagedetails: use secondary button style for 'View files' Joshua Lock
2012-03-27 14:14 ` [PATCH 0/4] More Hob tweaks Wang, Shane
2012-03-27 18:42   ` Joshua Lock
2012-03-28  1:06     ` Wang, Shane

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.