]> git.saurik.com Git - wxWidgets.git/blob - src/palmos/choice.cpp
supporting -1 as 'to' parameter for selections
[wxWidgets.git] / src / palmos / choice.cpp
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: src/palmos/choice.cpp
3 // Purpose: wxChoice
4 // Author: William Osborne - minimal working wxPalmOS port
5 // Created: 10/13/04
6 // RCS-ID: $Id$
7 // Copyright: (c) William Osborne
8 // Licence: wxWindows licence
9 /////////////////////////////////////////////////////////////////////////////
10
11 // ============================================================================
12 // declarations
13 // ============================================================================
14
15 // ----------------------------------------------------------------------------
16 // headers
17 // ----------------------------------------------------------------------------
18
19 // For compilers that support precompilation, includes "wx.h".
20 #include "wx/wxprec.h"
21
22 #ifdef __BORLANDC__
23 #pragma hdrstop
24 #endif
25
26 #if wxUSE_CHOICE
27
28 #include "wx/choice.h"
29
30 #ifndef WX_PRECOMP
31 #include "wx/utils.h"
32 #include "wx/log.h"
33 #include "wx/brush.h"
34 #include "wx/settings.h"
35 #endif
36
37 #include "wx/palmos/private.h"
38
39 #if wxUSE_EXTENDED_RTTI
40 WX_DEFINE_FLAGS( wxChoiceStyle )
41
42 wxBEGIN_FLAGS( wxChoiceStyle )
43 // new style border flags, we put them first to
44 // use them for streaming out
45 wxFLAGS_MEMBER(wxBORDER_SIMPLE)
46 wxFLAGS_MEMBER(wxBORDER_SUNKEN)
47 wxFLAGS_MEMBER(wxBORDER_DOUBLE)
48 wxFLAGS_MEMBER(wxBORDER_RAISED)
49 wxFLAGS_MEMBER(wxBORDER_STATIC)
50 wxFLAGS_MEMBER(wxBORDER_NONE)
51
52 // old style border flags
53 wxFLAGS_MEMBER(wxSIMPLE_BORDER)
54 wxFLAGS_MEMBER(wxSUNKEN_BORDER)
55 wxFLAGS_MEMBER(wxDOUBLE_BORDER)
56 wxFLAGS_MEMBER(wxRAISED_BORDER)
57 wxFLAGS_MEMBER(wxSTATIC_BORDER)
58 wxFLAGS_MEMBER(wxBORDER)
59
60 // standard window styles
61 wxFLAGS_MEMBER(wxTAB_TRAVERSAL)
62 wxFLAGS_MEMBER(wxCLIP_CHILDREN)
63 wxFLAGS_MEMBER(wxTRANSPARENT_WINDOW)
64 wxFLAGS_MEMBER(wxWANTS_CHARS)
65 wxFLAGS_MEMBER(wxFULL_REPAINT_ON_RESIZE)
66 wxFLAGS_MEMBER(wxALWAYS_SHOW_SB )
67 wxFLAGS_MEMBER(wxVSCROLL)
68 wxFLAGS_MEMBER(wxHSCROLL)
69
70 wxEND_FLAGS( wxChoiceStyle )
71
72 IMPLEMENT_DYNAMIC_CLASS_XTI(wxChoice, wxControl,"wx/choice.h")
73
74 wxBEGIN_PROPERTIES_TABLE(wxChoice)
75 wxEVENT_PROPERTY( Select , wxEVT_COMMAND_CHOICE_SELECTED , wxCommandEvent )
76
77 wxPROPERTY( Font , wxFont , SetFont , GetFont , EMPTY_MACROVALUE , 0 /*flags*/ , wxT("Helpstring") , wxT("group"))
78 wxPROPERTY_COLLECTION( Choices , wxArrayString , wxString , AppendString , GetStrings , 0 /*flags*/ , wxT("Helpstring") , wxT("group"))
79 wxPROPERTY( Selection ,int, SetSelection, GetSelection, EMPTY_MACROVALUE , 0 /*flags*/ , wxT("Helpstring") , wxT("group"))
80 wxPROPERTY_FLAGS( WindowStyle , wxChoiceStyle , long , SetWindowStyleFlag , GetWindowStyleFlag , EMPTY_MACROVALUE , 0 /*flags*/ , wxT("Helpstring") , wxT("group")) // style
81 wxEND_PROPERTIES_TABLE()
82
83 wxBEGIN_HANDLERS_TABLE(wxChoice)
84 wxEND_HANDLERS_TABLE()
85
86 wxCONSTRUCTOR_4( wxChoice , wxWindow* , Parent , wxWindowID , Id , wxPoint , Position , wxSize , Size )
87 #else
88 IMPLEMENT_DYNAMIC_CLASS(wxChoice, wxControlWithItems)
89 #endif
90
91 // ============================================================================
92 // implementation
93 // ============================================================================
94
95 // ----------------------------------------------------------------------------
96 // creation
97 // ----------------------------------------------------------------------------
98
99 bool wxChoice::Create(wxWindow *parent,
100 wxWindowID id,
101 const wxPoint& pos,
102 const wxSize& size,
103 int n, const wxString choices[],
104 long style,
105 const wxValidator& validator,
106 const wxString& name)
107 {
108 return false;
109 }
110
111 bool wxChoice::CreateAndInit(wxWindow *parent,
112 wxWindowID id,
113 const wxPoint& pos,
114 const wxSize& size,
115 int n, const wxString choices[],
116 long style,
117 const wxValidator& validator,
118 const wxString& name)
119 {
120 return false;
121 }
122
123 bool wxChoice::Create(wxWindow *parent,
124 wxWindowID id,
125 const wxPoint& pos,
126 const wxSize& size,
127 const wxArrayString& choices,
128 long style,
129 const wxValidator& validator,
130 const wxString& name)
131 {
132 return false;
133 }
134
135 bool wxChoice::MSWShouldPreProcessMessage(WXMSG *pMsg)
136 {
137 return false;
138 }
139
140 WXDWORD wxChoice::MSWGetStyle(long style, WXDWORD *exstyle) const
141 {
142 return 0;
143 }
144
145 wxChoice::~wxChoice()
146 {
147 }
148
149 // ----------------------------------------------------------------------------
150 // adding/deleting items to/from the list
151 // ----------------------------------------------------------------------------
152
153 int wxChoice::DoInsertItems(const wxArrayStringsAdapter& items,
154 unsigned int pos,
155 void **clientData,
156 wxClientDataType type)
157 {
158 return 0;
159 }
160
161 void wxChoice::DoDeleteOneItem(unsigned int n)
162 {
163 }
164
165 void wxChoice::DoClear()
166 {
167 }
168
169 void wxChoice::Free()
170 {
171 }
172
173 // ----------------------------------------------------------------------------
174 // selection
175 // ----------------------------------------------------------------------------
176
177 int wxChoice::GetSelection() const
178 {
179 return 0;
180 }
181
182 void wxChoice::SetSelection(int n)
183 {
184 }
185
186 // ----------------------------------------------------------------------------
187 // string list functions
188 // ----------------------------------------------------------------------------
189
190 unsigned int wxChoice::GetCount() const
191 {
192 return 0;
193 }
194
195 void wxChoice::SetString(unsigned int n, const wxString& s)
196 {
197 }
198
199 wxString wxChoice::GetString(unsigned int n) const
200 {
201 return wxEmptyString;
202 }
203
204 // ----------------------------------------------------------------------------
205 // client data
206 // ----------------------------------------------------------------------------
207
208 void wxChoice::DoSetItemClientData(unsigned int n, void* clientData)
209 {
210 }
211
212 void* wxChoice::DoGetItemClientData(unsigned int n) const
213 {
214 return (void *)NULL;
215 }
216
217 // ----------------------------------------------------------------------------
218 // wxMSW specific helpers
219 // ----------------------------------------------------------------------------
220
221 void wxChoice::UpdateVisibleHeight()
222 {
223 }
224
225 void wxChoice::DoMoveWindow(int x, int y, int width, int height)
226 {
227 }
228
229 void wxChoice::DoGetSize(int *w, int *h) const
230 {
231 }
232
233 void wxChoice::DoSetSize(int x, int y,
234 int width, int height,
235 int sizeFlags)
236 {
237 }
238
239 wxSize wxChoice::DoGetBestSize() const
240 {
241 return wxSize(0,0);
242 }
243
244 WXLRESULT wxChoice::MSWWindowProc(WXUINT nMsg, WXWPARAM wParam, WXLPARAM lParam)
245 {
246 return 0;
247 }
248
249 bool wxChoice::MSWCommand(WXUINT param, WXWORD WXUNUSED(id))
250 {
251 return false;
252 }
253
254 #endif // wxUSE_CHOICE