The apt.progress.gtk2 module provides classes with GObject signals and a class with a GTK+ widget for progress handling.
An implementation of apt.progress.base.InstallProgress supporting GObject signals. The class emits the following signals:
Emitted when the status of an operation changed.
Emitted when the installation started.
Emitted when the installation finished.
Emitted when a timeout happens
Emitted in case of an error.
Emitted when a conffile update is happening.
An implementation of apt.progress.base.AcquireProgress supporting GObject signals. The class emits the following signals:
Emitted when the status of the fetcher changed, e.g. when the percentage increased.
Emitted when the fetcher starts to fetch.
Emitted when the fetcher finished.
An implementation of apt.progress.base.InstallProgress supporting GObject signals. This is the same as GInstallProgress and is thus completely deprecated.
An implementation of apt.progress.old.FetchProgress supporting GObject signals. The class emits the following signals:
Emitted when the status of an operation changed.
Emitted when it starts - Not implemented yet.
Emitted when all operations have finished.
Graphical progress for installation/fetch/operations, providing a progress bar, a terminal and a status bar for showing the progress of package manipulation tasks.
Cancel a currently running download.
Reset all status information.
Return the install progress handler for dpkg.
Return the fetch progress handler.
Hide the expander with the terminal widget.
Return the install progress handler.
Return the cache opening progress handler.
Show the Box
Show an expander with a terminal widget which provides a way to interact with dpkg.
#!/usr/bin/python
"""Example for gtk widgets"""
import pygtk
pygtk.require("2.0")
import gtk
import apt.progress.gtk2
def main():
"""Main function."""
win = gtk.Window()
win.connect("destroy", gtk.main_quit)
progress = apt.progress.gtk2.GtkAptProgress()
win.set_title("GtkAptProgress Demo")
win.add(progress)
progress.show()
win.show()
cache = apt.cache.Cache(progress.open)
if cache["xterm"].is_installed:
cache["xterm"].mark_delete()
else:
cache["xterm"].mark_install()
progress.show_terminal(expanded=True)
cache.commit(progress.fetch, progress.install)
gtk.main()
if __name__ == "__main__":
main()