2008-03-08 13:52:38 +00:00
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
|
|
// Name: radiobut.h
|
2008-03-10 15:24:38 +00:00
|
|
|
// Purpose: interface of wxRadioButton
|
2008-03-08 13:52:38 +00:00
|
|
|
// Author: wxWidgets team
|
|
|
|
// RCS-ID: $Id$
|
|
|
|
// Licence: wxWindows license
|
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
|
|
|
|
|
|
/**
|
|
|
|
@class wxRadioButton
|
|
|
|
@wxheader{radiobut.h}
|
2008-03-08 14:43:31 +00:00
|
|
|
|
2008-03-08 13:52:38 +00:00
|
|
|
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.
|
2008-03-08 14:43:31 +00:00
|
|
|
|
2008-03-08 13:52:38 +00:00
|
|
|
You can create a group of mutually-exclusive radio buttons by specifying @c
|
|
|
|
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.
|
2008-03-08 14:43:31 +00:00
|
|
|
|
2008-03-08 13:52:38 +00:00
|
|
|
@beginStyleTable
|
|
|
|
@style{wxRB_GROUP}:
|
|
|
|
Marks the beginning of a new group of radio buttons.
|
|
|
|
@style{wxRB_SINGLE}:
|
|
|
|
In some circumstances, radio buttons that are not consecutive
|
|
|
|
siblings trigger a hang bug in Windows (only). If this happens, add
|
|
|
|
this style to mark the button as not belonging to a group, and
|
|
|
|
implement the mutually-exclusive group behaviour yourself.
|
|
|
|
@style{wxRB_USE_CHECKBOX}:
|
|
|
|
Use a checkbox button instead of radio button (currently supported
|
|
|
|
only on PalmOS).
|
|
|
|
@endStyleTable
|
2008-03-08 14:43:31 +00:00
|
|
|
|
2008-03-08 13:52:38 +00:00
|
|
|
@beginEventTable
|
2008-03-09 12:33:59 +00:00
|
|
|
@event{EVT_RADIOBUTTON(id, func)}:
|
2008-03-08 13:52:38 +00:00
|
|
|
Process a wxEVT_COMMAND_RADIOBUTTON_SELECTED event, when the
|
|
|
|
radiobutton is clicked.
|
|
|
|
@endEventTable
|
2008-03-08 14:43:31 +00:00
|
|
|
|
2008-03-08 13:52:38 +00:00
|
|
|
@library{wxcore}
|
|
|
|
@category{ctrl}
|
|
|
|
@appearance{radiobutton.png}
|
2008-03-08 14:43:31 +00:00
|
|
|
|
2008-03-10 15:24:38 +00:00
|
|
|
@see @ref overview_eventhandlingoverview, wxRadioBox, wxCheckBox
|
2008-03-08 13:52:38 +00:00
|
|
|
*/
|
|
|
|
class wxRadioButton : public wxControl
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
//@{
|
|
|
|
/**
|
|
|
|
Constructor, creating and showing a radio button.
|
|
|
|
|
2008-03-08 14:43:31 +00:00
|
|
|
@param parent
|
2008-03-09 12:33:59 +00:00
|
|
|
Parent window. Must not be @NULL.
|
2008-03-08 14:43:31 +00:00
|
|
|
@param id
|
2008-03-09 12:33:59 +00:00
|
|
|
Window identifier. The value wxID_ANY indicates a default value.
|
2008-03-08 14:43:31 +00:00
|
|
|
@param label
|
2008-03-09 12:33:59 +00:00
|
|
|
Label for the radio button.
|
2008-03-08 14:43:31 +00:00
|
|
|
@param pos
|
2008-03-09 12:33:59 +00:00
|
|
|
Window position. If wxDefaultPosition is specified then a default
|
|
|
|
position is chosen.
|
2008-03-08 14:43:31 +00:00
|
|
|
@param size
|
2008-03-09 12:33:59 +00:00
|
|
|
Window size. If wxDefaultSize is specified then a default size
|
|
|
|
is chosen.
|
2008-03-08 14:43:31 +00:00
|
|
|
@param style
|
2008-03-09 12:33:59 +00:00
|
|
|
Window style. See wxRadioButton.
|
2008-03-08 14:43:31 +00:00
|
|
|
@param validator
|
2008-03-09 12:33:59 +00:00
|
|
|
Window validator.
|
2008-03-08 14:43:31 +00:00
|
|
|
@param name
|
2008-03-09 12:33:59 +00:00
|
|
|
Window name.
|
2008-03-08 13:52:38 +00:00
|
|
|
|
2008-03-09 12:33:59 +00:00
|
|
|
@see Create(), wxValidator
|
2008-03-08 13:52:38 +00:00
|
|
|
*/
|
|
|
|
wxRadioButton();
|
2008-03-08 14:43:31 +00:00
|
|
|
wxRadioButton(wxWindow* parent, wxWindowID id,
|
|
|
|
const wxString& label,
|
|
|
|
const wxPoint& pos = wxDefaultPosition,
|
|
|
|
const wxSize& size = wxDefaultSize,
|
|
|
|
long style = 0,
|
|
|
|
const wxValidator& validator = wxDefaultValidator,
|
|
|
|
const wxString& name = "radioButton");
|
2008-03-08 13:52:38 +00:00
|
|
|
//@}
|
|
|
|
|
|
|
|
/**
|
|
|
|
Destructor, destroying the radio button item.
|
|
|
|
*/
|
|
|
|
~wxRadioButton();
|
|
|
|
|
|
|
|
/**
|
|
|
|
Creates the choice for two-step construction. See wxRadioButton() for
|
|
|
|
further details.
|
|
|
|
*/
|
|
|
|
bool Create(wxWindow* parent, wxWindowID id,
|
|
|
|
const wxString& label,
|
|
|
|
const wxPoint& pos = wxDefaultPosition,
|
|
|
|
const wxSize& size = wxDefaultSize,
|
|
|
|
long style = 0,
|
|
|
|
const wxValidator& validator = wxDefaultValidator,
|
|
|
|
const wxString& name = "radioButton");
|
|
|
|
|
|
|
|
/**
|
|
|
|
Returns @true if the radio button is depressed, @false otherwise.
|
|
|
|
*/
|
2008-03-09 16:24:26 +00:00
|
|
|
bool GetValue() const;
|
2008-03-08 13:52:38 +00:00
|
|
|
|
|
|
|
/**
|
|
|
|
Sets the radio button to selected or deselected status. This does not cause a
|
|
|
|
wxEVT_COMMAND_RADIOBUTTON_SELECTED event to get emitted.
|
|
|
|
|
2008-03-08 14:43:31 +00:00
|
|
|
@param value
|
2008-03-09 12:33:59 +00:00
|
|
|
@true to select, @false to deselect.
|
2008-03-08 13:52:38 +00:00
|
|
|
*/
|
|
|
|
void SetValue(const bool value);
|
|
|
|
};
|
2008-03-10 15:24:38 +00:00
|
|
|
|