From 57434b40b8823969b2b4e88c327857f03722bd9e Mon Sep 17 00:00:00 2001 From: Joshua Lock Date: Tue, 27 Mar 2012 17:02:27 -0700 Subject: lib/bb/ui/crumbs: hob progress bar should not be red when user stops build If the user explicitly stops the build telling them the build failed is a misnomer. (Bitbake rev: 722f4f0e31f9debf5ad20a91da759a8c25151567) Signed-off-by: Joshua Lock Signed-off-by: Richard Purdie --- bitbake/lib/bb/ui/crumbs/builddetailspage.py | 2 +- bitbake/lib/bb/ui/crumbs/builder.py | 21 ++++++++++++++------- bitbake/lib/bb/ui/crumbs/hig.py | 2 +- bitbake/lib/bb/ui/crumbs/imageconfigurationpage.py | 2 +- bitbake/lib/bb/ui/crumbs/progressbar.py | 8 +++++--- 5 files changed, 22 insertions(+), 13 deletions(-) (limited to 'bitbake') diff --git a/bitbake/lib/bb/ui/crumbs/builddetailspage.py b/bitbake/lib/bb/ui/crumbs/builddetailspage.py index abbee4c5b2..1440039c3e 100755 --- a/bitbake/lib/bb/ui/crumbs/builddetailspage.py +++ b/bitbake/lib/bb/ui/crumbs/builddetailspage.py @@ -213,7 +213,7 @@ class BuildDetailsPage (HobPage): self.show_all() self.back_button.hide() - def update_progress_bar(self, title, fraction, status=True): + def update_progress_bar(self, title, fraction, status=None): self.progress_bar.update(fraction) self.progress_bar.set_title(title) self.progress_bar.set_rcstyle(status) diff --git a/bitbake/lib/bb/ui/crumbs/builder.py b/bitbake/lib/bb/ui/crumbs/builder.py index 8390a0cf06..0c00d2a6de 100755 --- a/bitbake/lib/bb/ui/crumbs/builder.py +++ b/bitbake/lib/bb/ui/crumbs/builder.py @@ -608,13 +608,20 @@ class Builder(gtk.Window): self.stopping = False def build_failed(self): - if self.current_step == self.FAST_IMAGE_GENERATING: - fraction = 0.9 - elif self.current_step == self.IMAGE_GENERATING: - fraction = 1.0 - elif self.current_step == self.PACKAGE_GENERATING: - fraction = 1.0 - self.build_details_page.update_progress_bar("Build Failed: ", fraction, False) + if self.stopping: + status = "stop" + message = "Build stopped: " + fraction = self.build_details_page.progress_bar.get_fraction() + else: + if self.current_step == self.FAST_IMAGE_GENERATING: + fraction = 0.9 + elif self.current_step == self.IMAGE_GENERATING: + fraction = 1.0 + elif self.current_step == self.PACKAGE_GENERATING: + fraction = 1.0 + status = "fail" + message = "Build failed: " + self.build_details_page.update_progress_bar(message, fraction, status) self.build_details_page.show_back_button() self.build_details_page.hide_stop_button() self.handler.build_failed_async() diff --git a/bitbake/lib/bb/ui/crumbs/hig.py b/bitbake/lib/bb/ui/crumbs/hig.py index 1aa055edff..9927370f91 100644 --- a/bitbake/lib/bb/ui/crumbs/hig.py +++ b/bitbake/lib/bb/ui/crumbs/hig.py @@ -735,7 +735,7 @@ class DeployImageDialog (CrumbsDialog): cmdline += "\"sudo dd if=" + self.image_path + " of=" + combo_item + "; bash\"" subprocess.Popen(args=shlex.split(cmdline)) - def update_progress_bar(self, title, fraction, status=True): + def update_progress_bar(self, title, fraction, status=None): self.progress_bar.update(fraction) self.progress_bar.set_title(title) self.progress_bar.set_rcstyle(status) diff --git a/bitbake/lib/bb/ui/crumbs/imageconfigurationpage.py b/bitbake/lib/bb/ui/crumbs/imageconfigurationpage.py index 84c9c083cb..0f59dd980a 100644 --- a/bitbake/lib/bb/ui/crumbs/imageconfigurationpage.py +++ b/bitbake/lib/bb/ui/crumbs/imageconfigurationpage.py @@ -105,7 +105,7 @@ class ImageConfigurationPage (HobPage): self.set_config_machine_layout(show_progress_bar = False) self.show_all() - def update_progress_bar(self, title, fraction, status=True): + def update_progress_bar(self, title, fraction, status=None): self.progress_bar.update(fraction) self.progress_bar.set_title(title) self.progress_bar.set_rcstyle(status) diff --git a/bitbake/lib/bb/ui/crumbs/progressbar.py b/bitbake/lib/bb/ui/crumbs/progressbar.py index 882d461711..f75818ac76 100644 --- a/bitbake/lib/bb/ui/crumbs/progressbar.py +++ b/bitbake/lib/bb/ui/crumbs/progressbar.py @@ -29,10 +29,12 @@ class HobProgressBar (gtk.ProgressBar): def set_rcstyle(self, status): rcstyle = gtk.RcStyle() rcstyle.fg[2] = gtk.gdk.Color(HobColors.BLACK) - if status: - rcstyle.bg[3] = gtk.gdk.Color(HobColors.RUNNING) - else: + if status == "stop": + rcstyle.bg[3] = gtk.gdk.Color(HobColors.WARNING) + elif status == "fail": rcstyle.bg[3] = gtk.gdk.Color(HobColors.ERROR) + else: + rcstyle.bg[3] = gtk.gdk.Color(HobColors.RUNNING) self.modify_style(rcstyle) def set_title(self, text=None): -- cgit v1.2.3-54-g00ecf