- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Examples

- Class List
- Class Hierarchy
- Class Members

Static Public Member Functions

# MProgressWindow Class Reference
OpenMayaUI - API module for user interface

This reference page is linked to from the following overview topics: Overview of example plug-ins, Example C++ plug-in descriptions.

Search for all occurrences

## Detailed Description

Create and manipulate progress windows.

The MProgressWindow class manages a window containing a status message, a graphical progress gauge, and optionally a "Hit ESC to Cancel" label for interruptable operations.

Only a single progress window may be displayed at any time. To reserve the use of the progress window, use the reserve() method in this class. Any methods that change the state of the progress window will fail unless the progress window has first been successfully reserved.

The startProgress() and endProgress() functions show and hide the progress window. endProgress() also has the effect of unreserving the progress window, allowing it to be reserved for another use.

The MEL command "progressWindow" provides equivalent functionality to this class. Attempting to manipulate a progress window that is in use by MEL will cause the methods in this class to fail.

`#include <MProgressWindow.h>`

List of all members.

## Static Public Member Functions
static bool | reserve ()
| Reserves a progress window for use through this class.
static MStatus | startProgress ()
| Displays the progress window on the screen.
static MStatus | endProgress ()
| Destroys the progress window and removes it from the screen.
static MStatus | setProgressRange (const int minValue, const int maxValue)
| Sets the range (minValue, maxValue) of the progress indicator.
static MStatus | setProgressMin (const int minValue)
| Sets the minimum value for the progress.
static MStatus | setProgressMax (const int maxValue)
| Sets the maximum value for the progress.
static int | progressMin (MStatus *ReturnStatus=NULL)
| Get the minimum progress value.
static int | progressMax (MStatus *ReturnStatus=NULL)
| Get the maximum progress value.
static MStatus | setProgress (const int progress)
| Sets the progress value.
static MStatus | advanceProgress (const int amount)
| Increases the progress value by amount.
static int | progress (MStatus *ReturnStatus=NULL)
| Get the progress value.
static MStatus | setTitle (const MString &title)
| Sets the title of the progress window.
static MString | title (MStatus *ReturnStatus=NULL)
| Get the window title.
static MStatus | setProgressStatus (const MString &progressStatus)
| Sets the progress status string.
static MString | progressStatus (MStatus *ReturnStatus=NULL)
| Get the progress status string.
static MStatus | setInterruptable (const bool value)
| Sets whether the progress window is interruptable.
static bool | isInterruptable (MStatus *ReturnStatus=NULL)
| Determine whether the progress window is interruptable.
static bool | isCancelled (MStatus *ReturnStatus=NULL)
| Determine whether the user has tried to cancel an interruptable progress window.
static const char * | className ()
| Returns the name of this class.

## Member Function Documentation

bool reserve | ( |  | ) | `[static]`

Search for all occurrences

Reserves a progress window for use through this class.

This method must be called before setting progress window parameters or starting progress.

Returns:
  true if the progress window was successfully reserved

Examples:
  progressWindowCmd.cpp.

MStatus startProgress | ( |  | ) | `[static]`

Search for all occurrences

Displays the progress window on the screen.

Returns:
  Status code

Status Codes:
  - MS::kSuccess The progress window was created and displayed.
  - MS::kFailure Progress has already been started.

Examples:
  progressWindowCmd.cpp.

MStatus endProgress | ( |  | ) | `[static]`

Search for all occurrences

Destroys the progress window and removes it from the screen.

This method also unreserves the progress window, making it available for future reservation.

Returns:
  Status code

Status Codes:
  - MS::kSuccess The progress window was destroyed.
  - MS::kFailure Progress has not been started.

Examples:
  progressWindowCmd.cpp.

MStatus setProgressRange | ( | const int | minValue,
|  | const int | maxValue
| ) |  | `[static]`

Search for all occurrences

Sets the range (minValue, maxValue) of the progress indicator.

When the progress value is set through setProgress() or advanceProgress(), it is checked against the minimum and maximum progress values. If the new progress value lies outside this range, it is clamped to a value in this range.

When the progress value is set to a value of minValue, the progress bar is displayed as empty. When the progress value is set to a value of maxValue, the progress bar is displayed as full. Intermediate progress values are displayed as intermediate positions of the progress bar.

Parameters:

  [in] | minValue | Minimum progress value
  [in] | maxValue | Maximum progress value

Returns:
  Status code

Status Codes:
  - MS::kSuccess The range was set successfully.
  - MS::kInvalidParameter max is less than or equal to min.
  - MS::kFailure Progress has not been started.

Examples:
  progressWindowCmd.cpp.

MStatus setProgressMin | ( | const int | minValue | ) | `[static]`

Search for all occurrences

Sets the minimum value for the progress.

Any progress value less then minValue will be set to minValue, with the progress bar displayed as empty.

Parameters:

  [in] | minValue | Minimum progress value

Returns:
  Status code

Status Codes:
  - MS::kSuccess The minimum was set successfully.
  - MS::kInvalidParameter max is less than or equal to min.
  - MS::kFailure Progress has not been started.

MStatus setProgressMax | ( | const int | maxValue | ) | `[static]`

Search for all occurrences

Sets the maximum value for the progress.

Any progress value greater then maxValue will be set to maxValue, with the progress bar displayed as full.

Parameters:

  [in] | maxValue | Maximum progress value

