]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/window.cpp
compilation fix
[wxWidgets.git] / src / msw / window.cpp
index 45e349fff9ff32c51e2eb507fe8fdb0abf180d44..738f94dda0a9833ceb049a2fb035440c8f41c997 100644 (file)
@@ -546,7 +546,7 @@ wxString wxWindowMSW::GetTitle() const
     return wxGetWindowText(GetHWND());
 }
 
-void wxWindowMSW::CaptureMouse()
+void wxWindowMSW::DoCaptureMouse()
 {
     HWND hWnd = GetHwnd();
     if ( hWnd )
@@ -555,7 +555,7 @@ void wxWindowMSW::CaptureMouse()
     }
 }
 
-void wxWindowMSW::ReleaseMouse()
+void wxWindowMSW::DoReleaseMouse()
 {
     if ( !::ReleaseCapture() )
     {
@@ -1180,7 +1180,7 @@ void wxWindowMSW::OnIdle(wxIdleEvent& WXUNUSED(event))
     // Check if we need to send a LEAVE event
     if ( m_mouseInWindow )
     {
-        if ( !IsMouseInWindow() )
+        if ( !IsMouseInWindow() && !HasCapture())
         {
             // Generate a LEAVE event
             m_mouseInWindow = FALSE;
@@ -1543,7 +1543,8 @@ void wxWindowMSW::DoSetClientSize(int width, int height)
         ::GetClientRect(GetHwnd(), &rectClient);
 
         // if the size is already ok, stop here (rectClient.left = top = 0)
-        if ( rectClient.right == width && rectClient.bottom == height )
+        if ( (rectClient.right == width || width == -1) &&
+             (rectClient.bottom == height || height == -1) )
         {
             break;
         }