PtProgress

A progress bar

Class hierarchy:

PtWidgetPtBasicPtGaugePtProgress

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

PhAB icon:

PtProgress button in PhAB

Public header:

<photon/PtProgress.h>

Description:

The PtProgress widget draws a progress bar and (optionally) the corresponding value.


PtProgress


Two styles of PtProgress bar.

The bar can be either a single bar, growing continuously as the value is changed, or it can consist of a number of divisions of equal size.

The following bits of the Pt_ARG_GAUGE_FLAGS resource defined by PtGauge are of particular interest to PtProgress:

Pt_GAUGE_INDETERMINATE
The current value is “unknown.”
Pt_GAUGE_LIVE
Alter the widget's appearance as time passes to indicate that although the value may not be changing, the application is still working.
Pt_GAUGE_INTERACTIVE
Let the user change the value of the gauge interactively at runtime (e.g. by dragging). When the value is changed in this manner, the widget's Pt_CB_GAUGE_VALUE_CHANGED callbacks are invoked.

New resources:

Resource C type Pt type Default
Pt_ARG_PROGRESS_BAR_COLOR PgColor_t Scalar Pg_RED
Pt_ARG_PROGRESS_DIVISIONS unsigned short Scalar 1
Pt_ARG_PROGRESS_GAP unsigned short Scalar 4
Pt_ARG_PROGRESS_SPACING unsigned short Scalar 0

Pt_ARG_PROGRESS_BAR_COLOR

C type Pt type Default
PgColor_t Scalar Pg_RED

The color of the progress bar. See PgColor_t in the Photon Library Reference.

Pt_ARG_PROGRESS_DIVISIONS

C type Pt type Default
unsigned short Scalar 1

The number of divisions (1 means continuous).

PtProgress doesn't use this resource, but any subclasses can.

Pt_ARG_PROGRESS_GAP

C type Pt type Default
unsigned short Scalar 4

The gap (in pixels) between the progress bar and the text (if the text isn't on top of the bar).

PtProgress doesn't use this resource, but any subclasses can.

Pt_ARG_PROGRESS_SPACING

C type Pt type Default
unsigned short Scalar 0

The spacing (in pixels) between divisions (see Pt_ARG_PROGRESS_DIVISIONS).

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
Pt_ARG_BITMAP_CURSOR PtWidget
Pt_ARG_BEVEL_COLOR PtBasic
Pt_ARG_BEVEL_CONTRAST PtBasic
Pt_ARG_COLOR PtBasic Pg_BLACK
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 Pg_GRAY
Pt_ARG_FILL_PATTERN PtBasic
Pt_ARG_FLAGS PtWidget
Pt_ARG_GAUGE_FLAGS PtGauge
Pt_ARG_GAUGE_FONT PtGauge
Pt_ARG_GAUGE_H_ALIGN PtGauge
Pt_ARG_GAUGE_V_ALIGN PtGauge
Pt_ARG_GAUGE_VALUE PtGauge
Pt_ARG_GAUGE_VALUE_PREFIX PtGauge
Pt_ARG_GAUGE_VALUE_SUFFIX PtGauge
Pt_ARG_GRID_LAYOUT_DATA PtWidget
Pt_ARG_HEIGHT PtWidget
Pt_ARG_HELP_TOPIC PtWidget
Pt_ARG_HIGHLIGHT_ROUNDNESS PtBasic
Pt_ARG_INLINE_COLOR PtBasic
Pt_ARG_LAYOUT_DATA PtWidget
Pt_ARG_LIGHT_BEVEL_COLOR PtBasic
Pt_ARG_LIGHT_FILL_COLOR PtBasic
Pt_ARG_MARGIN_HEIGHT PtBasic
Pt_ARG_MARGIN_WIDTH PtBasic
Pt_ARG_MAXIMUM PtGauge
Pt_ARG_MAXIMUM_DIM PtWidget
Pt_ARG_MINIMUM PtGauge
Pt_ARG_MINIMUM_DIM PtWidget
Pt_ARG_ORIENTATION PtGauge
Pt_ARG_OUTLINE_COLOR PtBasic
Pt_ARG_POINTER PtWidget
Pt_ARG_POS PtWidget
Pt_ARG_RESIZE_FLAGS PtWidget Pt_RESIZE_XY_AS_REQUIRED
Pt_ARG_ROW_LAYOUT_DATA 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

Convenience functions:

PtProgress defines the following convenience functions:


Note: These functions are useful only if you create subclasses of PtProgress.

PtProgressEntireSegment()
Get the entire segment of a progress bar
PtProgressFirstSegment()
Get the first segment of a progress bar
PtProgressNextSegment()
Get the next segment of a progress bar
PtProgressTextRect()
Get the text area of a progress bar