1 /////////////////////////////////////////////////////////////////////////////
3 // Purpose: wxRadioBox class
4 // Author: Julian Smart
8 // Copyright: (c) Julian Smart
9 // Licence: wxWindows licence
10 /////////////////////////////////////////////////////////////////////////////
12 #ifndef _WX_MOTIF_RADIOBOX_H_
13 #define _WX_MOTIF_RADIOBOX_H_
15 #ifndef wxWIDGET_ARRAY_DEFINED
16 #define wxWIDGET_ARRAY_DEFINED
18 #include "wx/dynarray.h"
19 WX_DEFINE_ARRAY_PTR(WXWidget
, wxWidgetArray
);
20 #endif // wxWIDGET_ARRAY_DEFINED
22 #include "wx/arrstr.h"
24 class WXDLLEXPORT wxRadioBox
: public wxControl
, public wxRadioBoxBase
27 wxRadioBox() { Init(); }
29 wxRadioBox(wxWindow
*parent
, wxWindowID id
, const wxString
& title
,
30 const wxPoint
& pos
= wxDefaultPosition
,
31 const wxSize
& size
= wxDefaultSize
,
32 int n
= 0, const wxString choices
[] = NULL
,
33 int majorDim
= 0, long style
= wxRA_HORIZONTAL
,
34 const wxValidator
& val
= wxDefaultValidator
,
35 const wxString
& name
= wxRadioBoxNameStr
)
39 Create(parent
, id
, title
, pos
, size
, n
, choices
,
40 majorDim
, style
, val
, name
);
43 wxRadioBox(wxWindow
*parent
, wxWindowID id
, const wxString
& title
,
46 const wxArrayString
& choices
,
47 int majorDim
= 0, long style
= wxRA_HORIZONTAL
,
48 const wxValidator
& val
= wxDefaultValidator
,
49 const wxString
& name
= wxRadioBoxNameStr
)
53 Create(parent
, id
, title
, pos
, size
, choices
,
54 majorDim
, style
, val
, name
);
59 bool Create(wxWindow
*parent
, wxWindowID id
, const wxString
& title
,
60 const wxPoint
& pos
= wxDefaultPosition
,
61 const wxSize
& size
= wxDefaultSize
,
62 int n
= 0, const wxString choices
[] = NULL
,
63 int majorDim
= 0, long style
= wxRA_HORIZONTAL
,
64 const wxValidator
& val
= wxDefaultValidator
,
65 const wxString
& name
= wxRadioBoxNameStr
);
67 bool Create(wxWindow
*parent
, wxWindowID id
, const wxString
& title
,
70 const wxArrayString
& choices
,
71 int majorDim
= 0, long style
= wxRA_HORIZONTAL
,
72 const wxValidator
& val
= wxDefaultValidator
,
73 const wxString
& name
= wxRadioBoxNameStr
);
75 int FindString(const wxString
& s
) const;
76 void SetSelection(int N
);
77 int GetSelection() const;
79 void SetString(int item
, const wxString
& label
) ;
80 wxString
GetString(int item
) const;
81 virtual bool Enable(bool enable
= true);
82 virtual bool Enable(int item
, bool enable
= true);
83 virtual bool Show(int item
, bool show
= true);
84 virtual bool Show(bool show
= true);
86 virtual wxString
GetStringSelection() const;
87 virtual bool SetStringSelection(const wxString
& s
);
88 virtual int GetCount() const { return m_noItems
; } ;
89 void Command(wxCommandEvent
& event
);
91 int GetColumnCount() const;
92 int GetRowCount() const;
94 int GetNumberOfRowsOrCols() const { return m_noRowsOrCols
; }
95 void SetNumberOfRowsOrCols(int n
) { m_noRowsOrCols
= n
; }
98 virtual void ChangeFont(bool keepOriginalSize
= true);
99 virtual void ChangeBackgroundColour();
100 virtual void ChangeForegroundColour();
101 const wxWidgetArray
& GetRadioButtons() const { return m_radioButtons
; }
102 void SetSel(int i
) { m_selectedButton
= i
; }
103 virtual WXWidget
GetLabelWidget() const { return m_labelWidget
; }
106 virtual void DoSetSize(int x
, int y
,
107 int width
, int height
,
108 int sizeFlags
= wxSIZE_AUTO
);
113 int m_selectedButton
;
115 wxWidgetArray m_radioButtons
;
116 WXWidget m_labelWidget
;
117 wxArrayString m_radioButtonLabels
;
122 DECLARE_DYNAMIC_CLASS(wxRadioBox
)
125 #endif // _WX_MOTIF_RADIOBOX_H_