]> git.saurik.com Git - wxWidgets.git/blob - docs/latex/wx/radiobox.tex
don't crash when setting tooltip for a picker without text control
[wxWidgets.git] / docs / latex / wx / radiobox.tex
1 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2 %% Name: radiobox.tex
3 %% Purpose: wxRadioBox documentation
4 %% Author: wxWidgets Team
5 %% Modified by:
6 %% Created:
7 %% RCS-ID: $Id$
8 %% Copyright: (c) wxWidgets Team
9 %% License: wxWindows license
10 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
11
12 \section{\class{wxRadioBox}}\label{wxradiobox}
13
14 A radio box item is used to select one of number of mutually exclusive
15 choices. It is displayed as a vertical column or horizontal row of
16 labelled buttons.
17
18 \wxheading{Derived from}
19
20 \helpref{wxControlWithItems}{wxcontrolwithitems}\\
21 \helpref{wxControl}{wxcontrol}\\
22 \helpref{wxWindow}{wxwindow}\\
23 \helpref{wxEvtHandler}{wxevthandler}\\
24 \helpref{wxObject}{wxobject}
25
26 \wxheading{Include files}
27
28 <wx/radiobox.h>
29
30 \wxheading{Window styles}
31
32 \twocolwidtha{5cm}
33 \begin{twocollist}\itemsep=0pt
34 \twocolitem{\windowstyle{wxRA\_SPECIFY\_ROWS}}{The major dimension parameter refers to the
35 maximum number of rows.}
36 \twocolitem{\windowstyle{wxRA\_SPECIFY\_COLS}}{The major dimension parameter refers to the
37 maximum number of columns.}
38 \twocolitem{\windowstyle{wxRA\_USE\_CHECKBOX}}{Use of the checkbox controls instead of radio
39 buttons (currently supported only on PalmOS)}
40 \end{twocollist}
41
42 See also \helpref{window styles overview}{windowstyles}.
43
44 \wxheading{Event handling}
45
46 \twocolwidtha{7cm}
47 \begin{twocollist}\itemsep=0pt
48 \twocolitem{{\bf EVT\_RADIOBOX(id, func)}}{Process a wxEVT\_COMMAND\_RADIOBOX\_SELECTED event,
49 when a radiobutton is clicked.}
50 \end{twocollist}
51
52 \wxheading{See also}
53
54 \helpref{Event handling overview}{eventhandlingoverview}, \helpref{wxRadioButton}{wxradiobutton},\rtfsp
55 \helpref{wxCheckBox}{wxcheckbox}
56
57 \latexignore{\rtfignore{\wxheading{Members}}}
58
59
60 \membersection{wxRadioBox::wxRadioBox}\label{wxradioboxctor}
61
62 \func{}{wxRadioBox}{\void}
63
64 Default constructor.
65
66 \func{}{wxRadioBox}{\param{wxWindow* }{parent}, \param{wxWindowID }{id}, \param{const wxString\& }{label},\rtfsp
67 \param{const wxPoint\& }{point = wxDefaultPosition}, \param{const wxSize\& }{size = wxDefaultSize},\rtfsp
68 \param{int}{ n = 0}, \param{const wxString}{ choices[] = NULL},\rtfsp
69 \param{int}{ majorDimension = 0}, \param{long}{ style = wxRA\_SPECIFY\_COLS},\rtfsp
70 \param{const wxValidator\& }{validator = wxDefaultValidator},\rtfsp
71 \param{const wxString\& }{name = ``radioBox"}}
72
73 \func{}{wxRadioBox}{\param{wxWindow* }{parent}, \param{wxWindowID }{id}, \param{const wxString\& }{label},\rtfsp
74 \param{const wxPoint\& }{point}, \param{const wxSize\& }{size},\rtfsp
75 \param{const wxArrayString\&}{ choices},\rtfsp
76 \param{int}{ majorDimension = 0}, \param{long}{ style = wxRA\_SPECIFY\_COLS},\rtfsp
77 \param{const wxValidator\& }{validator = wxDefaultValidator},\rtfsp
78 \param{const wxString\& }{name = ``radioBox"}}
79
80 Constructor, creating and showing a radiobox.
81
82 \wxheading{Parameters}
83
84 \docparam{parent}{Parent window. Must not be NULL.}
85
86 \docparam{id}{Window identifier. A value of -1 indicates a default value.}
87
88 \docparam{label}{Label for the static box surrounding the radio buttons.}
89
90 \docparam{pos}{Window position. If the position (-1, -1) is specified then a default position is chosen.}
91
92 \docparam{size}{Window size. If the default size (-1, -1) is specified then a default size is chosen.}
93
94 \docparam{n}{Number of choices with which to initialize the radiobox.}
95
96 \docparam{choices}{An array of choices with which to initialize the radiobox.}
97
98 \docparam{majorDimension}{Specifies the maximum number of rows (if style contains wxRA\_SPECIFY\_ROWS) or columns (if style contains wxRA\_SPECIFY\_COLS) for a two-dimensional
99 radiobox.}
100
101 \docparam{style}{Window style. See \helpref{wxRadioBox}{wxradiobox}.}
102
103 \docparam{validator}{Window validator.}
104
105 \docparam{name}{Window name.}
106
107 \wxheading{See also}
108
109 \helpref{wxRadioBox::Create}{wxradioboxcreate}, \helpref{wxValidator}{wxvalidator}
110
111 \pythonnote{The wxRadioBox constructor in wxPython reduces the {\tt n}
112 and {\tt choices} arguments are to a single argument, which is
113 a list of strings.}
114
115 \perlnote{In wxPerl there is just an array reference in place of {\tt n}
116 and {\tt choices}.}
117
118
119 \membersection{wxRadioBox::\destruct{wxRadioBox}}\label{wxradioboxdtor}
120
121 \func{}{\destruct{wxRadioBox}}{\void}
122
123 Destructor, destroying the radiobox item.
124
125
126 \membersection{wxRadioBox::Create}\label{wxradioboxcreate}
127
128 \func{bool}{Create}{\param{wxWindow* }{parent}, \param{wxWindowID }{id}, \param{const wxString\& }{label},\rtfsp
129 \param{const wxPoint\& }{point = wxDefaultPosition}, \param{const wxSize\& }{size = wxDefaultSize},\rtfsp
130 \param{int}{ n = 0}, \param{const wxString}{ choices[] = NULL},\rtfsp
131 \param{int}{ majorDimension = 0}, \param{long}{ style = wxRA\_SPECIFY\_COLS},\rtfsp
132 \param{const wxValidator\& }{validator = wxDefaultValidator},\rtfsp
133 \param{const wxString\& }{name = ``radioBox"}}
134
135 \func{bool}{Create}{\param{wxWindow* }{parent}, \param{wxWindowID }{id}, \param{const wxString\& }{label},\rtfsp
136 \param{const wxPoint\& }{point}, \param{const wxSize\& }{size},\rtfsp
137 \param{const wxArrayString\&}{ choices},\rtfsp
138 \param{int}{ majorDimension = 0}, \param{long}{ style = wxRA\_SPECIFY\_COLS},\rtfsp
139 \param{const wxValidator\& }{validator = wxDefaultValidator},\rtfsp
140 \param{const wxString\& }{name = ``radioBox"}}
141
142 Creates the radiobox for two-step construction. See \helpref{wxRadioBox::wxRadioBox}{wxradioboxctor}\rtfsp
143 for further details.
144
145
146 \membersection{wxRadioBox::Enable}\label{wxradioboxenable}
147
148 \func{virtual bool}{Enable}{\param{bool}{ enable = {\tt true}}}
149
150 Enables or disables the entire radiobox.
151
152 \func{virtual bool}{Enable}{\param{unsigned int}{ n}, \param{bool}{ enable = {\tt true}}}
153
154 Enables or disables an individual button in the radiobox.
155
156 \wxheading{Parameters}
157
158 \docparam{enable}{true to enable, false to disable.}
159
160 \docparam{n}{The zero-based button to enable or disable.}
161
162 \pythonnote{In place of a single overloaded method name, wxPython
163 implements the following methods:\par
164 \indented{2cm}{\begin{twocollist}
165 \twocolitem{{\bf Enable(flag)}}{Enables or disables the entire radiobox.}
166 \twocolitem{{\bf EnableItem(n, flag)}}{Enables or disables an
167 individual button in the radiobox.}
168 \end{twocollist}}
169 }
170
171 \wxheading{See also}
172
173 \helpref{wxWindow::Enable}{wxwindowenable}
174
175
176
177 \membersection{wxRadioBox::FindString}\label{wxradioboxfindstring}
178
179 \constfunc{int}{FindString}{\param{const wxString\& }{string}}
180
181 Finds a button matching the given string, returning the position if found, or
182 -1 if not found.
183
184 \wxheading{Parameters}
185
186 \docparam{string}{The string to find.}
187
188
189 \membersection{wxRadioBox::GetColumnCount}\label{wxradioboxgetcolumncount}
190
191 \constfunc{unsigned int}{GetColumnCount}{\void}
192
193 Returns the number of columns in the radiobox.
194
195
196 \membersection{wxRadioBox::GetItemHelpText}\label{wxradioboxgetitemhelptext}
197
198 \constfunc{wxString}{GetItemHelpText}{\param{unsigned int}{ item}}
199
200 Returns the helptext associated with the specified \arg{item} if any or {\tt wxEmptyString}.
201
202 \wxheading{Parameters}
203
204 \docparam{item}{The zero-based item index.}
205
206 \wxheading{See also}
207
208 \helpref{SetItemHelpText}{wxradioboxsetitemhelptext}
209
210
211 \membersection{wxRadioBox::GetItemToolTip}\label{wxradioboxgetitemtooltip}
212
213 \constfunc{wxToolTip *}{GetItemToolTip}{\param{unsigned int}{ item}}
214
215 Returns the tooltip associated with the specified \arg{item} if any or \NULL.
216
217 \wxheading{See also}
218
219 \helpref{SetItemToolTip}{wxradioboxsetitemtooltip},\\
220 \helpref{wxWindow::GetToolTip}{wxwindowgettooltip}
221
222
223 \membersection{wxRadioBox::GetItemFromPoint}\label{wxradioboxgetitemfrompoint}
224
225 \constfunc{int}{GetItemFromPoint}{\param{const wxPoint&}{ pt}}
226
227 Returns a radio box item under the point, a zero-based item index, or {\tt wxNOT\_FOUND} if no item is under the point.
228
229 \docparam{pt}{Point in client coordinates.}
230
231
232 \membersection{wxRadioBox::GetLabel}\label{wxradioboxgetlabel}
233
234 \constfunc{wxString}{GetLabel}{\void}
235
236 Returns the radiobox label.
237
238 \wxheading{Parameters}
239
240 \docparam{n}{The zero-based button index.}
241
242 \wxheading{See also}
243
244 \helpref{wxRadioBox::SetLabel}{wxradioboxsetlabel}
245
246 \pythonnote{In place of a single overloaded method name, wxPython
247 implements the following methods:\par
248 \indented{2cm}{\begin{twocollist}
249 \twocolitem{{\bf GetLabel()}}{Returns the radiobox label.}
250 \twocolitem{{\bf GetItemLabel(n)}}{Returns the label for the given button.}
251 \end{twocollist}}
252 }
253
254
255 \membersection{wxRadioBox::GetRowCount}\label{wxradioboxgetrowcount}
256
257 \constfunc{unsigned int}{GetRowCount}{\void}
258
259 Returns the number of rows in the radiobox.
260
261
262 \membersection{wxRadioBox::GetSelection}\label{wxradioboxgetselection}
263
264 \constfunc{int}{GetSelection}{\void}
265
266 Returns the zero-based position of the selected button.
267
268
269 \membersection{wxRadioBox::GetStringSelection}\label{wxradioboxgetstringselection}
270
271 \constfunc{wxString}{GetStringSelection}{\void}
272
273 Returns the selected string.
274
275
276 \membersection{wxRadioBox::GetString}\label{wxradioboxgetstring}
277
278 \constfunc{wxString}{GetString}{\param{unsigned int}{ n}}
279
280 Returns the label for the button at the given position.
281
282 \wxheading{Parameters}
283
284 \docparam{n}{The zero-based button position.}
285
286
287 \membersection{wxRadioBox::IsItemEnabled}\label{wxradioboxisitemenabled}
288
289 \constfunc{bool}{IsItemEnabled}{\param{unsigned int}{ n}}
290
291 Returns \true if the item is enabled or \false if it was disabled using
292 \helpref{Enable(n, false)}{wxradioboxenable}.
293
294 {\bf Platform note:} Currently only implemented in wxMSW, wxGTK and wxUniversal
295 and always returns \true in the other ports.
296
297 \wxheading{Parameters}
298
299 \docparam{n}{The zero-based button position.}
300
301
302 \membersection{wxRadioBox::IsItemShown}\label{wxradioboxisitemshown}
303
304 \constfunc{bool}{IsItemShown}{\param{unsigned int}{ n}}
305
306 Returns \true if the item is currently shown or \false if it was hidden using
307 \helpref{Show(n, false)}{wxradioboxshow}.
308
309 Note that this function returns \true for an item which hadn't been hidden even
310 if the entire radiobox is not currently shown.
311
312 {\bf Platform note:} Currently only implemented in wxMSW, wxGTK and wxUniversal
313 and always returns \true in the other ports.
314
315 \wxheading{Parameters}
316
317 \docparam{n}{The zero-based button position.}
318
319
320 \membersection{wxRadioBox::SetItemHelpText}\label{wxradioboxsetitemhelptext}
321
322 \func{void}{SetItemHelpText}{\param{unsigned int}{ item}, \param{const wxString\&}{ helptext}}
323
324 Sets the helptext for an item. Empty string erases any existing helptext.
325
326 \wxheading{Parameters}
327
328 \docparam{item}{The zero-based item index.}
329
330 \docparam{helptext}{The help text to set for the item.}
331
332 \wxheading{See also}
333
334 \helpref{GetItemHelpText}{wxradioboxgetitemhelptext}
335
336
337 \membersection{wxRadioBox::SetLabel}\label{wxradioboxsetlabel}
338
339 \func{void}{SetLabel}{\param{const wxString\&}{ label}}
340
341 Sets the radiobox label.
342
343
344 \wxheading{Parameters}
345
346 \docparam{label}{The label to set.}
347
348 \docparam{n}{The zero-based button index.}
349
350 \pythonnote{In place of a single overloaded method name, wxPython
351 implements the following methods:\par
352 \indented{2cm}{\begin{twocollist}
353 \twocolitem{{\bf SetLabel(string)}}{Sets the radiobox label.}
354 \twocolitem{{\bf SetItemLabel(n, string)}}{Sets a label for a radio button.}
355 \end{twocollist}}
356 }
357
358
359 \membersection{wxRadioBox::SetSelection}\label{wxradioboxsetselection}
360
361 \func{void}{SetSelection}{\param{int}{ n}}
362
363 Sets a button by passing the desired string position. This does not cause
364 a wxEVT\_COMMAND\_RADIOBOX\_SELECTED event to get emitted.
365
366 \wxheading{Parameters}
367
368 \docparam{n}{The zero-based button position.}
369
370
371 \membersection{wxRadioBox::SetStringSelection}\label{wxradioboxsetstringselection}
372
373 \func{void}{SetStringSelection}{\param{const wxString\& }{string}}
374
375 Sets the selection to a button by passing the desired string. This does not cause
376 a wxEVT\_COMMAND\_RADIOBOX\_SELECTED event to get emitted.
377
378 \wxheading{Parameters}
379
380 \docparam{string}{The label of the button to select.}
381
382
383 \membersection{wxRadioBox::SetItemToolTip}\label{wxradioboxsetitemtooltip}
384
385 \func{void}{SetItemToolTip}{\param{unsigned int}{ item}, \param{const wxString\& }{text}}
386
387 Sets the tooltip text for the specified item in the radio group.
388
389 {\bf Platform note:} Currently only implemented in wxMSW and wxGTK2 and does
390 nothing in the other ports.
391
392 \wxheading{Parameters}
393
394 \docparam{item}{Index of the item the tooltip will be shown for.}
395
396 \docparam{text}{Tooltip text for the item, the tooltip is removed if empty.}
397
398 \wxheading{See also}
399
400 \helpref{GetItemToolTip}{wxradioboxgetitemtooltip},\\
401 \helpref{wxWindow::SetToolTip}{wxwindowsettooltip}
402
403
404 \membersection{wxRadioBox::Show}\label{wxradioboxshow}
405
406 \func{virtual bool}{Show}{\param{const bool}{ show = {\tt true}}}
407
408 Shows or hides the entire radiobox.
409
410 \func{virtual bool}{Show}{\param{unsigned int}{ item}, \param{const bool}{ show = {\tt true}}}
411
412 Shows or hides individual buttons.
413
414 \wxheading{Parameters}
415
416 \docparam{show}{true to show, false to hide.}
417
418 \docparam{item}{The zero-based position of the button to show or hide.}
419
420 \wxheading{Return value}
421
422 {\tt true} if the box or item has been shown or hidden or {\tt false} if nothing was
423 done because it already was in the requested state.
424
425 \wxheading{See also}
426
427 \helpref{wxWindow::Show}{wxwindowshow}
428
429 \pythonnote{In place of a single overloaded method name, wxPython
430 implements the following methods:\par
431 \indented{2cm}{\begin{twocollist}
432 \twocolitem{{\bf Show(flag)}}{Shows or hides the entire radiobox.}
433 \twocolitem{{\bf ShowItem(n, flag)}}{Shows or hides individual buttons.}
434 \end{twocollist}}
435 }