5 Struct _N_GUI_SB_SKIN
gullradriel edited this page 2026-10-09 00:55:18 +02:00

_N_GUI_SB_SKIN

The look of one scrollbar: the style values a bar's paint reads, gathered so that the painter does not have to know which set of them it was handed. More...

Public Attributes

Name
int track_round
draw the track as a pill, inset by track_inset at both ends and with no divider: what a frameless window in a round GUI asks for, whose square track ran through the window's rounded corners.
float track_inset
see track_round
ALLEGRO_COLOR track
track fill
float thumb_padding
inset of the thumb across the bar
ALLEGRO_COLOR thumb
thumb fill at rest, before any state lift
float outline_thickness
thickness of that outline; zero for none
ALLEGRO_COLOR outline
outline drawn round the thumb in every state, on top of which the state outline still applies.
float corner_r
thumb corner radius; zero draws square corners

Detailed Description

struct _N_GUI_SB_SKIN;

The look of one scrollbar: the style values a bar's paint reads, gathered so that the painter does not have to know which set of them it was handed.

The toolkit has two sets - the scrollbar_* values every widget's bar uses, and the global_scrollbar_* ones the display's own bars use - and had two copies of the drawing to go with them.

Public Attributes Documentation

variable track_round

int track_round;

draw the track as a pill, inset by track_inset at both ends and with no divider: what a frameless window in a round GUI asks for, whose square track ran through the window's rounded corners.

Purely visual: the thumb geometry and the hit area are the bar's, unchanged.

variable track_inset

float track_inset;

see track_round

variable track

ALLEGRO_COLOR track;

track fill

variable thumb_padding

float thumb_padding;

inset of the thumb across the bar

variable thumb

ALLEGRO_COLOR thumb;

thumb fill at rest, before any state lift

variable outline_thickness

float outline_thickness;

thickness of that outline; zero for none

variable outline

ALLEGRO_COLOR outline;

outline drawn round the thumb in every state, on top of which the state outline still applies.

The display's own bars float over an application's canvas rather than sitting against a panel, and have always had one of these; a widget's bar has not.

variable corner_r

float corner_r;

thumb corner radius; zero draws square corners