[Previous] [Contents] [Index] [Next]

PtSlider

A widget for choosing a value from a range

Class hierarchy:

PtWidget --> PtBasic --> PtGauge --> PtSlider

For more information, see the diagram of the widget hierarchy.

PhAB icon:

PtSlider button in PhAB

Public header:

<photon/PtSlider.h>

Description:

A PtSlider widget lets you choose numerical values within a specified range from minimum to maximum.


PtSlider


A PtSlider widget.


A slider consists of a narrow trough (representing the total range), a movable handle, and optional tick marks. The handle -- which appears on top of the trough -- represents the current position within the range. The size of the handle is determined by Pt_ARG_SLIDER_HANDLE_WIDTH or by the size of Pt_ARG_SLIDER_IMAGE.

Mouse actions

When you press the mouse button, the result depends on the location of the pointer.

If the pointer is: Then:
In the trough The handle moves up or down one slider multiple
On the handle A drag is started

If you hold down the Ctrl key and click in the trough, the handle jumps to the position of the pointer.

Keyboard actions

If you press: The handle moves:
/\ Up one increment
\/ Down one increment
--> Right one increment
<-- Left one increment
Pg Up Up/right one "page"
Pg Down Down/left one "page"
Home To the minimum value
End To the maximum value

where:

New resources:

Resource C type Pt type Default
Pt_ARG_SLIDER_FLAGS short int Flag 0
Pt_ARG_SLIDER_HANDLE_COLOR PgColor_t Scalar PgGrey(217)
Pt_ARG_SLIDER_HANDLE_WIDTH short int Scalar 15
Pt_ARG_SLIDER_IMAGE void * Alloc NULL
Pt_ARG_SLIDER_INCREMENT ushort_t Scalar 1
Pt_ARG_SLIDER_MULTIPLE ushort_t Scalar 0
Pt_ARG_SLIDER_THICKNESS ushort_t Scalar 15
Pt_ARG_SLIDER_TICK_MAJOR_DIV short int Scalar 10
Pt_ARG_SLIDER_TICK_MAJOR_LEN short int Scalar 10
Pt_ARG_SLIDER_TICK_MINOR_DIV short int Scalar 0
Pt_ARG_SLIDER_TICK_MINOR_LEN short int Scalar 0
Pt_CB_SLIDER_MOVE PtCallback_t * Link NULL

Pt_ARG_SLIDER_FLAGS

C type Pt type Default
short int Flag 0

Valid flags:

Pt_SLIDER_IMAGE
The slider handle is the image specified by Pt_ARG_SLIDER_IMAGE.

Pt_ARG_SLIDER_HANDLE_COLOR

C type Pt type Default
PgColor_t Scalar PgGrey(217)

The color of the slider handle. See PgColor_t in the Photon Library Reference.

Pt_ARG_SLIDER_HANDLE_WIDTH

C type Pt type Default
short int Scalar 15

The width of the slider handle.

Pt_ARG_SLIDER_IMAGE

C type Pt type Default
void * Alloc NULL

The image that's displayed as the handle if Pt_SLIDER_IMAGE is set in Pt_ARG_SLIDER_FLAGS.

Pt_ARG_SLIDER_INCREMENT

C type Pt type Default
ushort_t Scalar 1

The slider increment when you press the cursor keys.

Pt_ARG_SLIDER_MULTIPLE

C type Pt type Default
ushort_t Scalar 0

The slider increment when you click the pointer button in the trough, or you press Pg Up or Pg Down.

Pt_ARG_SLIDER_THICKNESS

C type Pt type Default
ushort_t Scalar 15

The thickness of the slider handle, in pixels.

Pt_ARG_SLIDER_TICK_MAJOR_DIV

C type Pt type Default
short int Scalar 10

The number of major divisions.

Pt_ARG_SLIDER_TICK_MAJOR_LEN

C type Pt type Default
short int Scalar 10

The length of the major ticks, in pixels.

Pt_ARG_SLIDER_TICK_MINOR_DIV

C type Pt type Default
short int Scalar 0

The number of minor divisions per major division.

Pt_ARG_SLIDER_TICK_MINOR_LEN

C type Pt type Default
short int Scalar 0

The length of the minor ticks, in pixels.

Pt_CB_SLIDER_MOVE

C type Pt type Default
PtCallback_t * Link NULL

A list of PtCallback_t structures that define the callbacks that the slider invokes when the handle position changes.

If you've set the Pt_CALLBACKS_ACTIVE bit set in the widget's Pt_ARG_FLAGS resource, these callbacks are also invoked when your application changes the handle position by calling PtSetResource() or PtSetResources().

