]> git.saurik.com Git - wxWidgets.git/commitdiff
wxMouseEvent::Moving() shouldn't return true when we're really dragging the mouse
authorVadim Zeitlin <vadim@wxwidgets.org>
Thu, 16 Oct 2003 07:55:25 +0000 (07:55 +0000)
committerVadim Zeitlin <vadim@wxwidgets.org>
Thu, 16 Oct 2003 07:55:25 +0000 (07:55 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@24183 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

docs/changes.txt
docs/latex/wx/mouseevt.tex
include/wx/event.h

index 35ded0dfc05c4e92a08452f7913a19ddacfa1534..9035aa91a0ca1bfb027254dfad4e34579eb7bc46 100644 (file)
@@ -28,6 +28,7 @@ INCOMPATIBLE CHANGES SINCE 2.4.x
   new colours
 - wxWindow::Clear() is now called ClearBackground()
 - pointer returned by wxFont::GetNativeFontInfo() must not be deleted now
+- wxMouseEvent::Moving() doesn't return true if mouse is being dragged
 
 
 DEPRECATED METHODS SINCE 2.4.x
index 75cb7c3c76ed82bb90b316f1ca6a750d54e45374..e7078931bd9470ec4989560e3d7fa6d09c8e761a 100644 (file)
@@ -62,72 +62,84 @@ functions that take a wxMouseEvent argument.
 
 \latexignore{\rtfignore{\wxheading{Members}}}
 
+
 \membersection{wxMouseEvent::m\_altDown}
 
 \member{bool}{m\_altDown}
 
 true if the Alt key is pressed down.
 
+
 \membersection{wxMouseEvent::m\_controlDown}
 
 \member{bool}{m\_controlDown}
 
 true if control key is pressed down.
 
+
 \membersection{wxMouseEvent::m\_leftDown}
 
 \member{bool}{m\_leftDown}
 
 true if the left mouse button is currently pressed down.
 
+
 \membersection{wxMouseEvent::m\_middleDown}
 
 \member{bool}{m\_middleDown}
 
 true if the middle mouse button is currently pressed down.
 
+
 \membersection{wxMouseEvent::m\_rightDown}
 
 \member{bool}{m\_rightDown}
 
 true if the right mouse button is currently pressed down.
 
+
 \membersection{wxMouseEvent::m\_metaDown}
 
 \member{bool}{m\_metaDown}
 
 true if the Meta key is pressed down.
 
+
 \membersection{wxMouseEvent::m\_shiftDown}
 
 \member{bool}{m\_shiftDown}
 
 true if shift is pressed down.
 
+
 \membersection{wxMouseEvent::m\_x}
 
 \member{long}{m\_x}
 
 X-coordinate of the event.
 
+
 \membersection{wxMouseEvent::m\_y}
 
 \member{long}{m\_y}
 
 Y-coordinate of the event.
 
+
 \membersection{wxMouseEvent::m\_wheelRotation}
 
 \member{int}{m\_wheelRotation}
 
 The distance the mouse wheel is rotated.
 
+
 \membersection{wxMouseEvent::m\_wheelDelta}
 
 \member{int}{m\_wheelDelta}
 
 The wheel delta, normally $120$.
 
+
 \membersection{wxMouseEvent::m\_linesPerAction}
 
 \member{int}{m\_linesPerAction}
@@ -136,6 +148,7 @@ The configured number of lines (or whatever) to be scrolled per wheel
 action.
 
 
+
 \membersection{wxMouseEvent::wxMouseEvent}
 
 \func{}{wxMouseEvent}{\param{WXTYPE}{ mouseEventType = 0}, \param{int}{ id = 0}}
@@ -159,12 +172,14 @@ Constructor. Valid event types are:
 \item {\bf wxEVT\_MOUSEWHEEL}
 \end{itemize}
 
+
 \membersection{wxMouseEvent::AltDown}
 
 \func{bool}{AltDown}{\void}
 
 Returns true if the Alt key was down at the time of the event.
 
+
 \membersection{wxMouseEvent::Button}\label{wxmouseeventbutton}
 
 \func{bool}{Button}{\param{int}{ button}}
@@ -179,6 +194,7 @@ values of {\it button} are:
 \twocolitem{{\tt wxMOUSE\_BTN\_ANY}}{check if any button was pressed}
 \end{twocollist}
 
+
 \membersection{wxMouseEvent::ButtonDClick}
 
 \func{bool}{ButtonDClick}{\param{int}{ but = wxMOUSE\_BTN\_ANY}}
@@ -188,6 +204,7 @@ double click event. Otherwise the argument specifies which double click event
 was generated (see \helpref{Button}{wxmouseeventbutton} for the possible
 values).
 
+
 \membersection{wxMouseEvent::ButtonDown}
 
 \func{bool}{ButtonDown}{\param{int}{ but = -1}}
@@ -198,6 +215,7 @@ was generated (see \helpref{Button}{wxmouseeventbutton} for the possible
 values).
 
 
+
 \membersection{wxMouseEvent::ButtonUp}
 
 \func{bool}{ButtonUp}{\param{int}{ but = -1}}
@@ -208,12 +226,14 @@ was generated (see \helpref{Button}{wxmouseeventbutton} for the possible
 values).
 
 
+
 \membersection{wxMouseEvent::ControlDown}
 
 \func{bool}{ControlDown}{\void}
 
 Returns true if the control key was down at the time of the event.
 
+
 \membersection{wxMouseEvent::Dragging}\label{wxmouseeventdragging}
 
 \func{bool}{Dragging}{\void}
@@ -224,6 +244,7 @@ Returns true if this was a dragging event (motion while a button is depressed).
 
 \helpref{Moving}{wxmouseeventmoving}
 
+
 \membersection{wxMouseEvent::Entering}\label{wxmouseevententering}
 
 \func{bool}{Entering}{\void}
@@ -232,6 +253,7 @@ Returns true if the mouse was entering the window.
 
 See also \helpref{wxMouseEvent::Leaving}{wxmouseeventleaving}.
 
+
 \membersection{wxMouseEvent::GetButton}\label{wxmouseeventgetbutton}
 
 \constfunc{int}{GetButton}{\void}
@@ -242,6 +264,7 @@ Otherwise {\tt wxMOUSE\_BTN\_LEFT} is returned for the left button down, up and
 double click events, {\tt wxMOUSE\_BTN\_MIDDLE} and {\tt wxMOUSE\_BTN\_RIGHT} 
 for the same events for the middle and the right buttons respectively.
 
+
 \membersection{wxMouseEvent::GetPosition}\label{wxmouseeventgetposition}
 
 \constfunc{wxPoint}{GetPosition}{\void}
@@ -254,6 +277,7 @@ Sets *x and *y to the position at which the event occurred.
 
 Returns the physical mouse position in pixels.
 
+
 \membersection{wxMouseEvent::GetLogicalPosition}\label{wxmouseeventgetlogicalposition}
 
 \constfunc{wxPoint}{GetLogicalPosition}{\param{const wxDC\&}{ dc}}
@@ -262,6 +286,7 @@ Returns the logical mouse position in pixels (i.e. translated according to the
 translation set for the DC, which usually indicates that the window has been scrolled).
 
 
+
 \membersection{wxMouseEvent::GetLinesPerAction}\label{wxmouseeventgetlinesperaction}
 
 \constfunc{int}{GetLinesPerAction}{\void}
@@ -269,6 +294,7 @@ translation set for the DC, which usually indicates that the window has been scr
 Returns the configured number of lines (or whatever) to be scrolled per
 wheel action.  Defaults to three.
 
+
 \membersection{wxMouseEvent::GetWheelRotation}\label{wxmouseeventgetwheelrotation}
 
 \constfunc{int}{GetWheelRotation}{\void}
@@ -281,6 +307,7 @@ event is equal to 1 line or whatever, but you should be able to either
 do partial line scrolling or wait until +/-WheelDelta rotation values
 have been accumulated before scrolling.
 
+
 \membersection{wxMouseEvent::GetWheelDelta}\label{wxmouseeventgetwheeldelta}
 
 \constfunc{int}{GetWheelDelta}{\void}
@@ -289,18 +316,21 @@ Get wheel delta, normally $120$.  This is the threshold for action to be
 taken, and one such action (for example, scrolling one increment)
 should occur for each delta.
 
+
 \membersection{wxMouseEvent::GetX}\label{wxmouseeventgetx}
 
 \constfunc{long}{GetX}{\void}
 
 Returns X coordinate of the physical mouse event position.
 
+
 \membersection{wxMouseEvent::GetY}\label{wxmouseeventgety}
 
 \func{long}{GetY}{\void}
 
 Returns Y coordinate of the physical mouse event position.
 
+
 \membersection{wxMouseEvent::IsButton}
 
 \constfunc{bool}{IsButton}{\void}
@@ -308,6 +338,7 @@ Returns Y coordinate of the physical mouse event position.
 Returns true if the event was a mouse button event (not necessarily a button down event -
 that may be tested using {\it ButtonDown}).
 
+
 \membersection{wxMouseEvent::IsPageScroll}
 
 \constfunc{bool}{IsPageScroll}{\void}
@@ -315,6 +346,7 @@ that may be tested using {\it ButtonDown}).
 Returns true if the system has been setup to do page scrolling with
 the mouse wheel instead of line scrolling.
 
