]> git.saurik.com Git - wxWidgets.git/blob - include/wx/gtk1/radiobox.h
Don't define __STRICT_ANSI__, we should build both with and without it.
[wxWidgets.git] / include / wx / gtk1 / radiobox.h
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: wx/gtk1/radiobox.h
3 // Purpose:
4 // Author: Robert Roebling
5 // Copyright: (c) 1998 Robert Roebling
6 // Licence: wxWindows licence
7 /////////////////////////////////////////////////////////////////////////////
8
9 #ifndef _WX_GTK_RADIOBOX_H_
10 #define _WX_GTK_RADIOBOX_H_
11
12 #include "wx/bitmap.h"
13
14 //-----------------------------------------------------------------------------
15 // wxRadioBox
16 //-----------------------------------------------------------------------------
17
18 class WXDLLIMPEXP_CORE wxRadioBox : public wxControl,
19 public wxRadioBoxBase
20 {
21 public:
22 // ctors and dtor
23 wxRadioBox() { Init(); }
24 wxRadioBox(wxWindow *parent,
25 wxWindowID id,
26 const wxString& title,
27 const wxPoint& pos = wxDefaultPosition,
28 const wxSize& size = wxDefaultSize,
29 int n = 0,
30 const wxString choices[] = (const wxString *) NULL,
31 int majorDim = 1,
32 long style = wxRA_SPECIFY_COLS,
33 const wxValidator& val = wxDefaultValidator,
34 const wxString& name = wxRadioBoxNameStr)
35 {
36 Init();
37
38 Create( parent, id, title, pos, size, n, choices, majorDim, style, val, name );
39 }
40
41 wxRadioBox(wxWindow *parent,
42 wxWindowID id,
43 const wxString& title,
44 const wxPoint& pos,
45 const wxSize& size,
46 const wxArrayString& choices,
47 int majorDim = 1,
48 long style = wxRA_SPECIFY_COLS,
49 const wxValidator& val = wxDefaultValidator,
50 const wxString& name = wxRadioBoxNameStr)
51 {
52 Init();
53
54 Create( parent, id, title, pos, size, choices, majorDim, style, val, name );
55 }
56
57 bool Create(wxWindow *parent,
58 wxWindowID id,
59 const wxString& title,
60 const wxPoint& pos = wxDefaultPosition,
61 const wxSize& size = wxDefaultSize,
62 int n = 0,
63 const wxString choices[] = (const wxString *) NULL,
64 int majorDim = 0,
65 long style = wxRA_SPECIFY_COLS,
66 const wxValidator& val = wxDefaultValidator,
67 const wxString& name = wxRadioBoxNameStr);
68 bool Create(wxWindow *parent,
69 wxWindowID id,
70 const wxString& title,
71 const wxPoint& pos,
72 const wxSize& size,
73 const wxArrayString& choices,
74 int majorDim = 0,
75 long style = wxRA_SPECIFY_COLS,
76 const wxValidator& val = wxDefaultValidator,
77 const wxString& name = wxRadioBoxNameStr);
78
79 virtual ~wxRadioBox();
80
81
82 // implement wxItemContainerImmutable methods
83 virtual unsigned int GetCount() const;
84
85 virtual wxString GetString(unsigned int n) const;
86 virtual void SetString(unsigned int n, const wxString& s);
87
88 virtual void SetSelection(int n);
89 virtual int GetSelection() const;
90
91
92 // implement wxRadioBoxBase methods
93 virtual bool Show(unsigned int n, bool show = true);
94 virtual bool Enable(unsigned int n, bool enable = true);
95
96 virtual bool IsItemEnabled(unsigned int n) const;
97 virtual bool IsItemShown(unsigned int n) const;
98
99
100 // override some base class methods to operate on radiobox itself too
101 virtual bool Show( bool show = true );
102 virtual bool Enable( bool enable = true );
103
104 virtual void SetLabel( const wxString& label );
105
106 static wxVisualAttributes
107 GetClassDefaultAttributes(wxWindowVariant variant = wxWINDOW_VARIANT_NORMAL);
108
109 // implementation
110 // --------------
111
112 void SetFocus();
113 void GtkDisableEvents();
114 void GtkEnableEvents();
115 bool IsOwnGtkWindow( GdkWindow *window );
116 void DoApplyWidgetStyle(GtkRcStyle *style);
117 #if wxUSE_TOOLTIPS
118 void ApplyToolTip( GtkTooltips *tips, const wxChar *tip );
119 #endif // wxUSE_TOOLTIPS
120
121 virtual void OnInternalIdle();
122
123 bool m_hasFocus,
124 m_lostFocus;
125 wxList m_boxes;
126
127 protected:
128 // common part of all ctors
129 void Init();
130
131 private:
132 DECLARE_DYNAMIC_CLASS(wxRadioBox)
133 };
134
135 #endif // _WX_GTK_RADIOBOX_H_