Each callback is passed a PtCallbackInfo_t structure that contains at least the following members:

reason
Pt_CB_SLIDER_MOVE
reason_subtype
One of the following:
event
A pointer to a PhEvent_t structure that describes the event that caused the callback to be invoked, or NULL if there's no event.
cbdata
A pointer to a PtSliderCallback_t structure that contains at least the following member:
int position;
A value corresponding to the slider handles location.

These callbacks should return Pt_CONTINUE.

Inherited resources:

If the widget modifies an inherited resource, the "Default override" column indicates the new value. This modification affects any subclasses of the widget.

Resource Inherited from Default override
Pt_ARG_ANCHOR_FLAGS PtWidget
Pt_ARG_ANCHOR_OFFSETS PtWidget
Pt_ARG_AREA PtWidget
Pt_ARG_BANDWIDTH_THRESHOLD PtBasic Not used by this class.
Pt_ARG_BASIC_FLAGS PtBasic
Pt_ARG_BEVEL_WIDTH PtWidget 1
Pt_ARG_BITMAP_CURSOR PtWidget
Pt_ARG_BEVEL_COLOR PtBasic
Pt_ARG_BEVEL_CONTRAST PtBasic
Pt_ARG_COLOR PtBasic Pg_GRAY
Pt_ARG_CONTRAST PtBasic
Pt_ARG_CURSOR_COLOR PtWidget
Pt_ARG_CURSOR_TYPE PtWidget
Pt_ARG_DARK_BEVEL_COLOR PtBasic
Pt_ARG_DARK_FILL_COLOR PtBasic
Pt_ARG_DATA PtWidget
Pt_ARG_DIM PtWidget
Pt_ARG_EFLAGS PtWidget
Pt_ARG_EXTENT PtWidget
Pt_ARG_FILL_COLOR PtBasic
Pt_ARG_FILL_PATTERN PtBasic
Pt_ARG_FLAGS PtWidget |=Pt_GETS_FOCUS
Pt_ARG_GAUGE_FLAGS PtGauge |= Pt_GAUGE_MAX_ON_TOP
Pt_ARG_GAUGE_FONT PtGauge
Pt_ARG_GAUGE_H_ALIGN PtGauge Not used by this class.
Pt_ARG_GAUGE_V_ALIGN PtGauge Not used by this class.
Pt_ARG_GAUGE_VALUE PtGauge
Pt_ARG_GAUGE_VALUE_PREFIX PtGauge Not used by this class.
Pt_ARG_GAUGE_VALUE_SUFFIX PtGauge Not used by this class.
Pt_ARG_HEIGHT PtWidget
Pt_ARG_HELP_TOPIC PtWidget
Pt_ARG_HIGHLIGHT_ROUNDNESS PtBasic
Pt_ARG_INLINE_COLOR PtBasic
Pt_ARG_LIGHT_BEVEL_COLOR PtBasic
Pt_ARG_LIGHT_FILL_COLOR PtBasic
Pt_ARG_MARGIN_HEIGHT PtBasic 0
Pt_ARG_MARGIN_WIDTH PtBasic 0
Pt_ARG_MAXIMUM PtGauge
Pt_ARG_MAXIMUM_DIM PtWidget
Pt_ARG_MINIMUM PtGauge
Pt_ARG_MINIMUM_DIM PtWidget
Pt_ARG_ORIENTATION PtGauge Pt_HORIZONTAL
Pt_ARG_OUTLINE_COLOR PtBasic
Pt_ARG_POINTER PtWidget
Pt_ARG_POS PtWidget
Pt_ARG_RESIZE_FLAGS PtWidget
Pt_ARG_STYLE PtBasic
Pt_ARG_TRANS_PATTERN PtBasic
Pt_ARG_USER_DATA PtWidget
Pt_ARG_WIDTH PtWidget
Pt_CB_ACTIVATE PtBasic
Pt_CB_ARM PtBasic
Pt_CB_BLOCKED PtWidget
Pt_CB_DESTROYED PtWidget
Pt_CB_DISARM PtBasic
Pt_CB_DND PtWidget
Pt_CB_FILTER PtWidget
Pt_CB_GOT_FOCUS PtBasic
Pt_CB_HOTKEY PtWidget
Pt_CB_IS_DESTROYED PtWidget
Pt_CB_LOST_FOCUS PtBasic
Pt_CB_MENU PtBasic
Pt_CB_OUTBOUND PtWidget
Pt_CB_RAW PtWidget
Pt_CB_REALIZED PtWidget
Pt_CB_REPEAT PtBasic
Pt_CB_UNREALIZED PtWidget

[Previous] [Contents] [Index] [Next]