home *** CD-ROM | disk | FTP | other *** search
- # Source Generated with Decompyle++
- # File: in.pyo (Python 2.4)
-
- import pygtk
- pygtk.require('2.0')
- import gtk
- import apt
- import apt_pkg
- from gettext import gettext as _
- STEPS_UPDATE_CACHE = [
- 33,
- 66,
- 100]
-
- class GtkOpProgress(apt.OpProgress):
-
- def __init__(self, host_window, progressbar, status, parent, steps = STEPS_UPDATE_CACHE):
- self.steps = steps[:]
- self.base = 0
- self.old = 0
- self.next = int(self.steps.pop(0))
- self._parent = parent
- self._window = host_window
- self._status = status
- self._progressbar = progressbar
- self._window.realize()
- host_window.window.set_functions(gtk.gdk.FUNC_MOVE)
- self._window.set_transient_for(parent)
-
-
- def update(self, percent):
- self._window.show()
- self._parent.set_sensitive(False)
- if self.old > percent:
- self.base = self.next
-
- try:
- self.next = int(self.steps.pop(0))
-
-
- progress = self.base + (percent / 100) * (self.next - self.base)
- self.old = percent
- self._status.set_markup('<i>%s</i>' % self.op)
- self._progressbar.set_fraction(progress / 100.0)
- while gtk.events_pending():
- gtk.main_iteration()
-
-
- def done(self):
- self._parent.set_sensitive(True)
-
-
- def hide(self):
- self._window.hide()
-
-
-
- class GtkFetchProgress(apt.progress.FetchProgress):
-
- def __init__(self, parent, summary = '', descr = ''):
- self._continue = True
- self.summary = parent.label_fetch_summary
- self.status = parent.label_fetch_status
- self.progress = parent.progressbar_fetch
- self.window_fetch = parent.window_fetch
- self.window_fetch.set_transient_for(parent.window_main)
- self.window_fetch.realize()
- self.window_fetch.window.set_functions(gtk.gdk.FUNC_MOVE)
- if self.summary != '':
- self.summary.set_markup('<big><b>%s</b></big> \n\n%s' % (summary, descr))
-
-
-
- def start(self):
- self.progress.set_fraction(0)
- self.window_fetch.show()
-
-
- def stop(self):
- self.window_fetch.hide()
-
-
- def on_button_fetch_cancel_clicked(self, widget):
- self._continue = False
-
-
- def pulse(self):
- apt.progress.FetchProgress.pulse(self)
- currentItem = self.currentItems + 1
- if currentItem > self.totalItems:
- currentItem = self.totalItems
-
- 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)
- self.progress.set_text('')
- while gtk.events_pending():
- gtk.main_iteration()
- return self._continue
-
-
-