Returns:
  Status code

Status Codes:
  - MS::kSuccess The maximum was set successfully.
  - MS::kInvalidParameter max is less than or equal to min.
  - MS::kFailure Progress has not been started.

int progressMin | ( | MStatus * | ReturnStatus = `NULL` | ) | `[static]`

Search for all occurrences

Get the minimum progress value.

Parameters:

  [out] | ReturnStatus | Status code

Returns:
  Minimum progress value. Returns -1 if query fails.

Examples:
  progressWindowCmd.cpp.

int progressMax | ( | MStatus * | ReturnStatus = `NULL` | ) | `[static]`

Search for all occurrences

Get the maximum progress value.

Parameters:

  [out] | ReturnStatus | Status code

Returns:
  Maximum progress value. Returns -1 if query fails.

Examples:
  progressWindowCmd.cpp.

MStatus setProgress | ( | const int | progress | ) | `[static]`

Search for all occurrences

Sets the progress value.

If progress is not between progressMin() and progressMax() inclusively, it is set to whichever of progressMin() or progressMax() is closest.

Advancing the progress value updates the progress bar to show the new amount of progress.

Parameters:

  [in] | progress | New progress value

Returns:
  Status code

Status Codes:
  - MS::kSuccess Progress value set.
  - MS::kFailure Progress has not been started.

Examples:
  progressWindowCmd.cpp.

MStatus advanceProgress | ( | const int | amount | ) | `[static]`

Search for all occurrences

Increases the progress value by amount.

If the resulting progress value is not between progressMin() and progressMax() inclusively, it is set to whichever of progressMin() or progressMax() is closest.

Advancing the progress value updates the progress bar to show the new amount of progress.

Parameters:

  [in] | amount | Value to add to current progress

Returns:
  Status code

Status Codes:
  - MS::kSuccess Progress value set.
  - MS::kFailure Progress has not been started.

Examples:
  progressWindowCmd.cpp.

int progress | ( | MStatus * | ReturnStatus = `NULL` | ) | `[static]`

Search for all occurrences

Get the progress value.

Parameters:

  [out] | ReturnStatus | Status code

Returns:
  Progress value. Returns -1 if query fails.

Examples:
  progressWindowCmd.cpp.

MStatus setTitle | ( | const MString & | title | ) | `[static]`

Search for all occurrences

Sets the title of the progress window.

Parameters:

  [in] | title | New title

Returns:
  Status code

Status Codes:
  - MS::kSuccess Title set.
  - MS::kFailure Progress has not been started.

Examples:
  progressWindowCmd.cpp.

MString title | ( | MStatus * | ReturnStatus = `NULL` | ) | `[static]`

Search for all occurrences

Get the window title.

Parameters:

  [out] | ReturnStatus | Status code

Returns:
  Window title string.

Examples:
  progressWindowCmd.cpp.

MStatus setProgressStatus | ( | const MString & | progressStatus | ) | `[static]`

Search for all occurrences

Sets the progress status string.

This string is shown above the progress bar and usually is of the form "Performing operation: <tt>XXX</tt>" where `XXX` is a numerical indication of the amount completed.

Parameters:

  [in] | progressStatus | New status string

Returns:
  Status code

Status Codes:
  - MS::kSuccess Progress status set.
  - MS::kFailure Progress has not been started.

Examples:
  progressWindowCmd.cpp.

MString progressStatus | ( | MStatus * | ReturnStatus = `NULL` | ) | `[static]`

Search for all occurrences

Get the progress status string.

Parameters:

  [out] | ReturnStatus | Status code

Returns:
  Progress status string.

MStatus setInterruptable | ( | const bool | value | ) | `[static]`

Search for all occurrences

Sets whether the progress window is interruptable.

An interruptable progress window can accept a signal from the user indicating that the operation should be cancelled.

isCancelled() is used to check if the user has tried to cancel an interruptable progress window.

Parameters:

  [in] | value | True if the progress window should be made interruptable.

Returns:
  Status code

Status Codes:
  - MS::kSuccess Interruptable value set.
  - MS::kFailure Progress has not been started.

Examples:
  progressWindowCmd.cpp.

bool isInterruptable | ( | MStatus * | ReturnStatus = `NULL` | ) | `[static]`

Search for all occurrences

Determine whether the progress window is interruptable.

Parameters:

  [out] | ReturnStatus | Status code

Returns:
  true when the progress window is interruptable

Examples:
  progressWindowCmd.cpp.

bool isCancelled | ( | MStatus * | ReturnStatus = `NULL` | ) | `[static]`

Search for all occurrences

Determine whether the user has tried to cancel an interruptable progress window.

Parameters:

  [out] | ReturnStatus | Status code

Returns:
  true when user has tried to cancel progress. If the progress window is not interruptable, this method returns false.

Examples:
  progressWindowCmd.cpp.

const char * className | ( |  | ) | `[static]`

Search for all occurrences

Returns the name of this class.

Returns:
  The name of this class.

MProgressWindow MProgressWindow MProgressWindow MProgressWindow MProgressWindow MProgressWindow MProgressWindow MProgressWindow MProgressWindow MProgressWindow
MProgressWindow MProgressWindow MProgressWindow MProgressWindow MProgressWindow MProgressWindow MProgressWindow MProgressWindow MProgressWindow MProgressWindow