]> git.saurik.com Git - wxWidgets.git/blob - include/wx/gtk/radiobox.h
?lk
[wxWidgets.git] / include / wx / gtk / radiobox.h
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: radiobox.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 __GTKRADIOBOXH__
12 #define __GTKRADIOBOXH__
13
14 #ifdef __GNUG__
15 #pragma interface
16 #endif
17
18 #include "wx/defs.h"
19
20 #if wxUSE_RADIOBOX
21
22 #include "wx/object.h"
23 #include "wx/list.h"
24 #include "wx/control.h"
25 #include "wx/bitmap.h"
26
27 //-----------------------------------------------------------------------------
28 // classes
29 //-----------------------------------------------------------------------------
30
31 class wxRadioBox;
32
33 //-----------------------------------------------------------------------------
34 // global data
35 //-----------------------------------------------------------------------------
36
37 extern const char *wxRadioBoxNameStr;
38
39 //-----------------------------------------------------------------------------
40 // wxRadioBox
41 //-----------------------------------------------------------------------------
42
43 class wxRadioBox: public wxControl
44 {
45 public:
46 wxRadioBox();
47 inline wxRadioBox( wxWindow *parent, wxWindowID id, const wxString& title,
48 const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize,
49 int n = 0, const wxString choices[] = (const wxString *) NULL,
50 int majorDim = 1, long style = wxRA_HORIZONTAL,
51 const wxValidator& val = wxDefaultValidator,
52 const wxString& name = wxRadioBoxNameStr )
53 {
54 Create( parent, id, title, pos, size, n, choices, majorDim, style, val, name );
55 }
56 ~wxRadioBox(void);
57 bool Create( wxWindow *parent, wxWindowID id, const wxString& title,
58 const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize,
59 int n = 0, const wxString choices[] = (const wxString *) NULL,
60 int majorDim = 0, long style = wxRA_HORIZONTAL,
61 const wxValidator& val = wxDefaultValidator,
62 const wxString& name = wxRadioBoxNameStr );
63
64 int FindString( const wxString& s) const;
65 void SetSelection( int n );
66 int GetSelection() const;
67
68 wxString GetString( int n ) const;
69
70 wxString GetLabel( int item ) const;
71 wxString GetLabel() const { return wxControl::GetLabel(); }
72 void SetLabel( const wxString& label );
73 void SetLabel( int item, const wxString& label );
74
75 /* doesn't work */
76 void SetLabel( int item, wxBitmap *bitmap );
77
78 bool Show( bool show );
79 void Show( int item, bool show );
80
81 bool Enable( bool enable );
82 void Enable( int item, bool enable );
83
84 virtual wxString GetStringSelection() const;
85 virtual bool SetStringSelection( const wxString& s );
86
87 virtual int Number() const;
88 int GetNumberOfRowsOrCols() const;
89 void SetNumberOfRowsOrCols( int n );
90
91 // implementation
92 // --------------
93
94 void SetFocus();
95 void GtkDisableEvents();
96 void GtkEnableEvents();
97 bool IsOwnGtkWindow( GdkWindow *window );
98 void ApplyWidgetStyle();
99 #if wxUSE_TOOLTIPS
100 void ApplyToolTip( GtkTooltips *tips, const wxChar *tip );
101 #endif // wxUSE_TOOLTIPS
102 wxSize LayoutItems();
103 void DoSetSize( int x, int y, int width, int height, int sizeFlags = wxSIZE_AUTO );
104
105 bool m_alreadySent;
106 int m_majorDim;
107 wxList m_boxes;
108
109 private:
110 DECLARE_DYNAMIC_CLASS(wxRadioBox)
111 };
112
113 #endif
114
115 #endif // __GTKRADIOBOXH__