summaryrefslogtreecommitdiffstats
path: root/bitbake/lib
diff options
context:
space:
mode:
Diffstat (limited to 'bitbake/lib')
-rw-r--r--bitbake/lib/bb/ui/crumbs/hig.py2
-rwxr-xr-xbitbake/lib/bb/ui/crumbs/imagedetailspage.py32
2 files changed, 25 insertions, 9 deletions
diff --git a/bitbake/lib/bb/ui/crumbs/hig.py b/bitbake/lib/bb/ui/crumbs/hig.py
index 9b96d8d..c5bd27a 100644
--- a/bitbake/lib/bb/ui/crumbs/hig.py
+++ b/bitbake/lib/bb/ui/crumbs/hig.py
@@ -1035,6 +1035,7 @@ class ImageSelectionDialog (CrumbsDialog):
table.attach(open_button, 9, 10, 0, 1)
self.image_table = HobViewTable(self.__columns__)
+ self.image_table.set_size_request(-1, 300)
self.image_table.connect("toggled", self.toggled_cb)
self.vbox.pack_start(self.image_table, expand=True, fill=True)
@@ -1052,7 +1053,6 @@ class ImageSelectionDialog (CrumbsDialog):
model[path][columnid] = True
-
def select_path_cb(self, action, parent, entry):
dialog = gtk.FileChooserDialog("", parent,
gtk.FILE_CHOOSER_ACTION_SELECT_FOLDER,
diff --git a/bitbake/lib/bb/ui/crumbs/imagedetailspage.py b/bitbake/lib/bb/ui/crumbs/imagedetailspage.py
index 7f93db7..833c149 100755
--- a/bitbake/lib/bb/ui/crumbs/imagedetailspage.py
+++ b/bitbake/lib/bb/ui/crumbs/imagedetailspage.py
@@ -74,6 +74,7 @@ class ImageDetailsPage (HobPage):
self.hbox.pack_start(self.table, expand=True, fill=True, padding=15)
colid = 0
+ self.line_widgets = {}
if icon != None:
self.table.attach(icon, colid, colid + 2, 0, 1)
colid = colid + 2
@@ -81,20 +82,31 @@ class ImageDetailsPage (HobPage):
self.table.attach(widget, colid, 20, 0, 1)
elif varlist != None and vallist != None:
for line in range(0, row):
- self.table.attach(self.text2label(varlist[line], vallist[line]), colid, 20, line, line + 1)
+ self.line_widgets[varlist[line]] = self.text2label(varlist[line], vallist[line])
+ self.table.attach(self.line_widgets[varlist[line]], colid, 20, line, line + 1)
# pack the button on the right
if button != None:
self.hbox.pack_end(button, expand=False, fill=False)
+ def update_line_widgets(self, variable, value):
+ if len(self.line_widgets) == 0:
+ return
+ if not isinstance(self.line_widgets[variable], gtk.Label):
+ return
+ self.line_widgets[variable].set_markup(self.format_line(variable, value))
+
+ def format_line(self, variable, value):
+ markup = "<span weight=\'bold\'>%s</span>" % variable
+ markup += "<span weight=\'normal\' foreground=\'#1c1c1c\' font_desc=\'14px\'>%s</span>" % value
+ return markup
+
def text2label(self, variable, value):
# append the name:value to the left box
# such as "Name: hob-core-minimal-variant-2011-12-15-beagleboard"
- markup = "<span weight=\'bold\'>%s</span>" % variable
- markup += "<span weight=\'normal\' foreground=\'#1c1c1c\' font_desc=\'14px\'>%s</span>" % value
label = gtk.Label()
label.set_alignment(0.0, 0.5)
- label.set_markup(markup)
+ label.set_markup(self.format_line(variable, value))
return label
def __init__(self, builder):
@@ -141,8 +153,6 @@ class ImageDetailsPage (HobPage):
image_addr = self.builder.parameters.image_addr
image_names = self.builder.parameters.image_names
if build_succeeded:
- image_addr = self.builder.parameters.image_addr
- image_names = self.builder.parameters.image_names
machine = self.builder.configuration.curr_mach
base_image = self.builder.recipe_model.get_selected_image()
layers = self.builder.configuration.layers
@@ -174,6 +184,7 @@ class ImageDetailsPage (HobPage):
image_table = HobViewTable(self.__columns__)
image_table.set_model(self.image_store)
image_table.toggle_default()
+ 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")
self.box_group_area.pack_start(self.DetailBox(widget=image_table, button=view_files_button), expand=True, fill=True)
@@ -217,8 +228,9 @@ class ImageDetailsPage (HobPage):
edit_packages_button.connect("clicked", self.edit_packages_button_clicked_cb)
else: # get to this page from "My images"
edit_packages_button = None
- package_detail = self.DetailBox(varlist=varlist, vallist=vallist, button=edit_packages_button)
- self.box_group_area.pack_start(package_detail, expand=False, fill=False)
+ self.package_detail = self.DetailBox(varlist=varlist, vallist=vallist, button=edit_packages_button)
+ self.box_group_area.pack_start(self.package_detail, expand=False, fill=False)
+
if build_succeeded:
buttonlist = ["Build new image", "Save as template", "Run image", "Deploy image"]
else: # get to this page from "My images"
@@ -228,6 +240,9 @@ class ImageDetailsPage (HobPage):
self.show_all()
+ def refresh_package_detail_box(self, image_size):
+ self.package_detail.update_line_widgets("Total image size: ", image_size)
+
def toggled_cb(self, table, cell, path, columnid, tree):
model = tree.get_model()
if not model:
@@ -239,6 +254,7 @@ class ImageDetailsPage (HobPage):
iter = model.iter_next(iter)
model[path][columnid] = True
+ self.refresh_package_detail_box(model[path][1])
def create_bottom_buttons(self, buttonlist):
# Create the buttons at the bottom
OpenPOWER on IntegriCloud