]> git.saurik.com Git - wxWidgets.git/blame - docs/latex/wx/mouseevt.tex
Fixed missing paint events when overriding DoMoveWindow()
[wxWidgets.git] / docs / latex / wx / mouseevt.tex
CommitLineData
a660d684
KB
1\section{\class{wxMouseEvent}}\label{wxmouseevent}
2
fe604ccd
JS
3This event class contains information about mouse events.
4See \helpref{wxWindow::OnMouseEvent}{wxwindowonmouseevent}.
a660d684 5
4aff28fc
VZ
6{\bf NB: } Note that under Windows mouse enter and leave events are not natively supported
7by the system but are generated by wxWindows itself. This has several
8drawbacks: the LEAVE\_WINDOW event might be received some time after the mouse
9left the window and the state variables for it may have changed during this
10time.
11
a660d684
KB
12\wxheading{Derived from}
13
14\helpref{wxEvent}{wxevent}
15
954b8ae6
JS
16\wxheading{Include files}
17
18<wx/event.h>
19
a660d684
KB
20\wxheading{Event table macros}
21
22To process a mouse event, use these event handler macros to direct input to member
23functions that take a wxMouseEvent argument.
24
25\twocolwidtha{7cm}
26\begin{twocollist}\itemsep=0pt
27\twocolitem{{\bf EVT\_LEFT\_DOWN(func)}}{Process a wxEVT\_LEFT\_DOWN event.}
28\twocolitem{{\bf EVT\_LEFT\_UP(func)}}{Process a wxEVT\_LEFT\_UP event.}
29\twocolitem{{\bf EVT\_LEFT\_DCLICK(func)}}{Process a wxEVT\_LEFT\_DCLICK event.}
30\twocolitem{{\bf EVT\_MIDDLE\_DOWN(func)}}{Process a wxEVT\_MIDDLE\_DOWN event.}
31\twocolitem{{\bf EVT\_MIDDLE\_UP(func)}}{Process a wxEVT\_MIDDLE\_UP event.}
32\twocolitem{{\bf EVT\_MIDDLE\_DCLICK(func)}}{Process a wxEVT\_MIDDLE\_DCLICK event.}
33\twocolitem{{\bf EVT\_RIGHT\_DOWN(func)}}{Process a wxEVT\_RIGHT\_DOWN event.}
34\twocolitem{{\bf EVT\_RIGHT\_UP(func)}}{Process a wxEVT\_RIGHT\_UP event.}
35\twocolitem{{\bf EVT\_RIGHT\_DCLICK(func)}}{Process a wxEVT\_RIGHT\_DCLICK event.}
36\twocolitem{{\bf EVT\_MOTION(func)}}{Process a wxEVT\_MOTION event.}
37\twocolitem{{\bf EVT\_ENTER\_WINDOW(func)}}{Process a wxEVT\_ENTER\_WINDOW event.}
38\twocolitem{{\bf EVT\_LEAVE\_WINDOW(func)}}{Process a wxEVT\_LEAVE\_WINDOW event.}
5de76427 39\twocolitem{{\bf EVT\_MOUSE\_EVENTS(func)}}{Process all mouse events.}
a660d684
KB
40\end{twocollist}%
41
42\latexignore{\rtfignore{\wxheading{Members}}}
43
44\membersection{wxMouseEvent::m\_altDown}
45
46\member{bool}{m\_altDown}
47
48TRUE if the Alt key is pressed down.
49
50\membersection{wxMouseEvent::m\_controlDown}
51
52\member{bool}{m\_controlDown}
53
54TRUE if control key is pressed down.
55
56\membersection{wxMouseEvent::m\_leftDown}
57
58\member{bool}{m\_leftDown}
59
60TRUE if the left mouse button is currently pressed down.
61
62\membersection{wxMouseEvent::m\_middleDown}
63
64\member{bool}{m\_middleDown}
65
66TRUE if the middle mouse button is currently pressed down.
67
68\membersection{wxMouseEvent::m\_rightDown}
69
70\member{bool}{m\_rightDown}
71
72TRUE if the right mouse button is currently pressed down.
73
74\membersection{wxMouseEvent::m\_leftDown}
75
76\member{bool}{m\_leftDown}
77
78TRUE if the left mouse button is currently pressed down.
79
80\membersection{wxMouseEvent::m\_metaDown}
81
82\member{bool}{m\_metaDown}
83
84TRUE if the Meta key is pressed down.
85
86\membersection{wxMouseEvent::m\_shiftDown}
87
88\member{bool}{m\_shiftDown}
89
90TRUE if shift is pressed down.
91
92\membersection{wxMouseEvent::m\_x}
93
803ef874 94\member{long}{m\_x}
a660d684
KB
95
96X-coordinate of the event.
97
98\membersection{wxMouseEvent::m\_y}
99
803ef874 100\member{long}{m\_y}
a660d684
KB
101
102Y-coordinate of the event.
103
104\membersection{wxMouseEvent::wxMouseEvent}
105
106\func{}{wxMouseEvent}{\param{WXTYPE}{ mouseEventType = 0}, \param{int}{ id = 0}}
107
108Constructor. Valid event types are:
109
110\begin{itemize}
111\itemsep=0pt
112\item {\bf wxEVT\_ENTER\_WINDOW}
113\item {\bf wxEVT\_LEAVE\_WINDOW}
114\item {\bf wxEVT\_LEFT\_DOWN}
115\item {\bf wxEVT\_LEFT\_UP}
116\item {\bf wxEVT\_LEFT\_DCLICK}
117\item {\bf wxEVT\_MIDDLE\_DOWN}
118\item {\bf wxEVT\_MIDDLE\_UP}
119\item {\bf wxEVT\_MIDDLE\_DCLICK}
120\item {\bf wxEVT\_RIGHT\_DOWN}
121\item {\bf wxEVT\_RIGHT\_UP}
122\item {\bf wxEVT\_RIGHT\_DCLICK}
123\item {\bf wxEVT\_MOTION}
124\end{itemize}
125
126\membersection{wxMouseEvent::AltDown}
127
128\func{bool}{AltDown}{\void}
129
130Returns TRUE if the Alt key was down at the time of the event.
131
132\membersection{wxMouseEvent::Button}
133
134\func{bool}{Button}{\param{int}{ button}}
135
136Returns TRUE if the identified mouse button is changing state. Valid
137values of {\it button} are 1, 2 or 3 for left, middle and right
138buttons respectively.
139
140Not all mice have middle buttons so a portable application should avoid
141this one.
142
143\membersection{wxMouseEvent::ButtonDClick}\label{buttondclick}
144
145\func{bool}{ButtonDClick}{\param{int}{ but = -1}}
146
147If the argument is omitted, this returns TRUE if the event was a mouse
148double click event. Otherwise the argument specifies which double click event
149was generated (1, 2 or 3 for left, middle and right buttons respectively).
150
151\membersection{wxMouseEvent::ButtonDown}
152
153\func{bool}{ButtonDown}{\param{int}{ but = -1}}
154
155If the argument is omitted, this returns TRUE if the event was a mouse
156button down event. Otherwise the argument specifies which button-down event
157was generated (1, 2 or 3 for left, middle and right buttons respectively).
158
159\membersection{wxMouseEvent::ButtonUp}
160
161\func{bool}{ButtonUp}{\param{int}{ but = -1}}
162
163If the argument is omitted, this returns TRUE if the event was a mouse
164button up event. Otherwise the argument specifies which button-up event
165was generated (1, 2 or 3 for left, middle and right buttons respectively).
166
167\membersection{wxMouseEvent::ControlDown}
168
169\func{bool}{ControlDown}{\void}
170
171Returns TRUE if the control key was down at the time of the event.
172
173\membersection{wxMouseEvent::Dragging}
174
175\func{bool}{Dragging}{\void}
176
177Returns TRUE if this was a dragging event (motion while a button is depressed).
178
179\membersection{wxMouseEvent::Entering}\label{wxmouseevententering}
180
181\func{bool}{Entering}{\void}
182
ff835f50 183Returns TRUE if the mouse was entering the window.
a660d684
KB
184
185See also \helpref{wxMouseEvent::Leaving}{wxmouseeventleaving}.
186
803ef874
JS
187\membersection{wxMouseEvent::GetPosition}\label{wxmouseeventgetposition}
188
189\constfunc{wxPoint}{GetPosition}{\void}
190
191\constfunc{void}{GetPosition}{\param{long *}{x}, \param{long *}{y}}
192
193Sets *x and *y to the position at which the event occurred.
194
195Returns the physical mouse position in pixels.
196
197\membersection{wxMouseEvent::GetLogicalPosition}\label{wxmouseeventgetlogicalposition}
198
199\constfunc{wxPoint}{GetLogicalPosition}{\param{const wxDC\&}{ dc}}
200
201Returns the logical mouse position in pixels (i.e. translated according to the
202translation set for the DC, which usually indicates that the window has been scrolled).
203
a660d684
KB
204\membersection{wxMouseEvent::GetX}\label{wxmouseeventgetx}
205
803ef874 206\constfunc{long}{GetX}{\void}
a660d684 207
803ef874 208Returns X coordinate of the physical mouse event position.
a660d684
KB
209
210\membersection{wxMouseEvent::GetY}\label{wxmouseeventgety}
211
803ef874 212\func{long}{GetY}{\void}
a660d684 213
803ef874 214Returns Y coordinate of the physical mouse event position.
a660d684
KB
215
216\membersection{wxMouseEvent::IsButton}
217
803ef874 218\constfunc{bool}{IsButton}{\void}
a660d684
KB
219
220Returns TRUE if the event was a mouse button event (not necessarily a button down event -
221that may be tested using {\it ButtonDown}).
222
223\membersection{wxMouseEvent::Leaving}\label{wxmouseeventleaving}
224
803ef874 225\constfunc{bool}{Leaving}{\void}
a660d684 226
ff835f50 227Returns TRUE if the mouse was leaving the window.
a660d684
KB
228
229See also \helpref{wxMouseEvent::Entering}{wxmouseevententering}.
230
231\membersection{wxMouseEvent::LeftDClick}
232
803ef874 233\constfunc{bool}{LeftDClick}{\void}
a660d684
KB
234
235Returns TRUE if the event was a left double click.
236
2cdd0d01 237\membersection{wxMouseEvent::LeftDown}\label{wxmouseeventleftdown}
a660d684 238
803ef874 239\constfunc{bool}{LeftDown}{\void}
a660d684
KB
240
241Returns TRUE if the left mouse button changed to down.
242
243\membersection{wxMouseEvent::LeftIsDown}
244
803ef874 245\constfunc{bool}{LeftIsDown}{\void}
a660d684
KB
246
247Returns TRUE if the left mouse button is currently down, independent
248of the current event type.
249
2cdd0d01
VZ
250Please notice that it is {\bf not} the same as
251\helpref{LeftDown}{wxmouseeventleftdown} which returns TRUE if the left mouse
252button was just pressed. Rather, it describes the state of the mouse button
253before the event happened.
254
255This event is usually used in the mouse event handlers which process "move
256mouse" messages to determine whether the user is (still) dragging the mouse.
257
a660d684
KB
258\membersection{wxMouseEvent::LeftUp}
259
803ef874 260\constfunc{bool}{LeftUp}{\void}
a660d684
KB
261
262Returns TRUE if the left mouse button changed to up.
263
264\membersection{wxMouseEvent::MetaDown}
265
803ef874 266\constfunc{bool}{MetaDown}{\void}
a660d684
KB
267
268Returns TRUE if the Meta key was down at the time of the event.
269
270\membersection{wxMouseEvent::MiddleDClick}
271
803ef874 272\constfunc{bool}{MiddleDClick}{\void}
a660d684
KB
273
274Returns TRUE if the event was a middle double click.
275
276\membersection{wxMouseEvent::MiddleDown}
277
803ef874 278\constfunc{bool}{MiddleDown}{\void}
a660d684
KB
279
280Returns TRUE if the middle mouse button changed to down.
281
282\membersection{wxMouseEvent::MiddleIsDown}
283
803ef874 284\constfunc{bool}{MiddleIsDown}{\void}
a660d684
KB
285
286Returns TRUE if the middle mouse button is currently down, independent
287of the current event type.
288
289\membersection{wxMouseEvent::MiddleUp}
290
803ef874 291\constfunc{bool}{MiddleUp}{\void}
a660d684
KB
292
293Returns TRUE if the middle mouse button changed to up.
294
295\membersection{wxMouseEvent::Moving}
296
803ef874 297\constfunc{bool}{Moving}{\void}
a660d684
KB
298
299Returns TRUE if this was a motion event (no buttons depressed).
300
a660d684
KB
301\membersection{wxMouseEvent::RightDClick}
302
803ef874 303\constfunc{bool}{RightDClick}{\void}
a660d684
KB
304
305Returns TRUE if the event was a right double click.
306
307\membersection{wxMouseEvent::RightDown}
308
803ef874 309\constfunc{bool}{RightDown}{\void}
a660d684
KB
310
311Returns TRUE if the right mouse button changed to down.
312
313\membersection{wxMouseEvent::RightIsDown}
314
803ef874 315\constfunc{bool}{RightIsDown}{\void}
a660d684
KB
316
317Returns TRUE if the right mouse button is currently down, independent
318of the current event type.
319
320\membersection{wxMouseEvent::RightUp}
321
803ef874 322\constfunc{bool}{RightUp}{\void}
a660d684
KB
323
324Returns TRUE if the right mouse button changed to up.
325
a660d684
KB
326\membersection{wxMouseEvent::ShiftDown}
327
803ef874 328\constfunc{bool}{ShiftDown}{\void}
a660d684
KB
329
330Returns TRUE if the shift key was down at the time of the event.
331