Commit Graph

78 Commits

Author SHA1 Message Date
Joshua Lock eba155d4d5 lib/bb/ui/crumbs: apply primary/secondary dialogue button styling
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]

(From Poky rev: 1a52fe9f9e79f33686bd92613fc93eb97daacab8)

(Bitbake rev: 723ad434d427398b202b70f27762878315ffb22c)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-28 16:49:17 +01:00
Joshua Lock fb7eb75f33 lib/bb/ui/crumbs: use a PersistentTooltip for the Brought in by information
(Bitbake rev: c57a45c64a17f1b9dd89743692c3da130ffd38f4)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-25 12:23:34 +01:00
Joshua Lock 63defc9bf6 lib/bb/ui/crumbs/hig: sort layers in Layer Selection dialogue
The two layers which cannot be removed, meta and meta-hob, should be the
first two items in the tree view.

(Bitbake rev: 6e51643325611f6cfc9090dcbbff20755d09c92d)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-25 12:23:33 +01:00
Joshua Lock bad0a86f98 lib/bb/ui/crumbs/hig: tweak 'Add Layer' button per visual design
Use a separate, pre-lit, icon when the button has the cursor over it.

(Bitbake rev: 535d23921dfb7310022099d39b1092edfee51c1a)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-23 16:10:23 +00:00
Joshua Lock 0ac021e8b9 lib/bb/ui/crumbs/hig: disable removal of meta-hob layer
The Hob GUI requires the meta-hob layer to function so prevent its removal
as we do with the core meta layer.

(From Poky rev: a64d71e1e4475236e286cb20dde29c4d099d3693)

(Bitbake rev: 431624678025b3d3fe04f1c6e8fc50820b3129fb)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-22 14:43:51 +00:00
Joshua Lock 1f3a6379c5 ui/crumbs/hig: make the layer selection dialogue more closely match design
The layer dialogue design includes in-line remove/delete widgets next to
the layer path in the tree view for all layers other than the meta layer as
well as an in-line notice that the meta layer cannot be removed.

This is achieved  in this patch through the use of custom cell_data_func's
for the treeview to render the meta layer differently and a custom
CellRenderer implementation, CellRendererPixbufActivatable, which renders a
pixbuf and emits a clicked signal when the user clicks on it.

