]> git.saurik.com Git - wxWidgets.git/blobdiff - docs/latex/wx/mouseevt.tex
fixed bug in mouse handling
[wxWidgets.git] / docs / latex / wx / mouseevt.tex
index ca61af25f75fbeaf94b874e6ef6a3063ee0422f9..423811a297d65b1094248c72d7ca3bb8cc331f65 100644 (file)
@@ -3,6 +3,26 @@
 This event class contains information about mouse events.
 See \helpref{wxWindow::OnMouseEvent}{wxwindowonmouseevent}.
 
 This event class contains information about mouse events.
 See \helpref{wxWindow::OnMouseEvent}{wxwindowonmouseevent}.
 
+{\bf NB: } Note that under Windows mouse enter and leave events are not natively supported
+by the system but are generated by wxWindows itself. This has several
+drawbacks: the LEAVE\_WINDOW event might be received some time after the mouse
+left the window and the state variables for it may have changed during this
+time.
+
+{\bf NB: } Note the difference between methods like 
+\helpref{LeftDown}{wxmouseeventleftdown} and 
+\helpref{LeftIsDown}{wxmouseeventleftisdown}: the formet returns {\tt TRUE}
+when the event corresponds to the left mouse button click while the latter
+returns {\tt TRUE} if the left mouse button is currently being pressed. For
+example, when the user is dragging the mouse you can use 
+\helpref{LeftIsDown}{wxmouseeventleftisdown} to test
+whether the left mouse button is (still) depressed. Also, by convention, if
+\helpref{LeftDown}{wxmouseeventleftdown} returns {\tt TRUE}, 
+\helpref{LeftIsDown}{wxmouseeventleftisdown} will also return {\tt TRUE} in
+wxWindows whatever the underlying GUI behaviour is (which is
+platform-dependent). The same applies, of course, to other mouse buttons as
+well.
+
 \wxheading{Derived from}
 
 \helpref{wxEvent}{wxevent}
 \wxheading{Derived from}
 
 \helpref{wxEvent}{wxevent}
@@ -174,7 +194,7 @@ Returns TRUE if this was a dragging event (motion while a button is depressed).
 
 \func{bool}{Entering}{\void}
 
 
 \func{bool}{Entering}{\void}
 
-Returns TRUE if the mouse was entering the window (MS Windows and Motif).
+Returns TRUE if the mouse was entering the window.
 
 See also \helpref{wxMouseEvent::Leaving}{wxmouseeventleaving}.
 
 
 See also \helpref{wxMouseEvent::Leaving}{wxmouseeventleaving}.
 
@@ -182,7 +202,9 @@ See also \helpref{wxMouseEvent::Leaving}{wxmouseeventleaving}.
 
 \constfunc{wxPoint}{GetPosition}{\void}
 
 
 \constfunc{wxPoint}{GetPosition}{\void}
 
-\constfunc{void}{GetPosition}{\param{long *}{x}, \param{long *}{y}}
+\constfunc{void}{GetPosition}{\param{wxCoord*}{ x}, \param{wxCoord*}{ y}}
+
+\constfunc{void}{GetPosition}{\param{long*}{ x}, \param{long*}{ y}}
 
 Sets *x and *y to the position at which the event occurred.
 
 
 Sets *x and *y to the position at which the event occurred.
 
@@ -218,7 +240,7 @@ that may be tested using {\it ButtonDown}).
 
 \constfunc{bool}{Leaving}{\void}
 
 
 \constfunc{bool}{Leaving}{\void}
 
-Returns TRUE if the mouse was leaving the window (MS Windows and Motif).
+Returns TRUE if the mouse was leaving the window.
 
 See also \helpref{wxMouseEvent::Entering}{wxmouseevententering}.
 
 
 See also \helpref{wxMouseEvent::Entering}{wxmouseevententering}.
 
@@ -228,19 +250,27 @@ See also \helpref{wxMouseEvent::Entering}{wxmouseevententering}.
 
 Returns TRUE if the event was a left double click.
 
 
 Returns TRUE if the event was a left double click.
 
-\membersection{wxMouseEvent::LeftDown}
+\membersection{wxMouseEvent::LeftDown}\label{wxmouseeventleftdown}
 
 \constfunc{bool}{LeftDown}{\void}
 
 Returns TRUE if the left mouse button changed to down.
 
 
 \constfunc{bool}{LeftDown}{\void}
 
 Returns TRUE if the left mouse button changed to down.
 
-\membersection{wxMouseEvent::LeftIsDown}
+\membersection{wxMouseEvent::LeftIsDown}\label{wxmouseeventleftisdown}
 
 \constfunc{bool}{LeftIsDown}{\void}
 
 Returns TRUE if the left mouse button is currently down, independent
 of the current event type.
 
 
 \constfunc{bool}{LeftIsDown}{\void}
 
 Returns TRUE if the left mouse button is currently down, independent
 of the current event type.
 
+Please notice that it is {\bf not} the same as 
+\helpref{LeftDown}{wxmouseeventleftdown} which returns TRUE if the left mouse
+button was just pressed. Rather, it describes the state of the mouse button
+before the event happened.
+
+This event is usually used in the mouse event handlers which process "move
+mouse" messages to determine whether the user is (still) dragging the mouse.
+
 \membersection{wxMouseEvent::LeftUp}
 
 \constfunc{bool}{LeftUp}{\void}
 \membersection{wxMouseEvent::LeftUp}
 
 \constfunc{bool}{LeftUp}{\void}
@@ -265,7 +295,7 @@ Returns TRUE if the event was a middle double click.
 
 Returns TRUE if the middle mouse button changed to down.
 
 
 Returns TRUE if the middle mouse button changed to down.
 
-\membersection{wxMouseEvent::MiddleIsDown}
+\membersection{wxMouseEvent::MiddleIsDown}\label{wxmouseeventmiddleisdown}
 
 \constfunc{bool}{MiddleIsDown}{\void}
 
 
 \constfunc{bool}{MiddleIsDown}{\void}
 
@@ -296,7 +326,7 @@ Returns TRUE if the event was a right double click.
 
 Returns TRUE if the right mouse button changed to down.
 
 
 Returns TRUE if the right mouse button changed to down.
 
-\membersection{wxMouseEvent::RightIsDown}
+\membersection{wxMouseEvent::RightIsDown}\label{wxmouseeventrightisdown}
 
 \constfunc{bool}{RightIsDown}{\void}
 
 
 \constfunc{bool}{RightIsDown}{\void}