]>
Commit | Line | Data |
---|---|---|
9b6dbb09 | 1 | ///////////////////////////////////////////////////////////////////////////// |
925f7740 | 2 | // Name: wx/motif/radiobut.h |
9b6dbb09 JS |
3 | // Purpose: wxRadioButton class |
4 | // Author: Julian Smart | |
5 | // Modified by: | |
6 | // Created: 01/02/97 | |
7 | // RCS-ID: $Id$ | |
8 | // Copyright: (c) Julian Smart | |
925f7740 | 9 | // Licence: wxWindows licence |
9b6dbb09 JS |
10 | ///////////////////////////////////////////////////////////////////////////// |
11 | ||
12 | #ifndef _WX_RADIOBUT_H_ | |
13 | #define _WX_RADIOBUT_H_ | |
14 | ||
53a2db12 | 15 | class WXDLLIMPEXP_CORE wxRadioButton: public wxControl |
9b6dbb09 | 16 | { |
a4294b78 | 17 | DECLARE_DYNAMIC_CLASS(wxRadioButton) |
a4294b78 JS |
18 | public: |
19 | wxRadioButton(); | |
d3c7fc99 | 20 | virtual ~wxRadioButton() { RemoveFromCycle(); } |
f37907ff | 21 | |
a4294b78 | 22 | inline wxRadioButton(wxWindow *parent, wxWindowID id, |
83df96d6 JS |
23 | const wxString& label, |
24 | const wxPoint& pos = wxDefaultPosition, | |
25 | const wxSize& size = wxDefaultSize, long style = 0, | |
26 | const wxValidator& validator = wxDefaultValidator, | |
27 | const wxString& name = wxRadioButtonNameStr) | |
a4294b78 JS |
28 | { |
29 | Create(parent, id, label, pos, size, style, validator, name); | |
30 | } | |
925f7740 | 31 | |
a4294b78 | 32 | bool Create(wxWindow *parent, wxWindowID id, |
83df96d6 JS |
33 | const wxString& label, |
34 | const wxPoint& pos = wxDefaultPosition, | |
35 | const wxSize& size = wxDefaultSize, long style = 0, | |
36 | const wxValidator& validator = wxDefaultValidator, | |
37 | const wxString& name = wxRadioButtonNameStr); | |
925f7740 | 38 | |
a4294b78 JS |
39 | virtual void SetValue(bool val); |
40 | virtual bool GetValue() const ; | |
925f7740 | 41 | |
a4294b78 | 42 | void Command(wxCommandEvent& event); |
925f7740 | 43 | |
83df96d6 | 44 | // Implementation |
0d57be45 | 45 | virtual void ChangeBackgroundColour(); |
f37907ff MB |
46 | |
47 | // *this function is an implementation detail* | |
f96b10c2 | 48 | // clears the selection in the radiobuttons in the cycle |
f37907ff MB |
49 | // and returns the old selection (if any) |
50 | wxRadioButton* ClearSelections(); | |
677dc0ed JS |
51 | protected: |
52 | virtual wxBorder GetDefaultBorder() const { return wxBORDER_NONE; } | |
f37907ff MB |
53 | private: |
54 | wxRadioButton* AddInCycle(wxRadioButton* cycle); | |
55 | void RemoveFromCycle(); | |
56 | wxRadioButton* NextInCycle() { return m_cycle; } | |
57 | ||
58 | wxRadioButton *m_cycle; | |
9b6dbb09 JS |
59 | }; |
60 | ||
9b6dbb09 | 61 | #endif |
83df96d6 | 62 | // _WX_RADIOBUT_H_ |