libui-ng
A portable GUI library for C
uiSpinbox Struct Reference

A control to display and modify integer values via a text field or +/- buttons. More...

#include <ui.h>

Inheritance diagram for uiSpinbox:
uiControl

Public Member Functions

int uiSpinboxValue (uiSpinbox *s)
 Returns the spinbox value. More...
 
void uiSpinboxSetValue (uiSpinbox *s, int value)
 Sets the spinbox value. More...
 
void uiSpinboxOnChanged (uiSpinbox *s, void(*f)(uiSpinbox *sender, void *senderData), void *data)
 Registers a callback for when the spinbox value is changed by the user. More...
 
uiSpinboxuiNewSpinbox (int min, int max)
 Creates a new spinbox. More...
 
- Public Member Functions inherited from uiControl
void uiControlDestroy (uiControl *c)
 Dispose and free all allocated resources. More...
 
uintptr_t uiControlHandle (uiControl *c)
 Returns the control's OS-level handle. More...
 
uiControluiControlParent (uiControl *c)
 Returns the parent control. More...
 
void uiControlSetParent (uiControl *c, uiControl *parent)
 Sets the control's parent. More...
 
int uiControlToplevel (uiControl *c)
 Returns whether or not the control is a top level control. More...
 
int uiControlVisible (uiControl *c)
 Returns whether or not the control is visible. More...
 
void uiControlShow (uiControl *c)
 Shows the control. More...
 
void uiControlHide (uiControl *c)
 Hides the control. More...
 
int uiControlEnabled (uiControl *c)
 Returns whether or not the control is enabled. More...
 
void uiControlEnable (uiControl *c)
 Enables the control. More...
 
void uiControlDisable (uiControl *c)
 Disables the control. More...
 
uiControluiAllocControl (size_t n, uint32_t OSsig, uint32_t typesig, const char *typenamestr)
 Allocates a uiControl. More...
 
void uiFreeControl (uiControl *c)
 Frees the memory associated with the control reference. More...
 
void uiControlVerifySetParent (uiControl *c, uiControl *parent)
 Makes sure the control's parent can be set to parent. More...
 
int uiControlEnabledToUser (uiControl *c)
 Returns whether or not the control can be interacted with by the user. More...
 

Additional Inherited Members

- Public Attributes inherited from uiControl
uint32_t Signature
 
uint32_t OSSignature
 
uint32_t TypeSignature
 
void(* Destroy )(uiControl *)
 
uintptr_t(* Handle )(uiControl *)
 
uiControl *(* Parent )(uiControl *)
 
void(* SetParent )(uiControl *, uiControl *)
 
int(* Toplevel )(uiControl *)
 
int(* Visible )(uiControl *)
 
void(* Show )(uiControl *)
 
void(* Hide )(uiControl *)
 
int(* Enabled )(uiControl *)
 
void(* Enable )(uiControl *)
 
void(* Disable )(uiControl *)
 

Detailed Description

A control to display and modify integer values via a text field or +/- buttons.

This is a convenient control for having the user enter integer values. Values are guaranteed to be within the specified range.

The + button increases the held value by 1.
The - button decreased the held value by 1.

Entering a value out of range will clamp to the nearest value in range.

Member Function Documentation

◆ uiNewSpinbox()

uiSpinbox * uiNewSpinbox ( int  min,
int  max 
)

Creates a new spinbox.

The initial spinbox value equals the minimum value.

In the current implementation min and max are swapped if min>max. This may change in the future though. See TODO.

Parameters
minMinimum value.
maxMaximum value.
Returns
A new uiSpinbox instance.
Todo:
complain or disallow min>max?

◆ uiSpinboxOnChanged()

void uiSpinboxOnChanged ( uiSpinbox s,
void(*)(uiSpinbox *sender, void *senderData)  f,
void *  data 
)

Registers a callback for when the spinbox value is changed by the user.

Parameters
suiSpinbox instance.
fCallback function.
sender Back reference to the instance that triggered the callback.
senderData User data registered with the sender instance.
dataUser data to be passed to the callback.
Note
The callback is not triggered when calling uiSpinboxSetValue().
Only one callback can be registered at a time.

◆ uiSpinboxSetValue()

void uiSpinboxSetValue ( uiSpinbox s,
int  value 
)

Sets the spinbox value.

Parameters
suiSpinbox instance.
valueValue to set.
Note
Setting a value out of range will clamp to the nearest value in range.

◆ uiSpinboxValue()

int uiSpinboxValue ( uiSpinbox s)

Returns the spinbox value.

Parameters
suiSpinbox instance.
Returns
Spinbox value.

The documentation for this struct was generated from the following file: