From: Vadim Zeitlin Date: Mon, 8 Dec 2008 15:20:10 +0000 (+0000) Subject: forgot to capture mouse during drag-resizing X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/10118a24c8a2301bc0abd9d9bf891426d05df951 forgot to capture mouse during drag-resizing git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57192 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/src/generic/headerctrlg.cpp b/src/generic/headerctrlg.cpp index 3a85744ca5..c4e6d1eaa9 100644 --- a/src/generic/headerctrlg.cpp +++ b/src/generic/headerctrlg.cpp @@ -237,6 +237,9 @@ void wxHeaderCtrl::EndDragging() UpdateResizingMarker(-1); m_overlay.Reset(); + + // don't use the special dragging cursor any more + SetCursor(wxNullCursor); } void wxHeaderCtrl::EndResizing(int width) @@ -246,6 +249,11 @@ void wxHeaderCtrl::EndResizing(int width) EndDragging(); + // if dragging was cancelled we must have already lost the mouse capture so + // don't try to release it + if ( width != -1 ) + ReleaseMouse(); + wxHeaderCtrlEvent event(wxEVT_COMMAND_HEADER_END_DRAG, GetId()); event.SetEventObject(this); event.SetColumn(m_colBeingResized); @@ -401,6 +409,8 @@ void wxHeaderCtrl::OnMouse(wxMouseEvent& mevent) { // start resizing the column m_colBeingResized = col; + SetCursor(wxCursor(wxCURSOR_SIZEWE)); + CaptureMouse(); UpdateResizingMarker(xPhysical); } else // on column itself