The ISliderDrawHandler class draws slider and progress indicator control objects. You can draw the following:
To use this handler, you must create the slider or progress indicator with the handleDrawItem style specified, or you must set this style by using IProgressIndicator::enableDrawItem after the slider or progress indicator is created. See IProgressIndicator Styles for information about the handleDrawItem style and enableDrawItem for information about that function.
Create a handler derived from ISliderDrawHandler and attach it to a slider or progress indicator. You can do this by calling IHandler::handleEventsFor to pass the slider or progress indicator to the slider draw handler. See handleEventsFor for information about that function.
When the slider draw handler receives a slider draw event, it creates an IDrawItemEvent object and routes that object to the appropriate ISliderDrawHandler virtual function. Override these virtual functions to supply your own specialized processing of a slider draw event. See IDrawItemEvent for information about that class.
The return value from the virtual functions specifies whether the slider draw event should be passed on for additional processing, as follows:
Owner draw progress indicators and sliders are not supported in the AIX environment. This class is not available in that environment.
Owner draw progress indicators and sliders are only supported for IProgressIndicator::pmCompatible progress indicators and sliders in the Windows environment.
Constructors & DestructorYou can construct and destruct objects of this class.
![]() |
public:
virtual ~ISliderDrawHandler()
| Windows | OS/2 | AIX |
| Yes | Yes | No |
![]() |
public:
ISliderDrawHandler()
Used to construct objects of this class. This is the default constructor and accepts no parameters.
| Windows | OS/2 | AIX |
| Yes | Yes | No |
Event DispatchingEvent-dispatching members evaluate an event to determine if it is appropriate for this handler object to process it. If it is, it calls the virtual function used to process the event.
![]() |
protected:
virtual bool dispatchHandlerEvent(IEvent& event)
If a slider draw event is received, the appropriate virtual function is called.
| Windows | OS/2 | AIX |
| Yes | Yes | No |
In the Windows environment, only PM compatible progress indicators and sliders support the handleDrawItem style. This function will never be called for native Windows progress indicators and sliders.
Event ProcessingEvent-processing members must be supplied to process slider drawing events You can override these virtual members in a derived class.
![]() |
protected:
virtual bool drawArm(IDrawItemEvent& event)
Draws the slider's arm. The application overrides this function to handle the drawing.
| Windows | OS/2 | AIX |
| Yes | Yes | No |
In the Windows environment, only PM compatible progress indicators and sliders support the handleDrawItem style. This function will never be called for native Windows progress indicators and sliders.
![]() |
protected:
virtual bool drawBackground(IDrawItemEvent& event)
Draws the slider's background. The application overrides this function to handle the drawing.
| Windows | OS/2 | AIX |
| Yes | Yes | No |
In the Windows environment, only PM compatible progress indicators and sliders support the handleDrawItem style. This function will never be called for native Windows progress indicators and sliders.
![]() |
protected:
virtual bool drawRibbonStrip(IDrawItemEvent& event)
Draws the slider's ribbon strip. The application overrides this function to handle the drawing.
| Windows | OS/2 | AIX |
| Yes | Yes | No |
In the Windows environment, only PM compatible progress indicators and sliders support the handleDrawItem style. This function will never be called for native Windows progress indicators and sliders.
![]() |
protected:
virtual bool drawShaft(IDrawItemEvent& event)
Draws the slider's shaft. The application overrides this function to handle the drawing.
| Windows | OS/2 | AIX |
| Yes | Yes | No |
In the Windows environment, only PM compatible progress indicators and sliders support the handleDrawItem style. This function will never be called for native Windows progress indicators and sliders.
virtual ~IHandler()
virtual IString asDebugInfo() const
virtual IString asString() const
virtual IHandler& disable()
virtual IHandler& enable(bool enable = true)
virtual IHandler& handleEventsFor(IWindow* window)
IHandler()
bool isEnabled() const
virtual IHandler& stopHandlingEventsFor(IWindow* window)
virtual IEventResult defaultProcedure(IEvent& event)
virtual bool dispatchHandlerEvent(IEvent& event) = 0