send wxEVT_COMMAND_SPLITTER_SASH_POS_CHANGED only once after end of dragging and not after each CHANGING event (modified patch 1076226)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33094 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -27,6 +27,8 @@ All (GUI):
|
|||||||
- Fixed wxScrolledWindow sizer behaviour so that the virtual size
|
- Fixed wxScrolledWindow sizer behaviour so that the virtual size
|
||||||
isn't used to set the window size.
|
isn't used to set the window size.
|
||||||
- Added wxTE_BESTWRAP (based on patch by Mart Raudsepp)
|
- Added wxTE_BESTWRAP (based on patch by Mart Raudsepp)
|
||||||
|
- wxEVT_COMMAND_SPLITTER_SASH_POS_CHANGED is now only sent once at the end of
|
||||||
|
splitter dragging and not after each CHANGING event (Jacobo Vilella Vilahur)
|
||||||
|
|
||||||
Unix:
|
Unix:
|
||||||
|
|
||||||
|
@@ -32,8 +32,8 @@ modify the position of the tracking bar to properly reflect the position that
|
|||||||
would be set if the drag were to be completed at this point. Processes a
|
would be set if the drag were to be completed at this point. Processes a
|
||||||
wxEVT\_COMMAND\_SPLITTER\_SASH\_POS\_CHANGING event.}
|
wxEVT\_COMMAND\_SPLITTER\_SASH\_POS\_CHANGING event.}
|
||||||
\twocolitem{{\bf EVT\_SPLITTER\_SASH\_POS\_CHANGED(id, func)}}{The sash
|
\twocolitem{{\bf EVT\_SPLITTER\_SASH\_POS\_CHANGED(id, func)}}{The sash
|
||||||
position was changed. May be used to modify the sash position before
|
position was changed. This event is generated after the user releases the mouse
|
||||||
it is set, or to prevent the change from taking place.
|
after dragging the splitter.
|
||||||
Processes a wxEVT\_COMMAND\_SPLITTER\_SASH\_POS\_CHANGED event.}
|
Processes a wxEVT\_COMMAND\_SPLITTER\_SASH\_POS\_CHANGED event.}
|
||||||
\twocolitem{{\bf EVT\_SPLITTER\_UNSPLIT(id, func)}}{The splitter has been just
|
\twocolitem{{\bf EVT\_SPLITTER\_UNSPLIT(id, func)}}{The splitter has been just
|
||||||
unsplit. Processes a wxEVT\_COMMAND\_SPLITTER\_UNSPLIT event. This event can't
|
unsplit. Processes a wxEVT\_COMMAND\_SPLITTER\_UNSPLIT event. This event can't
|
||||||
|
@@ -383,7 +383,7 @@ void wxSplitterWindow::OnMouseEvent(wxMouseEvent& event)
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
SetSashPositionAndNotify(posSashNew);
|
DoSetSashPosition(posSashNew);
|
||||||
m_needUpdating = true;
|
m_needUpdating = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -631,13 +631,15 @@ void wxSplitterWindow::SetSashPositionAndNotify(int sashPos)
|
|||||||
// SetSashPosition():
|
// SetSashPosition():
|
||||||
m_requestedSashPosition = INT_MAX;
|
m_requestedSashPosition = INT_MAX;
|
||||||
|
|
||||||
if ( DoSetSashPosition(sashPos) )
|
// note that we must send the event in any case, i.e. even if the sash
|
||||||
{
|
// position hasn't changed and DoSetSashPosition() returns false because we
|
||||||
wxSplitterEvent event(wxEVT_COMMAND_SPLITTER_SASH_POS_CHANGED, this);
|
// must generate a CHANGED event at the end of resizing
|
||||||
event.m_data.pos = m_sashPosition;
|
DoSetSashPosition(sashPos);
|
||||||
|
|
||||||
(void)DoSendEvent(event);
|
wxSplitterEvent event(wxEVT_COMMAND_SPLITTER_SASH_POS_CHANGED, this);
|
||||||
}
|
event.m_data.pos = m_sashPosition;
|
||||||
|
|
||||||
|
(void)DoSendEvent(event);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Position and size subwindows.
|
// Position and size subwindows.
|
||||||
|
Reference in New Issue
Block a user