summaryrefslogtreecommitdiff
path: root/UpdateManager/GtkProgress.py
diff options
context:
space:
mode:
authorMichael Vogt <michael.vogt@ubuntu.com>2006-01-27 23:07:13 +0100
committerMichael Vogt <michael.vogt@ubuntu.com>2006-01-27 23:07:13 +0100
commitf2f18ea56f05bffecdcff2e27dfeb4131bc1ab70 (patch)
tree345a551baf6512469846220273a092ddd6fd5f2d /UpdateManager/GtkProgress.py
parent02772988dc59b9e7ce0dcbe25dfb0fee2b40c7d4 (diff)
parentdb29199645e2673c35f68d5364d76f1b2b18d318 (diff)
downloadpython-apt-f2f18ea56f05bffecdcff2e27dfeb4131bc1ab70.tar.gz
* merged with sebastian
Diffstat (limited to 'UpdateManager/GtkProgress.py')
-rw-r--r--UpdateManager/GtkProgress.py44
1 files changed, 31 insertions, 13 deletions
diff --git a/UpdateManager/GtkProgress.py b/UpdateManager/GtkProgress.py
index d25149e4..704946c7 100644
--- a/UpdateManager/GtkProgress.py
+++ b/UpdateManager/GtkProgress.py
@@ -27,21 +27,32 @@ import apt_pkg
from gettext import gettext as _
class GtkOpProgress(apt.OpProgress):
- def __init__(self, window,progressbar, parent):
+ def __init__(self, window, progressbar, status, parent):
self._parent = parent
self._window = window
+ self._status = status
self._progressbar = progressbar
+ #self._progressbar.set_pulse_step(0.01)
+ #self._progressbar.pulse()
window.set_transient_for(parent)
def update(self, percent):
#print percent
#print self.Op
#print self.SubOp
+ # Use pulse until apt doesn't restarts the progress bar
+ # several times
self._window.show()
- self._progressbar.set_text(self.op)
+ self._parent.set_sensitive(False)
+ self._status.set_markup("<i>%s</i>" % self.op)
self._progressbar.set_fraction(percent/100.0)
+ #if percent > 99:
+ # self._progressbar.set_fraction(1)
+ #else:
+ # self._progressbar.pulse()
while gtk.events_pending():
gtk.main_iteration()
def done(self):
+ self._parent.set_sensitive(True)
self._window.hide()
class GtkFetchProgress(apt.progress.FetchProgress):
@@ -59,25 +70,32 @@ class GtkFetchProgress(apt.progress.FetchProgress):
if self.summary != "":
self.summary.set_markup("<big><b>%s</b></big> \n\n%s" %
(summary, descr))
- self.window_fetch.set_title(summary)
def start(self):
- self.progress.set_fraction(0)
+ self.progress.set_fraction(0)
self.window_fetch.show()
def stop(self):
- self.window_fetch.hide()
+ self.window_fetch.hide()
def on_button_fetch_cancel_clicked(self, widget):
self._continue = False
def pulse(self):
apt.progress.FetchProgress.pulse(self)
- if self.currentCPS > 0:
- self.status.set_text(_("Download rate: %s/s - %s remaining" % (apt_pkg.SizeToStr(self.currentCPS), apt_pkg.TimeToStr(self.eta))))
- else:
- self.status.set_text(_("Download rate: unkown"))
- self.progress.set_fraction(self.percent/100.0)
currentItem = self.currentItems + 1
if currentItem > self.totalItems:
currentItem = self.totalItems
- self.progress.set_text(_("Downloading file %li of %li" % (currentItem, self.totalItems)))
- while gtk.events_pending():
- gtk.main_iteration()
+ if self.currentCPS > 0:
+ statusText = (_("Downloading file %li of %li with %s/s"
+ % (currentItem, self.totalItems,
+ apt_pkg.SizeToStr(self.currentCPS))))
+ else:
+ statusText = (_("Downloading file %li of %li with unknown "
+ "speed") % (currentItem, self.totalItems))
+ self.progress.set_fraction(self.percent/100.0)
+ self.status.set_markup("<i>%s</i>" % statusText)
+ # TRANSLATORS: show the remaining time in a progress bar:
+ #self.progress.set_text(_("About %s left" % (apt_pkg.TimeToStr(self.eta))))
+ # FIXME: show remaining time
+ self.progress.set_text("")
+
+ while gtk.events_pending():
+ gtk.main_iteration()
return self._continue