+
 \membersection{wxMouseEvent::Leaving}\label{wxmouseeventleaving}
 
 \constfunc{bool}{Leaving}{\void}
@@ -323,18 +355,21 @@ Returns true if the mouse was leaving the window.
 
 See also \helpref{wxMouseEvent::Entering}{wxmouseevententering}.
 
+
 \membersection{wxMouseEvent::LeftDClick}
 
 \constfunc{bool}{LeftDClick}{\void}
 
 Returns true if the event was a left double click.
 
+
 \membersection{wxMouseEvent::LeftDown}\label{wxmouseeventleftdown}
 
 \constfunc{bool}{LeftDown}{\void}
 
 Returns true if the left mouse button changed to down.
 
+
 \membersection{wxMouseEvent::LeftIsDown}\label{wxmouseeventleftisdown}
 
 \constfunc{bool}{LeftIsDown}{\void}
@@ -350,30 +385,35 @@ 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}
 
 Returns true if the left mouse button changed to up.
 
+
 \membersection{wxMouseEvent::MetaDown}
 
 \constfunc{bool}{MetaDown}{\void}
 
 Returns true if the Meta key was down at the time of the event.
 
+
 \membersection{wxMouseEvent::MiddleDClick}
 
 \constfunc{bool}{MiddleDClick}{\void}
 
 Returns true if the event was a middle double click.
 
