]> git.saurik.com Git - wxWidgets.git/blob - include/wx/os2/choice.h
Use RIAA wrapper for wxSpinCtrl event disabling in wxGTK.
[wxWidgets.git] / include / wx / os2 / choice.h
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: wx/os2/choice.h
3 // Purpose: wxChoice class
4 // Author: David Webster
5 // Modified by:
6 // Created: 10/13/99
7 // Copyright: (c) David Webster
8 // Licence: wxWindows licence
9 /////////////////////////////////////////////////////////////////////////////
10
11 #ifndef _WX_CHOICE_H_
12 #define _WX_CHOICE_H_
13
14 // ----------------------------------------------------------------------------
15 // Choice item
16 // ----------------------------------------------------------------------------
17
18 class WXDLLIMPEXP_CORE wxChoice: public wxChoiceBase
19 {
20 DECLARE_DYNAMIC_CLASS(wxChoice)
21
22 public:
23 // ctors
24 inline wxChoice() { }
25 virtual ~wxChoice();
26
27 inline wxChoice( wxWindow* pParent
28 ,wxWindowID vId
29 ,const wxPoint& rPos = wxDefaultPosition
30 ,const wxSize& rSize = wxDefaultSize
31 ,int n = 0
32 ,const wxString asChoices[] = NULL
33 ,long lStyle = 0
34 ,const wxValidator& rValidator = wxDefaultValidator
35 ,const wxString& rsName = wxChoiceNameStr
36 )
37 {
38 Create( pParent
39 ,vId
40 ,rPos
41 ,rSize
42 ,n
43 ,asChoices
44 ,lStyle
45 ,rValidator
46 ,rsName
47 );
48 }
49
50 inline wxChoice( wxWindow* pParent
51 ,wxWindowID vId
52 ,const wxPoint& rPos
53 ,const wxSize& rSize
54 ,const wxArrayString& asChoices
55 ,long lStyle = 0
56 ,const wxValidator& rValidator = wxDefaultValidator
57 ,const wxString& rsName = wxChoiceNameStr
58 )
59 {
60 Create( pParent
61 ,vId
62 ,rPos
63 ,rSize
64 ,asChoices
65 ,lStyle
66 ,rValidator
67 ,rsName
68 );
69 }
70
71 bool Create( wxWindow* pParent
72 ,wxWindowID vId
73 ,const wxPoint& rPos = wxDefaultPosition
74 ,const wxSize& rSize = wxDefaultSize
75 ,int n = 0
76 ,const wxString asChoices[] = NULL
77 ,long lStyle = 0
78 ,const wxValidator& rValidator = wxDefaultValidator
79 ,const wxString& rsName = wxChoiceNameStr
80 );
81
82 bool Create( wxWindow* pParent
83 ,wxWindowID vId
84 ,const wxPoint& rPos
85 ,const wxSize& rSize
86 ,const wxArrayString& asChoices
87 ,long lStyle = 0
88 ,const wxValidator& rValidator = wxDefaultValidator
89 ,const wxString& rsName = wxChoiceNameStr
90 );
91
92 //
93 // Implement base class virtuals
94 //
95 virtual void DoDeleteOneItem(unsigned int n);
96 virtual void DoClear(void);
97
98 virtual unsigned int GetCount() const;
99 virtual int GetSelection(void) const;
100 virtual void SetSelection(int n);
101
102 virtual wxString GetString(unsigned int n) const;
103 virtual void SetString(unsigned int n, const wxString& rsStr);
104
105 //
106 // OS2 only
107 //
108 virtual bool OS2Command( WXUINT uParam
109 ,WXWORD wId
110 );
111 MRESULT OS2WindowProc( WXUINT uMsg
112 ,WXWPARAM wParam
113 ,WXLPARAM lParam
114 );
115
116 protected:
117 virtual int DoInsertItems(const wxArrayStringsAdapter& items,
118 unsigned int pos,
119 void **clientData,
120 wxClientDataType type);
121
122 virtual void DoSetItemClientData(unsigned int n, void* pClientData);
123 virtual void* DoGetItemClientData(unsigned int n) const;
124 virtual wxSize DoGetBestSize(void) const;
125 virtual void DoSetSize( int nX
126 ,int nY
127 ,int nWidth
128 ,int nHeight
129 ,int nsizeFlags = wxSIZE_AUTO
130 );
131 void Free(void);
132 }; // end of CLASS wxChoice
133
134 #endif // _WX_CHOICE_H_