The IProgressIndicator class is a read-only version of the slider control. ISlider describes the slider control.
Handlers derived from the following classes handle events for IProgressIndicator objects:
Typically, a progress indicator with the following components displays the percentage of a task completed by filling in the indicator shaft as the task progresses.
If the ribbonStrip style is enabled, the progress indicator's shaft fills with color as the arm is moved.
By default, the Open Class Library creates a horizontal progress indicator and centers it in the window with its ticks and text above it. The arm starts from the left edge and the shaft fills with color as the arm moves to the right. You can also construct a progress indicator with the following characteristics:
There are restrictions for specifying the color of controls based on the platform and which style of control you use.
Native progress indicators (that is, progress indicators constructed without the pmCompatible style) do not display a visible slider arm. You must use the ribbonStrip style to indicate the arm position for native progress indicators.
Constructors & DestructorYou can construct and destruct objects of this class.
In addition, the Open Class Library provides a protected constructor used by the ISlider class during construction.
![]() |
public:
virtual ~IProgressIndicator()
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
![]() |
public:
IProgressIndicator(const IWindowHandle& handle)
You can construct objects of this class by specifying a window handle.
| Windows | OS/2 | AIX |
| Yes | Yes | No |
The constructors wrapping an existing progress indicator are not available in the AIX environment.
You can use this constructor to wrapper a native Windows trackbar. Open Class Library does not check whether the control being wrappered is read-only. The trackbar being wrappered should have the TBS_NOTHUMB style in order to ensure that the object constructed will wrapper a read-only control.
IProgressIndicator objects constructed from native Windows trackbars will set the initial number of ticks to two and the tick spacing to zero. Call setTicks after wrappering the control to initialize the scale(s).
public:
IProgressIndicator( unsigned long windowId, IWindow* parent, IWindow* owner, const IRectangle& initial, unsigned long scale1NumberOfTicks, unsigned long scale1TickSpacing, unsigned long scale2NumberOfTicks, unsigned long scale2TickSpacing = 0, const Style& style = defaultStyle ( ) )
You can construct objects of this class by
specifying the number of ticks and spacing for both scale 1 and scale 2.
Note:
| IInvalidParameter | The parent window pointer specified was invalid. You must specify a valid IWindow pointer as the parent. |
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
public:
IProgressIndicator(unsigned long windowId, IWindow* parent)
You can construct objects of this class by specifying a parent window and the ID of a progress indicator control.
| Windows | OS/2 | AIX |
| Yes | Yes | No |
You can use this constructor to wrapper a native Windows trackbar. Open Class Library does not check whether the control being wrappered is read-only. The trackbar being wrappered should have the TBS_NOTHUMB style in order to ensure that the object constructed will wrapper a read-only control.
IProgressIndicator objects constructed from native Windows trackbars will set the initial number of ticks to two and the tick spacing to zero. Call setTicks after wrappering the control to initialize the scale(s).
public:
IProgressIndicator( unsigned long windowId, IWindow* parent, IWindow* owner, const IRectangle& initial, unsigned long numberOfTicks, unsigned long tickSpacing = 0, const Style& style = defaultStyle ( ) )
You can construct objects of this class by using this primary constructor.
The tick spacing can also be changed dynamically by using the setTicks member function.
| IInvalidParameter | The parent window pointer specified was invalid. You must specify a valid IWindow pointer as the parent. |
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
protected:
IProgressIndicator()
Used by derived classes to construct objects of this class. This is the default constructor and accepts no parameters.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
AlignmentUse these members to query the alignment of the progress indicator object. The alignment can only be set in the constructor of the progress indicator object.
![]() |
public:
Alignment alignment() const
Returns the current alignment of this progress indicator object. The returned value is an enumerator provided by Alignment.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
![]() |
public:
bool isVertical() const
If the progress indicator is oriented vertically, true is returned. If it is oriented horizontally, false is returned.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
Arm OperationsUse these members to set and query attributes of the progress indicator arm.
![]() |
public:
virtual unsigned long armPixelOffset() const
Returns the offset, in pixels, of the arm from the home position.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
![]() |
public:
virtual unsigned long armRange() const
Returns the number of pixels over which the arm can move.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
![]() |
public:
virtual unsigned long armTickOffset() const
Returns the position of the arm as a tick number. Ticks are numbered starting at 0.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
![]() |
public:
virtual IProgressIndicator& moveArmToPixel( unsigned long armOffset )
Moves the arm to a pixel offset relative to the home position.
| IInvalidParameter | The arm offset is invalid. |
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
![]() |
public:
virtual IProgressIndicator& moveArmToTick( unsigned long tickNumber )
Moves the arm to a specified tick relative to the home position. Ticks are numbered starting at 0.
If the progress indicator window has no size and you specified tick spacing on the constructor, using this function can cause an exception.
| IInvalidParameter | The tick index is invalid. |
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
ColorsUse these members to query, set, and reset the colors of the progress indicator.
![]() |
public:
virtual IColor backgroundColor() const
Returns the background color value of the progress indicator area. If you have not set the color for the area, the default color is returned.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
This member is overridden in this derived class for specific operating system behavior.
![]() |
public:
virtual IColor foregroundColor() const
Returns the foreground color value of the progress indicator area. If you have not set the color for the area, the default color is returned.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
This member is overridden in this derived class for specific operating system behavior.
![]() |
public:
virtual IProgressIndicator& setBackgroundColor( const IColor& color )
Sets the background color to the specified color.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
This member is overridden in this derived class for specific operating system behavior.
![]() |
public:
virtual IProgressIndicator& setForegroundColor( const IColor& color )
Sets the color for the ticks and label text to the specified color.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
This member is overridden in this derived class for specific operating system behavior.
Sets only the color for label text for native Windows progress indicators (that is, progress indicators constructed without the pmCompatible style).
![]() |
protected:
virtual IProgressIndicator& setColor( unsigned long colorArea, const IColor& color )
Sets the colorArea to the indicated color.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
DrawingUse these members to query and change the handleDrawItem style of the progress indicator object. The handleDrawItem style specifies that events will be created during progress indicator drawing. You can process these events to implement your own drawing by deriving a handler from ISliderDrawHandler and attaching your handler to the progress indicator object.
![]() |
public:
virtual IProgressIndicator& disableDrawItem()
Sets the handleDrawItem style to off.
| Windows | OS/2 | AIX |
| Yes | Yes | Ignored |
The AIX release does not support the handleDrawItem style. Therefore, this member function has no effect in AIX.
Native Windows progress indicators (that is, progress indicators constructed without the pmCompatible style) do not support the handleDrawItem style. Therefore, this member function will have no effect for native progress indicators.
![]() |
public:
virtual IProgressIndicator& enableDrawItem( bool enableDrawItem = true )
Enables or disables the handleDrawItem style for the progress indicator.
| Windows | OS/2 | AIX |
| Yes | Yes | Ignored |
The AIX release does not support the handleDrawItem style. Therefore, this member function has no effect in AIX.
Native Windows progress indicators (that is, progress indicators constructed without the pmCompatible style) do not support the handleDrawItem style. Therefore, this member function will have no effect for native progress indicators.
![]() |
public:
bool isDrawItemEnabled() const
If the handleDrawItem style is set, true is returned. Otherwise, false is returned.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
The AIX release does not support the handleDrawItem style. Therefore, this member function has no effect in AIX.
Native Windows progress indicators (that is, progress indicators constructed without the pmCompatible style) do not support the handleDrawItem style. Therefore, this member function will always return false for native progress indicators.
Home PositionUse these members to query and modify the home position of the progress indicator object. The home position specifies from which side the progress indicator's tick marks are indexed. The home position is also used to indicate from which side of the progress indicator a ribbon strip, if specified, is attached.
![]() |
public:
HomePosition homePosition() const
Returns the current home position for this progress indicator object. The returned value is an enumerator provided by HomePosition.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
![]() |
public:
virtual IProgressIndicator& setHomePosition( HomePosition home = homeBottomLeft )
Sets the home position of the progress indicator.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
ImplementationThese members provide utilities used to implement this class.
![]() |
Several of the IProgressIndicator and ISlider constructors use one of the overloads of this function to create or wrapper the control.
protected:
void initialize(IWindowHandle handle)
Wrappers a Windows trackbar control.
| Windows | OS/2 | AIX |
| Yes | No | No |
protected:
void initialize( unsigned long windowId, IWindowHandle parent, IWindowHandle owner, unsigned long style, const IRectangle& initial, void* sliderData )
Creates a progress indicator or slider control.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
Layout SupportLayout support members supply information used by the canvas classes to provide dialog-like behavior.
![]() |
public:
virtual IProgressIndicator& setLayoutDistorted( unsigned long layoutAttributesOn, unsigned long layoutAttributesOff )
Indicates that changes have occurred in the window causing the layout of the window in a canvas to be updated.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
![]() |
protected:
virtual ISize calcMinimumSize() const
Returns an ISize indicating the minimum size of the progress indicator. ICanvas and its derived classes use this function.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
Notification MembersUse these members to identify notifications sent to observer objects.
![]() |
public:
virtual IProgressIndicator& enableNotification( bool enable = true )
Enables the progress indicator to send notifications to any observer objects.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
![]() |
public:
static INotificationId const armChangeId
Notification identifier provided to observers when the arm of an IProgressIndicator window is moved to a new location. IProgressIndicator provides the new arm position in the INotificationEvent::eventData field of the INotificationEvent.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
![]() |
public:
static INotificationId const scaleId
Notification identifier provided to observers when the scale style of an IProgressIndicator window changes. IProgressIndicator provides the new scale value in the INotificationEvent::eventData field of the INotificationEvent. This value is one of the predefined Scale enum values.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
Primary ScaleUse these members to query and modify the primary scale of the progress indicator object. The primary scale specifies from which scale the progress indicator is positioned.
The native Windows progress indicator (that is, a progress indicator constructed without the pmCompatible style) supports two scales; however, only the primary scale is visible.
![]() |
public:
Scale primaryScale() const
Returns the current primary scale of this progress indicator object. The returned value is an enumerator provided by Scale.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
![]() |
public:
virtual IProgressIndicator& setPrimaryScale( Scale primaryScale = scale1 )
Sets the primary scale of the progress indicator.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
Ribbon StripUse these members to query and change the ribbonStrip style of the progress indicator object. The ribbonStrip style specifies that the progress indicator's shaft fills with color between the arm and home position when the arm is moved.
![]() |
public:
virtual IProgressIndicator& disableRibbonStrip()
Sets the ribbonStrip style to off.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
![]() |
public:
virtual IProgressIndicator& enableRibbonStrip( bool enableRibbonStrip = true )
Enables or disables the ribbonStrip style for the progress indicator.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
![]() |
public:
bool isRibbonStripEnabled() const
If the ribbonStrip style is set, true is returned. Otherwise, false is returned.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
Shaft OperationsUse these members to set and query attributes of the progress indicator's shaft.
![]() |
public:
virtual IProgressIndicator& setShaftBreadth( unsigned long breadth )
Sets the shaft width in pixels for vertical progress indicators. Sets the shaft height in pixels for horizontal progress indicators.
| IInvalidParameter | The breadth is invalid. |
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
Native Windows progress indicators (that is, progress indicators constructed without the pmCompatible style) do not support shaft sizing. Therefore, this member function has no effect for native Windows progress indicators.
![]() |
public:
virtual IProgressIndicator& setShaftPosition( const IPoint& position )
Sets the position, in pixels, of the origin point of the shaft. The position of the shaft is relative to the origin of the progress indicator window.
| IInvalidParameter | The position is invalid. |
| Windows | OS/2 | AIX |
| Yes | Yes | Ignored |
The AIX release ignores this function.
Native Windows progress indicators (that is, progress indicators constructed without the pmCompatible style) do not support shaft positioning. Therefore, this member function has no effect for native Windows progress indicators.
![]() |
public:
virtual IPoint shaftPosition() const
Returns the origin point of the shaft relative to the origin corner of the progress indicator window.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
Native Windows progress indicators (that is, progress indicators constructed without the pmCompatible style) do not support shaft positioning. Therefore, this member function returns a default IPoint object for native Windows progress indicators.
![]() |
public:
virtual ISize shaftSize() const
Returns the size of the shaft in pixels.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
Native Windows progress indicators (that is, progress indicators constructed without the pmCompatible style) do not support shaft sizing. Therefore, this member function returns a default ISize object for native Windows progress indicators.
Snap SupportUse these members to query and change the snapToTickMark style of the progress indicator object. The snapToTickMark style specifies that the progress indicator's arm snaps to the nearest tick when moved between two ticks.
![]() |
public:
virtual IProgressIndicator& disableSnapToTick()
Sets the snapToTickMark style to off.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
![]() |
public:
virtual IProgressIndicator& enableSnapToTick( bool enableSnapToTick = true )
Enables or disables the snapToTickMark style for the progress indicator.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
![]() |
public:
bool isSnapToTickEnabled() const
If the snapToTickMark style is set, true is returned. Otherwise, false is returned.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
StylesThese style members provide a set of valid styles for this class. Use these members to query and set the progress indicator styles. You can use these styles with the styles in IWindow Styles.
![]() |
public:
virtual unsigned long convertToGUIStyle( const IBitFlag& style, bool extendedOnly = false ) const
Converts a style object into a value appropriate for the presentation system. The default action is to return the base GUI styles for the platform. Extended styles, those defined by the application and the Open Class Library, are returned if you set extendedOnly to true.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
![]() |
public:
static Style defaultStyle()
Returns the default style. The default style is classDefaultStyle unless you have changed the style using setDefaultStyle.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
![]() |
public:
bool isPMCompatible() const
Use this member to query whether the progress indicator was constructed with the pmCompatible style.
| Windows | OS/2 | AIX |
| Yes | Yes | Ignored |
![]() |
public:
static void setDefaultStyle(const Style& style)
Sets the default style for all subsequent progress indicators.
This member function is not thread safe. In a multithreaded application, it should only be called when a conflict is not possible. A conflict can arise if you set the default style on one thread at the same time that it is being queried on another. In this situation, the query would take place while the style is in an unknown state.
When you create a window class and do not specifically specify window styles in the constructor, the Open Class Library queries the default style. Therefore, the only safe place to call this member function is when no other application threads that create windows are active.
Another way to avoid a conflict in a multithreaded application is to specifically specify window styles on window construction, rather than calling this member function.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
![]() |
public:
static const Style alignBottom
Sets the progress indicator to be at the bottom of the window.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
![]() |
public:
static const Style alignCentered
Sets the progress indicator to be at the center of the window.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
![]() |
public:
static const Style alignLeft
Sets the progress indicator to be at the left side of the window.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
![]() |
public:
static const Style alignRight
Sets the progress indicator to be at the right side of the window.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
![]() |
public:
static const Style alignTop
Sets the progress indicator to be at the top of the window.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
![]() |
public:
static const Style border3D
Adds an etched 3D border to the control.
| Windows | OS/2 | AIX |
| Yes | Ignored | Ignored |
![]() |
public:
static const Style classDefaultStyle
Provides the original default style for this class, which is the following: IWindow::visible | IProgressIndicator::horizontal | IProgressIndicator::alignCentered | IProgressIndicator::homeLeft | IProgressIndicator::ribbonStrip | IProgressIndicator::primaryScale1.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
![]() |
public:
static const Style handleDrawItem
An event is dispatched to the control whenever the shaft, ribbon strip, arm, and background are to be drawn.
| Windows | OS/2 | AIX |
| Yes | Yes | Ignored |
AIX does not support the handleDrawItem style.
Native progress indicators (that is, progress indicators constructed without the pmCompatible style) do not support the handleDrawItem style.
![]() |
public:
static const Style homeBottom
Specifies that the progress indicator's arm and scale start at the bottom.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
![]() |
public:
static const Style homeLeft
Specifies that the progress indicator's arm and scale start at the left.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
![]() |
public:
static const Style homeRight
Specifies that the progress indicator's arm and scale start at the right.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
![]() |
public:
static const Style homeTop
Specifies that the progress indicator's arm and scale start at the top.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
![]() |
public:
static const Style horizontal
Specifies that the progress indicator is built horizontally.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
![]() |
public:
static const Style pmCompatible
Specifies that the progress indicator is compatible with the PM version of this control in both appearance and behavior.
| Windows | OS/2 | AIX |
| Yes | Yes | Ignored |
![]() |
public:
static const Style primaryScale1
Specifies that scale 1 is used for positioning the arm and is located above or to the right of the progress indicator.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
![]() |
public:
static const Style primaryScale2
Specifies that scale 2 is used for positioning the arm and is located below or to the left of the progress indicator.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
![]() |
public:
static const Style ribbonStrip
Specifies that the progress indicator's shaft fills with color between the arm and home position when the arm is moved. This style is used to improve the visual clarity of the current value.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
![]() |
public:
static const Style snapToTickMark
Specifies that the progress indicator's arm snaps to the nearest tick when moved between two ticks.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
![]() |
public:
static const Style vertical
Specifies that the progress indicator is built vertically.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
Tick OperationsUse these members to set and query attributes of tick marks.
![]() |
public:
unsigned long numberOfTicks(Scale scale) const
Returns the number of ticks for the specified scale.
| IAccessError | The operating system's request to query the progress indicator's control data has failed. |
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
![]() |
Sets the length of one or all ticks on the progress indicator scale.
Note:
public:
virtual IProgressIndicator& setTickLength( unsigned long tickNumber, unsigned long length )
| IInvalidParameter | Either the tick index or the tick length is invalid. |
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
The XmSeparator widget used for a tick mark is not managed until it has a nonzero length. Due to a Motif restriction, you cannot use a length of 1. If you specify a length of 1, this function uses a length of 2.
The first and last ticks in a native Windows progress indicator (that is, a progress indicator constructed without the pmCompatible style) are always visible. Therefore, this member function has no effect for the first and last ticks. All other ticks are made visible by setting a non-zero tick length for the tick, and they are removed by setting the tick length to zero.
public:
virtual IProgressIndicator& setTickLength( unsigned long length )
| IInvalidParameter | The tick length is invalid. |
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
The XmSeparator widget used for a tick mark is not managed until it has a nonzero length. Due to a Motif restriction, you cannot use a length of 1. If you specify a length of 1, this function uses a length of 2.
The first and last ticks in a native Windows progress indicator (that is, a progress indicator constructed without the pmCompatible style) are always visible. Therefore, this member function has no effect for the first and last ticks. All other ticks are made visible by setting a non-zero tick length and they are removed by setting the tick length to zero.
![]() |
Sets the following for one (or both) of the scales:
public:
virtual IProgressIndicator& setTicks( unsigned long scale1NumberOfTicks, unsigned long scale2NumberOfTicks, unsigned long scale1TickSpacing = 0, unsigned long scale2TickSpacing = 0 )
Sets the scale information for both scale1 and scale2.
| IAccessError | The operating system's request to set the progress indicator's control data has failed. |
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
public:
virtual IProgressIndicator& setTicks( Scale scale, unsigned long numberOfTicks, unsigned long tickSpacing = 0 )
Sets the scale information for either scale 1 or scale 2.
| IAccessError | The operating system's request to set the progress indicator's control data has failed. |
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
![]() |
Sets the text associated with the tick at the specified index. A tick need not be visible to have text associated with it.
public:
virtual IProgressIndicator& setTickText( unsigned long tickNumber, const IResourceId& text )
Set the tick text from a string resource.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
public:
virtual IProgressIndicator& setTickText( unsigned long tickNumber, const char* text )
Set the tick text from a character string.
| IInvalidParameter | Either the tick index or the tick text is invalid. |
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
![]() |
public:
unsigned long tickLength(unsigned long tickNumber) const
Returns the length, in pixels, of the tick at the specified index.
| IInvalidParameter | The tick index is invalid. |
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
The first and last ticks in a native Windows progress indicator (that is, a progress indicator constructed without the pmCompatible style) are always visible. The length returned for these ticks is 1. The tick length for all other ticks is either 1 if the tick is visible or 0 if the tick is not visible.
![]() |
public:
IPoint tickPosition(unsigned long tickNumber) const
Returns the pixel position of the tick at the specified index. Ticks are numbered starting with 0. The position returned is the end of the tick mark closest to the slider shaft.
| IInvalidParameter | The tick index is invalid. |
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
This member function is not supported for native Windows progress indicators (that is, progress indicators constructed without the pmCompatible style). A default IPoint object is returned for native Windows progress indicators.
![]() |
public:
unsigned long tickSpacing(Scale scale) const
Returns the number of pixels between ticks for the specified scale.
| IAccessError | The operating system's request to query the progress indicator's control data has failed. |
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
![]() |
public:
IString tickText(unsigned long tickNumber) const
Returns the text associated with the tick at the specified index. Ticks are numbered starting with 0.
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
![]() |
enum Alignment { topRight,
bottomLeft,
centered }Use these enumerators to specify where to place the progress indicator:
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
![]() |
enum HomePosition { homeTopRight,
homeBottomLeft }Use these enumerators to specify the home position of the progress indicator:
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
![]() |
enum Scale { scale1,
scale2 }Use these enumerators to specify which scale you are referring to:
| Windows | OS/2 | AIX |
| Yes | Yes | Yes |
virtual ~IControl()
virtual ~INotifier()
virtual INotifier& disableNotification() = 0
virtual INotifier& enableNotification( bool enable = true ) = 0
INotifier()
virtual bool isEnabledForNotification() const = 0
virtual INotifier& notifyObservers( const INotificationEvent& event ) = 0
virtual INotifier& notifyObserversAsync( const INotificationEvent& event )
const IThreadId& threadId() const
virtual ~IWindow()
IAccelTblHandle acceleratorHandle() const
IAcceleratorTable acceleratorTable() const
virtual IColor activeColor() const
IWindow& addOrReplaceAttribute( const IAttributeName& name, const IAttribute& attribute )
IWindow& adoptWindowData( const DataHandle& typeToken, IWindowData* windowData )
virtual IString asDebugInfo() const
virtual IString asString() const
IAttributeName attributeNameAt( const AttributeCursor& cursor ) const
const IAttribute* attributeWithName( const IAttributeName& name, ESearchType search = kWindowOnly ) const
virtual IWindow& capturePointer(bool capture = true)
ISize characterSize() const
IWindowHandle childAt(const ChildCursor& cursor) const
IWindow* childWindowAt(const ChildCursor& cursor) const
virtual IArgList convertToArgList( const IBitFlag& style ) const
static DataHandle dataHandleWithKey( const char* dataKeyName )
virtual IWindowHandle defaultEmphasisButton() const
static SiblingOrder defaultOrdering()
virtual IWindowHandle defaultPushButton() const
static IWindow* desktopWindow()
virtual IWindow& disable()
virtual IColor disabledBackgroundColor() const
virtual IColor disabledForegroundColor() const
virtual IWindow& disableGroup()
IWindow& disableMinimumSizeCaching()
virtual IWindow& disableNotification()
virtual IWindow& disableTabStop()
virtual IWindow& disableUpdate()
bool dispatchRemainingHandlers( IEvent& event, bool callDefProc = true )
virtual IWindow& enable(bool enableWindow = true)
virtual IWindow& enableGroup(bool enable = true)
IWindow& enableMinimumSizeCaching( bool enableCaching = true )
virtual IWindow& enableNotification(bool enable = true)
virtual IWindow& enableTabStop(bool enable = true)
virtual IWindow& enableUpdate(bool enableWindow = true)
static IWindow::ExceptionFn* exceptionFunction()
virtual IFont font() const
virtual IWindowHandle handle() const
virtual bool handleException( IException& dispatcherException, IEvent& exceptionEvent )
virtual IWindowHandle handleForChildCreation() const
static IWindowHandle handleWithParent( unsigned long identifier, const IWindowHandle& parent )
static IWindowHandle handleWithPointerCaptured()
virtual bool hasFocus() const
virtual bool hasPointerCaptured() const
unsigned long helpId() const
virtual IWindow& hide()
virtual IWindow& hideSourceEmphasis()
virtual IColor hiliteBackgroundColor() const
virtual IColor hiliteForegroundColor() const
virtual unsigned long id() const
virtual IColor inactiveColor() const
virtual IRectangle invalidatedRect() const
virtual IRegionHandle invalidatedRegion() const
bool isAutoDeleteObject() const
bool isAutoDestroyWindow() const
bool isEnabled() const
virtual bool isEnabledForNotification() const
virtual bool isFrameWindow() const
virtual bool isGroup() const
bool isHandling(const EventMask& events) const
virtual bool isLayoutDistorted( unsigned long layoutAttribute ) const
bool isMinimumSizeCachingEnabled() const
bool isShowing() const
virtual bool isTabStop() const
bool isUpdateEnabled() const
virtual bool isValid() const
bool isVisible() const
static bool isWindowValid(const IWindow* window)
IDMItemProvider* itemProvider() const
IWindow(const IWindowHandle& handle)
IWindow(unsigned long identifier, IWindow* parent)
virtual IRectangle layoutAdjustment() const
static IPoint mapPoint( const IPoint& point, const IWindowHandle& from, const IWindowHandle& to )
virtual IWindowHandle matchForMnemonic( unsigned short character ) const
IMessageQueueHandle messageQueue() const
ISize minimumSize(bool windowCalculatedSize = false) const
virtual IPointerHandle mousePointer() const
static void movePointerTo(const IPoint& position)
virtual IWindow& moveSizeTo( const IRectangle& newSizeAndPosition )
virtual IWindow& moveTo(const IPoint& newPosition)
virtual IRectangle nativeRect() const
virtual INotifierAddress notifierAddress() const
virtual IWindow& notifyObservers( const INotificationEvent& event )
virtual IWindow& notifyObserversAsync( const INotificationEvent& event )
static IWindow* objectWindow()
virtual IWindow* owner() const
IWindow* parent() const
virtual ISize parentSize() const
static ISize parentSize(const IWindowHandle& windowHandle)
static IPoint pointerPosition()
virtual IPoint position() const
virtual IWindow& positionBehindSibling( const IWindowHandle& siblingWindow )
virtual IWindow& positionBehindSiblings()
virtual IWindow& positionOnSiblings()
virtual const IWindow& postEvent(const IEvent& event) const
virtual const IWindow& postEvent( EventType eventType, const IEventParameter1& parm1 = 0, const IEventParameter2& parm2 = 0 ) const
virtual const IWindow&
postEvent( unsigned long eventId,
const IEventParameter1& parm1 = 0,
const IEventParameter2& parm2 = 0 ) const
virtual IPresSpaceHandle presSpace() const
virtual IRectangle rect() const
virtual IWindow& refresh( const IRectangle& invalidRectangle, bool immediate = false )
virtual IWindow& refresh(RefreshType type = paintAll)
virtual IWindow& releasePointer()
virtual void releasePresSpace( const IPresSpaceHandle& presentationSpaceHandle ) const
IWindow& removeAllAttributes()
IWindow& removeAttribute(const IAttributeName& name)
virtual IWindow& resetActiveColor()
virtual IWindow& resetBackgroundColor()
virtual IWindow& resetDisabledBackgroundColor()
virtual IWindow& resetDisabledForegroundColor()
virtual IWindow& resetFont()
virtual IWindow& resetForegroundColor()
virtual IWindow& resetHiliteBackgroundColor()
virtual IWindow& resetHiliteForegroundColor()
virtual IWindow& resetInactiveColor()
IWindow& resetMinimumSize()
virtual IWindow& resetShadowColor()
virtual IEventResult sendEvent(const IEvent& event) const
virtual IEventResult sendEvent( unsigned long eventId, const IEventParameter1& parm1 = 0, const IEventParameter2& parm2 = 0 ) const
virtual IEventResult sendEvent( EventType eventType, const IEventParameter1& parm1 = 0, const IEventParameter2& parm2 = 0 ) const
IWindow& setAcceleratorHandle( const IAccelTblHandle& handle )
IWindow& setAcceleratorTable( const IAcceleratorTable* acceleratorTable )
virtual IWindow& setActiveColor(const IColor& color)
IWindow& setAutoDeleteObject(bool autoDelete = true)
IWindow& setAutoDestroyWindow(bool autoDestroy = false)
virtual IWindow& setBackgroundColor(const IColor& color)
static void setDefaultOrdering(SiblingOrder order)
virtual IWindow& setDisabledBackgroundColor( const IColor& color )
virtual IWindow& setDisabledForegroundColor( const IColor& color )
static IWindow::ExceptionFn* setExceptionFunction( IWindow::ExceptionFn* exceptionFunction )
virtual IWindow& setFocus()
virtual IWindow& setFont(const IFont& font)
virtual IWindow& setForegroundColor(const IColor& color)
IWindow& setHelpId(unsigned long helpTopicId)
virtual IWindow& setHiliteBackgroundColor( const IColor& color )
virtual IWindow& setHiliteForegroundColor( const IColor& color )
virtual IWindow& setId(unsigned long newIdentifier)
virtual IWindow& setInactiveColor(const IColor& color)
IWindow& setItemProvider(IDMItemProvider* dragProvider)
virtual IWindow&
setLayoutDistorted( unsigned long layoutAttributesOn,
unsigned long layoutAttributesOff )
IWindow& setMinimumSize(const ISize& size)
virtual IWindow& setMousePointer( const IPointerHandle& mousePointer )
virtual IWindow& setOwner(const IWindow* newOwner)
virtual IWindow& setParent(const IWindow* newParent)
virtual IWindow& setShadowColor(const IColor& color)
virtual IColor shadowColor() const
virtual IWindow& show(bool showWindow = true)
virtual IWindow& showSourceEmphasis(bool show = true)
virtual ISize size() const
virtual IWindow& sizeTo(const ISize& newSize)
IWindow& startHandling(const EventMask& events)
IWindow& stopHandling(const EventMask& events)
virtual IWindow& validateRect( const IRectangle& validatedRectangle )
virtual IWindow& validateRegion( const IRegionHandle& validatedRegion )
virtual IRectangle visibleRectangle() const
IWindowData* windowData(const DataHandle& typeToken) const
static IWindow* windowWithHandle( const IWindowHandle& windowHandle, bool allThreads = true )
static IWindow*
windowWithOwner( unsigned long identifier,
const IWindow* owner,
bool allThreads = true )
static IWindow*
windowWithParent( unsigned long identifier,
const IWindow* parent,
bool allThreads = true )
static INotificationId const activeColorId
static const EventMask allMouseMoves
static INotificationId const attributeAddReplaceId
static INotificationId const attributeRemoveId
static INotificationId const backgroundColorId
static INotificationId const borderColorId
static const Style clipChildren
static const Style clipSiblings
static const Style clipToParent
static INotificationId const commandId
static const Style disabled
static INotificationId const disabledBackgroundColorId
static INotificationId const disabledForegroundColorId
static INotificationId const enableId
static INotificationId const focusId
static INotificationId const fontId
static INotificationId const foregroundColorId
static const Style group
static INotificationId const hiliteBackgroundColorId
static INotificationId const hiliteForegroundColorId
static INotificationId const inactiveColorId
static const Style leftToRight
static const EventMask mouseEntersLeaves
static const Style noStyle
static INotificationId const positionId
static const Style rightToLeft
static const Style saveBits
static INotificationId const shadowColorId
static INotificationId const sizeId
static const EventMask someMouseMoves
static const Style synchPaint
static INotificationId const systemCommandId
static const Style tabStop
static const Style visible
static INotificationId const visibleId
static INotificationId const allChangesId
static INotificationId const deleteId
IWindow& addHandler(IHandler* newHandler)
virtual IWindow& addObserver( IObserver& observer, const IInterest& interest )
static void
addToWindowSet( IWindow* window,
const IWindowHandle& windowHandle )
IWindow& bindMessageQueue(bool bindToMessageQueue = true)
IColor color(unsigned long colorArea) const
IColor color( unsigned long colorArea, const IColor& defaultColor ) const
virtual IWindowHandle create( unsigned long id, const char* text, unsigned long style, const char* windowClass, const IWindowHandle& parent, const IWindowHandle& owner, const IRectangle& initRect, const void* ctlData, const void* presParams, IWindow::SiblingOrder ordering = defaultOrdering ( ), unsigned long extendedStyle = 0 )
virtual IWindowHandle create( unsigned long id, const char* text, const IBitFlag& style, const char* windowClass, const IWindow* parent, const IWindow* owner, const IRectangle& initRect, const void* ctlData, const void* presParams, IWindow::SiblingOrder ordering = defaultOrdering ( ) )
virtual IWindowHandle create( unsigned long id, const char* text, unsigned long style, IXmCreateFunction createFunction, const IWindowHandle& parent, const IWindowHandle& owner, const IRectangle& initRect, const void* callerArgList, unsigned int callerNumberArguments, IWindow::SiblingOrder ordering = defaultOrdering ( ), unsigned long extendedStyle = 0 )
virtual IWindowHandle create( unsigned long id, const char* text, const IBitFlag& style, IXmCreateFunction createFunction, const IWindow* parent, const IWindow* owner, const IRectangle& initRect, IWindow::SiblingOrder ordering = defaultOrdering ( ) )
IWindow& defaultProcedure(IEvent& event)
bool deleteIsInProcess() const
bool dispatch(IEvent& event)
virtual unsigned long extendedStyle() const
bool isBoundToMessageQueue() const
virtual bool isDragStarting(IEvent& event)
bool isPrimaryWindow() const
bool isUserWindowWordReserved() const
IWindow()
IWindowNotifyHandler* notificationHandler() const
virtual IWindow& notifyObservers( const INotificationId& notification )
IObserverList& observerList( const IInterest* interest = 0 ) const
virtual bool passEventToOwner(IEvent& event)
virtual IWindow& prepareForUse( const IWindowHandle& windowHandle )
virtual IWindow& removeAllObservers()
static void removeFromWindowSet(IWindow* window)
IWindow& removeHandler(IHandler* oldHandler)
virtual IWindow& removeObserver(IObserver& observer)
virtual IWindow& removeObserver( IObserver& observer, const IInterest& interest )
IWindow& reserveUserWindowWord(bool reserve = true)
virtual IWindow& resetColor(unsigned long colorArea)
ISize savedMinimumSize() const
IWindow& saveMinimumSize(const ISize& size)
virtual IWindow& setBidiSettings( const IBidiSettings& bidiSettings, bool childInherit, bool refresh )
virtual IWindow&
setColor( unsigned long colorArea,
const IColor& color )
virtual IWindow& setDefaultEmphasisButton( const IWindowHandle& defaultEmphasisButton, bool enable )
virtual IWindow& setDefaultPushButton( const IWindowHandle& defaultPushButton )
virtual IWindow& setExtendedStyle( unsigned long extendedStyle )
IWindow& setNotificationHandler( IWindowNotifyHandler* notifyHandler )
virtual IWindow& setStyle(unsigned long style)
IWindow& setWindowData(long index, unsigned long dataValue)
IWindow&
setWindowData( long index,
unsigned short dataValue )
IWindow&
startHandlingEventsFor( unsigned long identifier,
IWindow* parent )
IWindow& startHandlingEventsFor( const IWindowHandle& windowHandle )
virtual unsigned long style() const
IWindow& unbindMessageQueue()
unsigned long windowULong(long index) const
unsigned short windowUShort(long index) const
virtual INotifier& addObserver( IObserver& observer, const IInterest& interest )
virtual INotifier& notifyObservers( const INotificationId& id ) = 0
virtual IObserverList& observerList( const IInterest* anInterest = 0 ) const = 0
virtual INotifier& removeAllObservers() = 0
virtual INotifier& removeObserver( IObserver& observer, const IInterest& interest )
virtual INotifier& removeObserver(IObserver& observer) = 0
IControl()