SYNOPSIS
gurpm::RPMProgressDialog is a widget for gurpmi, rpmdrake (drakx already has its own) that presents a global progress bar.
USAGE
How to use:
my $w = gurpm::RPMProgressDialog->new:
#$w->change_widget(Gtk3::Box->new);
label(N("Preparing packages installation..."));
... # compute packages to install/remove...
$w->init_progressbar;
urpm::main_loop::run($urpm, $state, $nb, \@ask_unselect, {
trans_log => \&gurpm::RPMProgressDialog::callback_download,
pre_check_sig => \&gurpm::RPMProgressDialog::pre_check_sig,
inst => \&gurpm::RPMProgressDialog::callback_inst,
trans => \&gurpm::RPMProgressDialog::callback_inst,
uninst => \&gurpm::RPMProgressDialog::callback_inst,
....
DESCRIPTION
Creators
- gurpm::RPMProgressDialog->new($urpm, $o_quit)
-
Creates a new Progress Dialog.
Arguments are an urpm object and a quit routine reference.
Methods
- change_widget($w, $box_widget)
-
Replaces the contents of the main window with the specified box (avoids popup multiplication)
- label($w, $o_text)
-
sets the window to a please-wait message
- init_progressbar($w)
-
Put a progress bar in the dialog.
- set_progresslabel($w, $text)
-
Update the progress label
- set_progressbar($w, $local_ratio)
-
Update the progress bar
- validate_cancel($self, $cancel_msg, $cancel_cb)
-
Add a "Cancel" button, with $cancel_msg as label, calling $cancel_cb when clicked.
- invalidate_cancel($self)
-
Disable the "Cancel" button if any.
- invalidate_cancel($self)
-
Disable the "Cancel" button if any and make it insensitive so that it'll never be usable again.
- sync($w)
-
tell Gtk+ to refresh the dialog content if needed.
- gurpm::RPMProgressDialog::get_something_done()
-
Whether some package has been installed or removed
- canceled($w)
-
Whether downloading has been canceled or not.
Callbacks
- callback_pre_check_sig()
-
This callback is called when checking packages before installing them.
Its purpose is to display installation progress in the dialog.
- callback_inst($urpm, $type, $id, $subtype, $amount, $total)
-
This callback is called when a new RPM DB transaction is created and when packages are installed.
Its purpose is to display installation progress in the dialog.
- callback_download($mode, $file, $percent, $total, $eta, $speed)
-
This callback is called when packages are downloaded prior being installed in a RPM transaction.
Its purpose is to display download progress in the dialog.
- callback_cancel()
-
This callback is to be called when canceling packages download.
Copyright
Copyright (C) 2005 MandrakeSoft SA
Copyright (C) 2005-2010 Mandriva SA
Copyright (C) 2011-2020 Mageia