+
 \membersection{wxMouseEvent::MiddleDown}
 
 \constfunc{bool}{MiddleDown}{\void}
 
 Returns true if the middle mouse button changed to down.
 
+
 \membersection{wxMouseEvent::MiddleIsDown}\label{wxmouseeventmiddleisdown}
 
 \constfunc{bool}{MiddleIsDown}{\void}
@@ -381,19 +421,22 @@ Returns true if the middle mouse button changed to down.
 Returns true if the middle mouse button is currently down, independent
 of the current event type.
 
+
 \membersection{wxMouseEvent::MiddleUp}
 
 \constfunc{bool}{MiddleUp}{\void}
 
 Returns true if the middle mouse button changed to up.
 
+
 \membersection{wxMouseEvent::Moving}\label{wxmouseeventmoving}
 
 \constfunc{bool}{Moving}{\void}
 
-Returns true if this was a motion event (whether some buttons are currently
-pressed or not, use \helpref{Dragging}{wxmouseeventdragging} if you need to
-distinguish between these situations).
+Returns true if this was a motion event and no mouse buttons were pressed. 
+If any mouse button is held pressed, then this method returns \false and 
+\helpref{Dragging}{wxmouseeventdragging} returns \true.
+
 
 \membersection{wxMouseEvent::RightDClick}
 
@@ -401,12 +444,14 @@ distinguish between these situations).
 
 Returns true if the event was a right double click.
 
+
 \membersection{wxMouseEvent::RightDown}
 
 \constfunc{bool}{RightDown}{\void}
 
 Returns true if the right mouse button changed to down.
 
+
 \membersection{wxMouseEvent::RightIsDown}\label{wxmouseeventrightisdown}
 
 \constfunc{bool}{RightIsDown}{\void}
@@ -414,12 +459,14 @@ Returns true if the right mouse button changed to down.
 Returns true if the right mouse button is currently down, independent
 of the current event type.
 
+
 \membersection{wxMouseEvent::RightUp}
 
 \constfunc{bool}{RightUp}{\void}
 
 Returns true if the right mouse button changed to up.
 
+
 \membersection{wxMouseEvent::ShiftDown}
 
 \constfunc{bool}{ShiftDown}{\void}
index 267ccbd8d0e50a46dba1da7c0bc0eaca482b29b7..c5277ee39ad9c3cae479352a1c7c32f5bebf7c67 100644 (file)
@@ -722,12 +722,14 @@ public:
     // True if a button is down and the mouse is moving
     bool Dragging() const
     {
-        return ((m_eventType == wxEVT_MOTION) &&
-                (LeftIsDown() || MiddleIsDown() || RightIsDown()));
+        return (m_eventType == wxEVT_MOTION) && ButtonDown(wxMOUSE_BTN_ANY);
     }
 
     // True if the mouse is moving, and no button is down
-    bool Moving() const { return (m_eventType == wxEVT_MOTION); }
+    bool Moving() const
+    {
+        return (m_eventType == wxEVT_MOTION) && !ButtonDown(wxMOUSE_BTN_ANY);
+    }
 
     // True if the mouse is just entering the window
     bool Entering() const { return (m_eventType == wxEVT_ENTER_WINDOW); }