# wxRadioButton

###
Module

wxRadioButton

###
Module Summary

Functions for wxRadioButton class

###
Description

A radio button item is a button which usually denotes one of several mutually exclusive options. It has a text label next to a (usually) round button.

You can create a group of mutually-exclusive radio buttons by specifying wxRB_GROUP for the first in the group. The group ends when another radio button group is created, or there are no more radio buttons.

Styles

This class supports the following styles:

See: Overview events, wxRadioBox, wxCheckBox

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

wxWidgets docs: wxRadioButton

###
Events

Event types emitted from this class: command_radiobutton_selected

###
Data Types

####
wxRadioButton() = wx:wx_object()

###
Exports

####
new() -> wxRadioButton()

Default constructor.

See: create/5, wxValidator (not implemented in wx)

####
new(Parent, Id, Label) -> wxRadioButton()

### Types

Parent = wxWindow:wxWindow()
Id = integer()
Label = unicode:chardata()

####
new(Parent, Id, Label, Options :: [Option]) -> wxRadioButton()

### Types

Parent = wxWindow:wxWindow()
Id = integer()
Label = unicode:chardata()
Option =
{pos, {X :: integer(), Y :: integer()}} |
{size, {W :: integer(), H :: integer()}} |
{style, integer()} |
{validator, wx:wx_object()}

Constructor, creating and showing a radio button.

See: create/5, wxValidator (not implemented in wx)

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

Destructor, destroying the radio button item.

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

### Types

This = wxRadioButton()
Parent = wxWindow:wxWindow()
Id = integer()
Label = unicode:chardata()

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

### Types

This = wxRadioButton()
Parent = wxWindow:wxWindow()
Id = integer()
Label = unicode:chardata()
Option =
{pos, {X :: integer(), Y :: integer()}} |
{size, {W :: integer(), H :: integer()}} |
{style, integer()} |
{validator, wx:wx_object()}

Creates the choice for two-step construction.

See new/4 for further details.

####
getValue(This) -> boolean()

### Types

This = wxRadioButton()

Returns true if the radio button is checked, false otherwise.

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

### Types

This = wxRadioButton()
Value = boolean()

Sets the radio button to checked or unchecked status.

This does not cause a wxEVT_RADIOBUTTON event to get emitted.

If the radio button belongs to a radio group exactly one button in the group may be checked and so this method can be only called with value set to true. To uncheck a radio button in a group you must check another button in the same group.

Note: Under MSW, the focused radio button is always selected, i.e. its value is true. And, conversely, calling SetValue(true) will also set focus to the radio button if the focus had previously been on another radio button in the same group - as otherwise setting it on wouldn't work.