# wx.lib.agw.pyprogress.PyProgress¶

PyProgress is similar to ProgressDialog in indeterminated mode, but with a different gauge appearance and a different spinning behavior. The moving gauge can be drawn with a single solid colour or with a shading gradient foreground. The gauge background colour is user customizable. The bar does not move always from the beginning to the end as in ProgressDialog in indeterminated mode, but spins cyclically forward and backward.

## Class Hierarchy¶

Inheritance diagram for class PyProgress:

wxMSW

wxMAC

wxGTK

## Known Superclasses¶

wx.Dialog

## Methods Summary¶

 __init__ Default class constructor. CreateLabel Creates the StaticText that holds the elapsed time label. DisableAbort Disables the Cancel button. EnableAbort Enables or disables the Cancel button. EnableClose Enables or disables the Close button. GetAGWWindowStyleFlag Returns the PyProgress style. GetFirstGradientColour Returns the gauge first gradient colour. GetGaugeBackground Returns the gauge background colour. GetGaugeProportion Returns the relative proportion between the sliding bar and the GetGaugeSteps Returns the number of steps the gauge performs before switching from GetSecondGradientColour Returns the gauge second gradient colour. OnCancel Handles the wx.EVT_BUTTON event for the dialog. OnClose Handles the wx.EVT_CLOSE event for PyProgress. OnDestroy Handles the wx.EVT_WINDOW_DESTROY event for PyProgress. ReenableOtherWindows Re-enables the other windows if using wx.WindowDisabler. SetFirstGradientColour Sets the gauge first gradient colour. SetGaugeBackground Sets the gauge background colour. SetGaugeProportion Sets the relative proportion between the sliding bar and the SetGaugeSteps Sets the number of steps the gauge performs before switching from SetSecondGradientColour Sets the gauge second gradient colour. SetTimeLabel Sets the elapsed time label. ShowDialog Show the dialog. UpdatePulse Updates the dialog, setting the progress bar to the new value and, if given

## Class API¶

class PyProgress(wx.Dialog)

PyProgress is similar to ProgressDialog in indeterminated mode, but with a different gauge appearance and a different spinning behavior. The moving gauge can be drawn with a single solid colour or with a shading gradient foreground. The gauge background colour is user customizable. The bar does not move always from the beginning to the end as in ProgressDialog in indeterminated mode, but spins cyclically forward and backward.

### Methods¶

__init__(self, parent=None, id=-1, title="", message="", agwStyle=wx.PD_APP_MODAL|wx.PD_AUTO_HIDE)

Default class constructor.

Parameters
• parent – parent window;

• id – window identifier. A value of -1 indicates a default value;

• title – dialog title to show in titlebar;

• message – message displayed above the progress bar;

• style – the dialog style. This can be a combination of the following bits:

Window Styles

Hex Value

Description

PD_CAN_ABORT

0x1

This flag tells the dialog that it should have a Cancel button which the user may press. If this happens, the next call to UpdatePulse will return False.

PD_APP_MODAL

0x2

Make the progress dialog modal. If this flag is not given, it is only ‘locally’ modal - that is the input to the parent window is disabled, but not to the other ones.

PD_AUTO_HIDE

0x4

Causes the progress dialog to disappear from screen as soon as the maximum value of the progress meter has been reached.

PD_ELAPSED_TIME

0x8

This flag tells the dialog that it should show elapsed time (since creating the dialog).

CreateLabel(self, text, sizer)

Creates the StaticText that holds the elapsed time label.

Parameters
• text – the dialog message to be displayed above the gauge;

• sizer – the main BoxSizer for PyProgress.

DisableAbort(self)

Disables the Cancel button.

EnableAbort(self, enable=True)

Enables or disables the Cancel button.

Parameters

enableTrue to enable the Cancel button, False to disable it.

EnableClose(self, enable=True)

Enables or disables the Close button.

Parameters

enableTrue to enable the Close button, False to disable it.

GetAGWWindowStyleFlag(self)

Returns the PyProgress style.

The __init__ method for a list of possible style flags.

GetFirstGradientColour(self)

Returns the gauge first gradient colour.

GetGaugeBackground(self)

Returns the gauge background colour.

GetGaugeProportion(self)

Returns the relative proportion between the sliding bar and the whole gauge.

GetGaugeSteps(self)

Returns the number of steps the gauge performs before switching from forward to backward (or vice-versa) movement.

GetSecondGradientColour(self)

Returns the gauge second gradient colour.

OnCancel(self, event)

Handles the wx.EVT_BUTTON event for the dialog.

Parameters

event – a CommandEvent event to be processed.

Note

This method handles the Cancel button press.

OnClose(self, event)

Handles the wx.EVT_CLOSE event for PyProgress.

Parameters

event – a CloseEvent event to be processed.

OnDestroy(self, event)

Handles the wx.EVT_WINDOW_DESTROY event for PyProgress.

Parameters

event – a wx.WindowDestroyEvent event to be processed.

ReenableOtherWindows(self)

Re-enables the other windows if using wx.WindowDisabler.

SetFirstGradientColour(self, colour)

Sets the gauge first gradient colour.

Parameters

colour – a valid wx.Colour object.

SetGaugeBackground(self, colour)

Sets the gauge background colour.

Parameters

colour – a valid wx.Colour object.

SetGaugeProportion(self, proportion)

Sets the relative proportion between the sliding bar and the whole gauge.

Parameters

proportion – a floating point number representing the relative proportion between the sliding bar and the whole gauge.

SetGaugeSteps(self, steps)

Sets the number of steps the gauge performs before switching from forward to backward (or vice-versa) movement.

Parameters

steps – the number of steps the gauge performs before switching from forward to backward (or vice-versa) movement.

SetSecondGradientColour(self, colour)

Sets the gauge second gradient colour.

Parameters

colour – a valid wx.Colour object.

SetTimeLabel(self, val, label=None)

Sets the elapsed time label.

Parameters
• val – the elapsed time since the dialog was shown, in seconds;

• label – the new message to display in the elapsed time text.

ShowDialog(self, show=True)

Show the dialog.

Parameters

showTrue to show the dialog and re-enable all the other windows, False otherwise.

UpdatePulse(self, newmsg="")

Updates the dialog, setting the progress bar to the new value and, if given changes the message above it. Returns True unless the Cancel button has been pressed.

If False is returned, the application can either immediately destroy the dialog or ask the user for the confirmation.

Parameters

newmsg – The new messages for the progress dialog text, if it is empty (which is the default) the message is not changed.