Fixes [YOCTO #2083]

(From Poky rev: 83c96b7a0ec4412716090098385a665045909a9a)

(Bitbake rev: b2d8f28c0059992200457a15aef8be09e015a5dd)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Shane Wang <shane.wang@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-22 14:43:51 +00:00
Joshua Lock 21970f4755 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>
2012-03-22 14:40:41 +00:00
Dongxiao Xu 5b98b26d75 Hob: change package classes selection GUI
This commit change the GUI for package classes selection in advanced
setting dialog, which conforms with UI team's design.

(From Poky rev: 7bbcabdb71d76cdb2ec1de15618d1e47f1149a21)

(Bitbake rev: 4ebce01dde18e67e01ff7c4736c229a3364c04b0)

Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-22 14:40:39 +00:00
Dongxiao Xu 8683fa2d63 Hob: Remove split model in GTK Hob
Since the GTK Hob will not use the server/client split model, thus
remove it from current Hob code. But we still keep the core mechanism
in bitbake server.

(From Poky rev: 983ea0265a53e0725dcbf9085ea767ebbc155ae5)

(Bitbake rev: 8c129e05a94d457860d883c9b2934a5559de8d9b)

Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-22 14:40:39 +00:00
Dongxiao Xu d03856c611 Hob: Fix advanced setting reparse mechanism
When judging if reparse is needed when change values in advanced
setting, we need also include user's own defined variable pairs.

[YOCTO #2121]

(Bitbake rev: db4b78798e2280736ddce9f54d25cbcdcb779d0a)

Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-20 15:21:37 +00:00
Joshua Lock 1aa102b39e ui/crumbs/hig: use close rather than OK for dismis button
Dialogue buttons should have descriptive names

(Bitbake rev: 7b28ed7dfa59d9e7cec662159113a03633f8bb36)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-20 15:21:35 +00:00
Dongxiao Xu 602adb0e58 Hob: Change Box's padding value
For Box type of widget, change the padding value to be HIG consistent,
that is an increments of 6 pixels.

(Bitbake rev: 0347e99ca5c232832f2b490584d76872c6d77311)

Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-15 10:35:18 +00:00
Dongxiao Xu 3fe627c51c Hob: add "Close" button to "BinbDialog"
For certain distributions, like FC16, it doesn't have close button in
sub-windows or dialogs. Therefore we need to add an "Close" button to
"BinbDialog" to close the dialog.

Besides, let BinbDialog inherits the CrumbsDialog instead of gtk.Dialog

(Bitbake rev: 5d33c355001bec91f4e4c3860db8d7ac2b449782)

Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-15 10:35:15 +00:00
Joshua Lock 67b9706ff2 ui/crumbs/hig: special case stock info icons in CrumbsMesssageDialog
The Hob visual design includes an info icon which should be used
consistently throught the GUI. This change detects use of the stock info
icon in CrumbsMessageDialog and uses the Hob info icon instead.

(Bitbake rev: 37ed1589a19ffc82e8638b5375c99158988b38fc)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-12 02:26:13 +00:00
Joshua Lock fce8d37144 ui/crumbs/hig: use HobInfoButton in place of gtk.Image with tooltip
Replace all instances of the stock info icon with an attached tooltip with
the new HobInfoButton with associated PersistentTooltip.

(Bitbake rev: cead9a2e32f0196536c51d3a0713c1f28a35bf3d)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-12 02:26:13 +00:00
Shane Wang d76e62fdd8 Hob: fix a bug that the image size is shown incorrectly in the image details page.
Originally, the image size shows the last item in the image tree view in the image details page.
That is not correct. We need to show the size of the image which the user chooses.

(Bitbake rev: 01c18a24252b35959a4cc01088678f93cb2f95e5)

Signed-off-by: Shane Wang <shane.wang@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-01 15:51:35 +00:00
Shane Wang 1faa0c538a crumbs/hig: tweak UI and layout of LayerSelectionDialog
Several minor tweaks for appearance:
* Try to rework the labels so that the English flows better
* Fix spacing
* Remove the separator - it's not needed

(Bitbake rev: 53c5807c38e97d2e44a6f5c48449178b8b6e6261)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Shane Wang <shane.wang@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-01 15:51:34 +00:00
Shane Wang 776e507b2f hig: try to avoid setting explicit dialogue sizes
Gtk+ does a good job of creating dialogues which fit all of the packed
widgets and respect the spacing. Let it do its job.

(Bitbake rev: 2469784b38f21716c09df89323c78cd20d3a4c14)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Shane Wang <shane.wang@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-01 15:51:34 +00:00
Shane Wang 1f57d6c180 crumbs: fix button order in several dialogues
GNOME HIG and Gtk+ convention is for the buttons to be ordered
<secondary action> <primary action> so that the primary action can be
selected easily by navigating to the bottom right of the dialogue.

We should try and match the convention and the HIG standard so that we
aren't contrasting the rest of the users applications.

(Bitbake rev: e90828680e3bc655db54ed2797cad4587e8796d0)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Shane Wang <shane.wang@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-01 15:51:33 +00:00
Shane Wang 7ccdd2007b crumbs: move towards more standard dialogue spacing
Inherit from the base CrumbsDialog class which implements standard border and spacing.

Switch all explicitly set dialogue spacings to 6 to converge towards GNOME HIG.

(Bitbake rev: bf938987a007c94fc4bbacb2b4741b7c18cb62ec)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Shane Wang <shane.wang@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-01 15:51:33 +00:00
Shane Wang ae9539f2f4 crumbs: Factor common dialogue configuration out
Factor out the base dialogue configuration into CrumbsDialog and create a new CrumbsMessageDialog which acts as the CrumbsDialog did to handle dialogues with buttons.

Adopt CrumbsMessageDialog wherever CrumbsDialog was used.

(Bitbake rev: d8c62f54d9f2421cfe7f1083b9d0acfe0373d38a)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Shane Wang <shane.wang@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-01 15:51:33 +00:00
Shane Wang 53cc2c6cac Hob: include hddimg and iso into image types.
For image types, so far we don't include hddimg and iso. Then those files can not be deployed because they are filtered out in the image selection dialog.
This patch is to include hddimg and iso (which are "live" in image types).

Again, we have a TODO in the code for the future, that is to retrieve image types from the bitbake server instead of to use the walkaround.

(Bitbake rev: d565507940be73fb5ea3ae7048d8d143c44c2a95)

Signed-off-by: Shane Wang <shane.wang@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-01 15:51:31 +00:00
Shane Wang 73444fb68c Hob: cleanup those class methods in HobWidget
Some dialogs like advanced settings dialog, and layer selection dialog are using the class methods in HobWidget to create widgets for themselves, which is not a good design for OO.

Clean up the code, and split the functions into the separate classes which use them actually.
Finally, remove the class HobWidget.

(Bitbake rev: f9cccea4d1c52ae2173fd94d5b07ceba7e5c0851)

Signed-off-by: Shane Wang <shane.wang@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-01 15:51:31 +00:00
Shane Wang 7f61657357 Hob: fixed the issue in the brought-in-by dialog.
When typing any thing in the search entry, the brough-in-by dialog will be shown. That is because we call back "selection-changed" signal to pop up the dialog, which is not correct.
This patch is to fix the problem by using "row-activated" signal.

(Bitbake rev: ea56ae787153460166697bbcae92f51a77ca1571)

Signed-off-by: Liming An <limingx.l.an@intel.com>
Signed-off-by: Shane Wang <shane.wang@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-01 15:51:31 +00:00
Shane Wang b8582dc996 Hob: avoid the image selection dialog to walk through all directories and its sub-directories, when users click "My images".
The current implementation of the image selection dialog walks through all directories and its sub-directories, when users click "My images" to choose a directory. If the directory is /, the system becomes slow. This patch is to avoid walking through all directories but the child directories only, given a directory.

(Bitbake rev: 536fa633b442ff37d43f45cf346ba281d69de496)

Signed-off-by: Shane Wang <shane.wang@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-01 15:51:30 +00:00
Shane Wang 030ba4bc71 Hob: make HobViewTable more general in hob and make the image selection dialog and the image details page reuse it.
This patch is to make the class HobViewTable more general as a tree view in Hob.
Now the recipe selection page and the package selection page are using it.
And we have tree views in the image selection dialog and the image details page, which used the class methods in HobWidget to create the tree views. That is not good in OO.

So, make them reuse HobViewTable to create its instances.

(Bitbake rev: 3c900211e8bc0311542873480d79b347d7449f59)

Signed-off-by: Shane Wang <shane.wang@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-03-01 15:51:30 +00:00
Dongxiao Xu 656f9a0758 Hob: A new implemetation (v2)
This commit implements a new design for hob
Some of the new features:
 - Friendly new designed GUI. Quick response to user actions.
 - Two step builds support package generation and image generation.
 - Support running GUI seprarately from bitbake server.
 - Recipe/package selection and deselection.
 - Accurate customization for image contents and size.
 - Progress bars showing the parsing and build status.
 - Load/save user configurations from/into templates.

(Bitbake rev: 4dacd29f9c957d20f4583330b51e5420f9c3338d)

Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
Signed-off-by: Shane Wang <shane.wang@intel.com>
Signed-off-by: Liming An <limingx.l.an@intel.com>
Signed-off-by: Fengxia Hua <fengxia.hua@intel.com>
Designed-by: Belen Barros Pena <belen.barros.pena@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-02-24 18:04:27 +00:00
Joshua Lock 4cc291c007 hob: re-designed interaction and implementation
Highlights include:

* Atempted GNOME HIG compliance
* Simplified UI and interaction model
* Sorting and type to find in tree views
* Preferences dialog to modify local settings
* Dialog to add and remove layers
* Search in packages list
* Save/Load image recipes

The build model has been changed, hob will attempt to build all dependent
packages of an image and then use the buildFile server method to build the
created image.

(Bitbake rev: 48e64acaae4a741b9f5630f426fb4e6142755c2c)

Signed-off-by: Joshua Lock <josh@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-07-05 14:40:30 +01:00