# wxSpinButton

###
Module

wxSpinButton

###
Module Summary

Functions for wxSpinButton class

###
Description

A wxSpinButton has two small up and down (or left and right) arrow buttons.

It is often used next to a text control for increment and decrementing a value. Portable programs should try to use wxSpinCtrl instead as wxSpinButton is not implemented for all platforms but wxSpinCtrl is as it degenerates to a simple wxTextCtrl on such platforms.

Note: the range supported by this control (and wxSpinCtrl) depends on the platform but is at least -0x8000 to 0x7fff. Under GTK and Win32 with sufficiently new version of comctrl32.dll (at least 4.71 is required, 5.80 is recommended) the full 32 bit range is supported.

Styles

This class supports the following styles:

See: wxSpinCtrl

This class is derived (and can use functions) from: wxControl wxWindow wxEvtHandler

wxWidgets docs: wxSpinButton

###
Events

Event types emitted from this class: spin, spin_up, spin_down

###
Data Types

####
wxSpinButton() = wx:wx_object()

###
Exports

####
new() -> wxSpinButton()

Default constructor.

####
new(Parent) -> wxSpinButton()

### Types

Parent = wxWindow:wxWindow()

####
new(Parent, Options :: [Option]) -> wxSpinButton()

### Types

Parent = wxWindow:wxWindow()
Option =
{id, integer()} |
{pos, {X :: integer(), Y :: integer()}} |
{size, {W :: integer(), H :: integer()}} |
{style, integer()}

Constructor, creating and showing a spin button.

See: create/3

####
destroy(This :: wxSpinButton()) -> ok

Destructor, destroys the spin button control.

####
create(This, Parent) -> boolean()

### Types

This = wxSpinButton()
Parent = wxWindow:wxWindow()

####
create(This, Parent, Options :: [Option]) -> boolean()

### Types

This = wxSpinButton()
Parent = wxWindow:wxWindow()
Option =
{id, integer()} |
{pos, {X :: integer(), Y :: integer()}} |
{size, {W :: integer(), H :: integer()}} |
{style, integer()}

Scrollbar creation function called by the spin button constructor.

See new/2 for details.

####
getMax(This) -> integer()

### Types

This = wxSpinButton()

Returns the maximum permissible value.

See: setRange/3

####
getMin(This) -> integer()

### Types

This = wxSpinButton()

Returns the minimum permissible value.

See: setRange/3

####
getValue(This) -> integer()

### Types

This = wxSpinButton()

Returns the current spin button value.

See: setValue/2

####
setRange(This, Min, Max) -> ok

### Types

This = wxSpinButton()
Min = Max = integer()

Sets the range of the spin button.

In portable code, min should be less than or equal to max. In wxMSW it is possible to specify minimum greater than maximum and the native control supports the same range as if they were reversed, but swaps the meaning of up and down arrows, however this dubious feature is not supported on other platforms.

See: getMin/1, getMax/1

####
setValue(This, Value) -> ok

### Types

This = wxSpinButton()
Value = integer()

Sets the value of the spin button.