1 /////////////////////////////////////////////////////////////////////////////
3 // Purpose: wxRadioButton class
4 // Author: Julian Smart
8 // Copyright: (c) Julian Smart
9 // Licence: wxWindows licence
10 /////////////////////////////////////////////////////////////////////////////
12 #ifndef _WX_RADIOBUT_H_
13 #define _WX_RADIOBUT_H_
15 #if defined(__GNUG__) && !defined(__APPLE__)
16 #pragma interface "radiobut.h"
19 #include "wx/control.h"
21 class WXDLLEXPORT wxRadioButton
: public wxControl
23 DECLARE_DYNAMIC_CLASS(wxRadioButton
)
27 ~wxRadioButton() { RemoveFromCycle(); }
29 inline wxRadioButton(wxWindow
*parent
, wxWindowID id
,
30 const wxString
& label
,
31 const wxPoint
& pos
= wxDefaultPosition
,
32 const wxSize
& size
= wxDefaultSize
, long style
= 0,
33 const wxValidator
& validator
= wxDefaultValidator
,
34 const wxString
& name
= wxRadioButtonNameStr
)
36 Create(parent
, id
, label
, pos
, size
, style
, validator
, name
);
39 bool Create(wxWindow
*parent
, wxWindowID id
,
40 const wxString
& label
,
41 const wxPoint
& pos
= wxDefaultPosition
,
42 const wxSize
& size
= wxDefaultSize
, long style
= 0,
43 const wxValidator
& validator
= wxDefaultValidator
,
44 const wxString
& name
= wxRadioButtonNameStr
);
46 virtual void SetValue(bool val
);
47 virtual bool GetValue() const ;
49 void Command(wxCommandEvent
& event
);
52 virtual void ChangeFont(bool keepOriginalSize
= TRUE
);
53 virtual void ChangeBackgroundColour();
54 virtual void ChangeForegroundColour();
56 // *this function is an implementation detail*
57 // clears the selection in the readiobuttons in the cycle
58 // and returns the old selection (if any)
59 wxRadioButton
* ClearSelections();
61 wxRadioButton
* AddInCycle(wxRadioButton
* cycle
);
62 void RemoveFromCycle();
63 wxRadioButton
* NextInCycle() { return m_cycle
; }
65 wxRadioButton
*m_cycle
;