]> git.saurik.com Git - wxWidgets.git/blobdiff - src/generic/sashwin.cpp
wxCaret MSW bug fixes
[wxWidgets.git] / src / generic / sashwin.cpp
index b079f5c250f70943f994e56f16918f2b99960a42..bb03e9004425af72d1c83127d7744df16e8878ea 100644 (file)
@@ -110,6 +110,14 @@ void wxSashWindow::OnMouseEvent(wxMouseEvent& event)
 
     wxSashEdgePosition sashHit = SashHitTest(x, y);
 
+    // reset the cursor
+#ifdef __WXMOTIF__
+    SetCursor(* wxSTANDARD_CURSOR);
+#endif
+#ifdef __WXMSW__
+    SetCursor(wxCursor());
+#endif
+
        if (event.LeftDown())
        {
         if ( sashHit != wxSASH_NONE )
@@ -146,8 +154,6 @@ void wxSashWindow::OnMouseEvent(wxMouseEvent& event)
         wxScreenDC::EndDrawingOnTop();
         m_dragMode = wxSASH_DRAG_NONE;
         m_draggingEdge = wxSASH_NONE;
-
-        SetCursor(*wxSTANDARD_CURSOR);
     }
        else if (event.LeftUp() && m_dragMode == wxSASH_DRAG_DRAGGING)
        {
@@ -239,10 +245,6 @@ void wxSashWindow::OnMouseEvent(wxMouseEvent& event)
                        SetCursor(*m_sashCursorNS);
                 }
         }
-        else
-        {
-           SetCursor(*wxSTANDARD_CURSOR);
-        }
        }
        else if ( event.Dragging() &&
               ((m_dragMode == wxSASH_DRAG_DRAGGING) || (m_dragMode == wxSASH_DRAG_LEFT_DOWN))
@@ -514,7 +516,7 @@ void wxSashWindow::DrawSashTracker(wxSashEdgePosition edge, int x, int y)
 
     wxPen sashTrackerPen(*wxBLACK, 2, wxSOLID);
 
-    screenDC.SetLogicalFunction(wxXOR);
+    screenDC.SetLogicalFunction(wxINVERT);
     screenDC.SetPen(sashTrackerPen);
     screenDC.SetBrush(*wxTRANSPARENT_BRUSH);