]> git.saurik.com Git - wxWidgets.git/blob - docs/latex/wx/cmdevent.tex
Use the new event handler macros
[wxWidgets.git] / docs / latex / wx / cmdevent.tex
1 \section{\class{wxCommandEvent}}\label{wxcommandevent}
2
3 This event class contains information about command events, which originate from a variety of
4 simple controls. More complex controls, such as \helpref{wxTreeCtrl}{wxtreectrl}, have separate command event classes.
5
6 \wxheading{Derived from}
7
8 \helpref{wxEvent}{wxevent}
9
10 \wxheading{Include files}
11
12 <wx/event.h>
13
14 \wxheading{Event table macros}
15
16 To process a menu command event, use these event handler macros to direct input to member
17 functions that take a wxCommandEvent argument.
18
19 \twocolwidtha{7cm}
20 \begin{twocollist}\itemsep=0pt
21 \twocolitem{{\bf EVT\_COMMAND(id, event, func)}}{Process a command, supplying the window identifier,
22 command event identifier, and member function.}
23 \twocolitem{{\bf EVT\_COMMAND\_RANGE(id1, id2, event, func)}}{Process a command for a range
24 of window identifiers, supplying the minimum and maximum window identifiers,
25 command event identifier, and member function.}
26 \twocolitem{{\bf EVT\_BUTTON(id, func)}}{Process a wxEVT\_COMMAND\_BUTTON\_CLICKED command,
27 which is generated by a wxButton control.}
28 \twocolitem{{\bf EVT\_CHECKBOX(id, func)}}{Process a wxEVT\_COMMAND\_CHECKBOX\_CLICKED command,
29 which is generated by a wxCheckBox control.}
30 \twocolitem{{\bf EVT\_CHOICE(id, func)}}{Process a wxEVT\_COMMAND\_CHOICE\_SELECTED command,
31 which is generated by a wxChoice control.}
32 \twocolitem{{\bf EVT\_COMBOBOX(id, func)}}{Process a wxEVT\_COMMAND\_COMBOBOX\_SELECTED command,
33 which is generated by a wxComboBox control.}
34 \twocolitem{{\bf EVT\_LISTBOX(id, func)}}{Process a wxEVT\_COMMAND\_LISTBOX\_SELECTED command,
35 which is generated by a wxListBox control.}
36 \twocolitem{{\bf EVT\_LISTBOX\_DCLICK(id, func)}}{Process a wxEVT\_COMMAND\_LISTBOX\_DOUBLECLICKED command,
37 which is generated by a wxListBox control.}
38 \twocolitem{{\bf EVT\_MENU(id, func)}}{Process a wxEVT\_COMMAND\_MENU\_SELECTED command,
39 which is generated by a menu item.}
40 \twocolitem{{\bf EVT\_MENU\_RANGE(id1, id2, func)}}{Process a wxEVT\_COMMAND\_MENU\_RANGE command,
41 which is generated by a range of menu items.}
42 \twocolitem{{\bf EVT\_CONTEXT\_MENU(func)}}{Process the event generated
43 when the user has requested a popup menu to appear by pressing a special
44 keyboard key (under Windows) or by right clicking the mouse.}
45 \twocolitem{{\bf EVT\_RADIOBOX(id, func)}}{Process a wxEVT\_COMMAND\_RADIOBOX\_SELECTED command,
46 which is generated by a wxRadioBox control.}
47 \twocolitem{{\bf EVT\_RADIOBUTTON(id, func)}}{Process a wxEVT\_COMMAND\_RADIOBUTTON\_SELECTED command,
48 which is generated by a wxRadioButton control.}
49 \twocolitem{{\bf EVT\_SCROLLBAR(id, func)}}{Process a wxEVT\_COMMAND\_SCROLLBAR\_UPDATED command,
50 which is generated by a wxScrollBar control. This is provided for compatibility only;
51 more specific scrollbar event macros should be used instead (see \helpref{wxScrollEvent}{wxscrollevent}).}
52 \twocolitem{{\bf EVT\_SLIDER(id, func)}}{Process a wxEVT\_COMMAND\_SLIDER\_UPDATED command,
53 which is generated by a wxSlider control.}
54 \twocolitem{{\bf EVT\_TEXT(id, func)}}{Process a wxEVT\_COMMAND\_TEXT\_UPDATED command,
55 which is generated by a wxTextCtrl control.}
56 \twocolitem{{\bf EVT\_TEXT\_ENTER(id, func)}}{Process a wxEVT\_COMMAND\_TEXT\_ENTER command,
57 which is generated by a wxTextCtrl control. Note that you must use
58 wxTE\_PROCESS\_ENTER flag when creating the control if you want it to generate
59 such events.}
60 \twocolitem{{\bf EVT\_TEXT\_MAXLEN(id, func)}}{Process a wxEVT\_COMMAND\_TEXT\_MAXLEN command,
61 which is generated by a wxTextCtrl control when the user tries to enter more
62 characters into it than the limit previously set with
63 \helpref{SetMaxLength}{wxtextctrlsetmaxlength}.}
64 \twocolitem{{\bf EVT\_TOOL(id, func)}}{Process a wxEVT\_COMMAND\_TOOL\_CLICKED event
65 (a synonym for wxEVT\_COMMAND\_MENU\_SELECTED). Pass the id of the tool.}
66 \twocolitem{{\bf EVT\_TOOL\_RANGE(id1, id2, func)}}{Process a wxEVT\_COMMAND\_TOOL\_CLICKED event
67 for a range of identifiers. Pass the ids of the tools.}
68 \twocolitem{{\bf EVT\_TOOL\_RCLICKED(id, func)}}{Process a wxEVT\_COMMAND\_TOOL\_RCLICKED event.
69 Pass the id of the tool.}
70 \twocolitem{{\bf EVT\_TOOL\_RCLICKED\_RANGE(id1, id2, func)}}{Process a wxEVT\_COMMAND\_TOOL\_RCLICKED event
71 for a range of ids. Pass the ids of the tools.}
72 \twocolitem{{\bf EVT\_TOOL\_ENTER(id, func)}}{Process a wxEVT\_COMMAND\_TOOL\_ENTER event.
73 Pass the id of the toolbar itself. The value of wxCommandEvent::GetSelection is the tool id, or -1 if the mouse cursor has moved off a tool.}
74 \twocolitem{{\bf EVT\_COMMAND\_LEFT\_CLICK(id, func)}}{Process a wxEVT\_COMMAND\_LEFT\_CLICK command,
75 which is generated by a control (Windows 95 and NT only).}
76 \twocolitem{{\bf EVT\_COMMAND\_LEFT\_DCLICK(id, func)}}{Process a wxEVT\_COMMAND\_LEFT\_DCLICK command,
77 which is generated by a control (Windows 95 and NT only).}
78 \twocolitem{{\bf EVT\_COMMAND\_RIGHT\_CLICK(id, func)}}{Process a wxEVT\_COMMAND\_RIGHT\_CLICK command,
79 which is generated by a control (Windows 95 and NT only).}
80 \twocolitem{{\bf EVT\_COMMAND\_SET\_FOCUS(id, func)}}{Process a wxEVT\_COMMAND\_SET\_FOCUS command,
81 which is generated by a control (Windows 95 and NT only).}
82 \twocolitem{{\bf EVT\_COMMAND\_KILL\_FOCUS(id, func)}}{Process a wxEVT\_COMMAND\_KILL\_FOCUS command,
83 which is generated by a control (Windows 95 and NT only).}
84 \twocolitem{{\bf EVT\_COMMAND\_ENTER(id, func)}}{Process a wxEVT\_COMMAND\_ENTER command,
85 which is generated by a control.}
86 \end{twocollist}%
87
88 \latexignore{\rtfignore{\wxheading{Members}}}
89
90 \membersection{wxCommandEvent::m\_clientData}\label{wxcommandeventmclientdata}
91
92 \member{void*}{m\_clientData}
93
94 Contains a pointer to client data for listboxes and choices, if the event
95 was a selection. Beware, this is not implemented anyway...
96
97 \membersection{wxCommandEvent::m\_commandInt}\label{wxcommandeventmcommandint}
98
99 \member{int}{m\_commandInt}
100
101 Contains an integer identifier corresponding to a listbox, choice or
102 radiobox selection (only if the event was a selection, not a
103 deselection), or a boolean value representing the value of a checkbox.
104
105 \membersection{wxCommandEvent::m\_commandString}\label{wxcommandeventmcommandstring}
106
107 \member{wxString}{m\_commandString}
108
109 Contains a string corresponding to a listbox or choice selection.
110
111 \membersection{wxCommandEvent::m\_extraLong}\label{wxcommandeventmextralong}
112
113 \member{long}{m\_extraLong}
114
115 Extra information. If the event comes from a listbox selection, it is
116 a boolean determining whether the event was a selection (true) or a
117 deselection (false). A listbox deselection only occurs for
118 multiple-selection boxes, and in this case the index and string values
119 are indeterminate and the listbox must be examined by the application.
120
121 \membersection{wxCommandEvent::wxCommandEvent}\label{wxcommandeventctor}
122
123 \func{}{wxCommandEvent}{\param{WXTYPE}{ commandEventType = 0}, \param{int}{ id = 0}}
124
125 Constructor.
126
127 \membersection{wxCommandEvent::Checked}\label{wxcommandeventchecked}
128
129 \constfunc{bool}{Checked}{\void}
130
131 Deprecated, use \helpref{IsChecked}{wxcommandeventischecked} instead.
132
133 \membersection{wxCommandEvent::GetClientData}\label{wxcommandeventgetclientdata}
134
135 \func{void*}{GetClientData}{\void}
136
137 Returns client data pointer for a listbox or choice selection event
138 (not valid for a deselection).
139
140 \membersection{wxCommandEvent::GetClientObject}\label{wxcommandeventgetclientobject}
141
142 \func{wxClientData *}{GetClientObject}{\void}
143
144 Returns client object pointer for a listbox or choice selection event
145 (not valid for a deselection).
146
147 \membersection{wxCommandEvent::GetExtraLong}\label{wxcommandeventgetextralong}
148
149 \func{long}{GetExtraLong}{\void}
150
151 Returns the {\bf m\_extraLong} member.
152
153 \membersection{wxCommandEvent::GetInt}\label{wxcommandeventgetint}
154
155 \func{int}{GetInt}{\void}
156
157 Returns the {\bf m\_commandInt} member.
158
159 \membersection{wxCommandEvent::GetSelection}\label{wxcommandeventgetselection}
160
161 \func{int}{GetSelection}{\void}
162
163 Returns item index for a listbox or choice selection event (not valid for
164 a deselection).
165
166 \membersection{wxCommandEvent::GetString}\label{wxcommandeventgetstring}
167
168 \func{wxString}{GetString}{\void}
169
170 Returns item string for a listbox or choice selection event (not valid for
171 a deselection).
172
173 \membersection{wxCommandEvent::IsChecked}\label{wxcommandeventischecked}
174
175 \constfunc{bool}{IsChecked}{\void}
176
177 This method can be used with checkbox and menu events: for the checkboxes, the
178 method returns {\tt true} for a selection event and {\tt false} for a
179 deselection one. For the menu events, this method indicates if the menu item
180 just has become checked or unchecked (and thus only makes sense for checkable
181 menu items).
182
183 \membersection{wxCommandEvent::IsSelection}\label{wxcommandeventisselection}
184
185 \func{bool}{IsSelection}{\void}
186
187 For a listbox or similar event, returns true if it is a selection, false if it
188 is a deselection.
189
190 \membersection{wxCommandEvent::SetClientData}\label{wxcommandeventsetclientdata}
191
192 \func{void}{SetClientData}{\param{void*}{ clientData}}
193
194 Sets the client data for this event.
195
196 \membersection{wxCommandEvent::SetClientObject}\label{wxcommandeventsetclientobject}
197
198 \func{void}{SetClientObject}{\param{wxClientData*}{ clientObject}}
199
200 Sets the client object for this event. The client object is \emph{not} owned by the event
201 object and the event object will not delete the client object in its destructor.
202 The client object must be owned and deleted by another object (e.g. a control)
203 that has longer life time than the event object.
204
205 \membersection{wxCommandEvent::SetExtraLong}\label{wxcommandeventsetextralong}
206
207 \func{void}{SetExtraLong}{\param{int}{ extraLong}}
208
209 Sets the {\bf m\_extraLong} member.
210
211 \membersection{wxCommandEvent::SetInt}\label{wxcommandeventsetint}
212
213 \func{void}{SetInt}{\param{int}{ intCommand}}
214
215 Sets the {\bf m\_commandInt} member.
216
217 \membersection{wxCommandEvent::SetString}\label{wxcommandeventsetstring}
218
219 \func{void}{SetString}{\param{const wxString\&}{ string}}
220
221 Sets the {\bf m\_commandString} member.
222