More changes to various controls for more reliably
[wxWidgets.git] / include / wx / gtk1 / radiobut.h
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: radiobut.h
3 // Purpose:
4 // Author: Robert Roebling
5 // Id: $Id$
6 // Copyright: (c) 1998 Robert Roebling
7 // Licence: wxWindows licence
8 /////////////////////////////////////////////////////////////////////////////
9
10
11 #ifndef __GTKRADIOBUTTONH__
12 #define __GTKRADIOBUTTONH__
13
14 #ifdef __GNUG__
15 #pragma interface
16 #endif
17
18 //-----------------------------------------------------------------------------
19 // wxRadioButton
20 //-----------------------------------------------------------------------------
21
22 class wxRadioButton: public wxControl
23 {
24 public:
25 inline wxRadioButton() {}
26 inline wxRadioButton( wxWindow *parent, wxWindowID id,
27 const wxString& label,
28 const wxPoint& pos = wxDefaultPosition,
29 const wxSize& size = wxDefaultSize, long style = 0,
30 const wxValidator& validator = wxDefaultValidator,
31 const wxString& name = wxRadioButtonNameStr )
32 {
33 Create( parent, id, label, pos, size, style, validator, name );
34 }
35 bool Create(wxWindow *parent, wxWindowID id,
36 const wxString& label,
37 const wxPoint& pos = wxDefaultPosition,
38 const wxSize& size = wxDefaultSize, long style = 0,
39 const wxValidator& validator = wxDefaultValidator,
40 const wxString& name = wxRadioButtonNameStr );
41 virtual void SetLabel(const wxString& label);
42 virtual void SetValue(bool val);
43 virtual bool GetValue() const;
44 bool Enable( bool enable );
45
46 // implementation
47
48 GSList *m_radioButtonGroup;
49 void ApplyWidgetStyle();
50 bool IsOwnGtkWindow( GdkWindow *window );
51 void OnInternalIdle();
52
53 bool m_blockEvent;
54
55 protected:
56 virtual wxSize DoGetBestSize() const;
57
58 private:
59 DECLARE_DYNAMIC_CLASS(wxRadioButton)
60 };
61
62 #endif // __GTKRADIOBUTTONH__