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:
parent
fb4888a650
commit
9ec0e7da98
@ -27,6 +27,8 @@ All (GUI):
|
||||
- Fixed wxScrolledWindow sizer behaviour so that the virtual size
|
||||
isn't used to set the window size.
|
||||
- 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:
|
||||
|
||||
|
@ -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
|
||||
wxEVT\_COMMAND\_SPLITTER\_SASH\_POS\_CHANGING event.}
|
||||
\twocolitem{{\bf EVT\_SPLITTER\_SASH\_POS\_CHANGED(id, func)}}{The sash
|
||||
position was changed. May be used to modify the sash position before
|
||||
it is set, or to prevent the change from taking place.
|
||||
position was changed. This event is generated after the user releases the mouse
|
||||
after dragging the splitter.
|
||||
Processes a wxEVT\_COMMAND\_SPLITTER\_SASH\_POS\_CHANGED event.}
|
||||
\twocolitem{{\bf EVT\_SPLITTER\_UNSPLIT(id, func)}}{The splitter has been just
|
||||
unsplit. Processes a wxEVT\_COMMAND\_SPLITTER\_UNSPLIT event. This event can't
|
||||
|
@ -383,7 +383,7 @@ void wxSplitterWindow::OnMouseEvent(wxMouseEvent& event)
|
||||
}
|
||||
else
|
||||
{
|
||||
SetSashPositionAndNotify(posSashNew);
|
||||
DoSetSashPosition(posSashNew);
|
||||
m_needUpdating = true;
|
||||
}
|
||||
}
|
||||
@ -631,13 +631,15 @@ void wxSplitterWindow::SetSashPositionAndNotify(int sashPos)
|
||||
// SetSashPosition():
|
||||
m_requestedSashPosition = INT_MAX;
|
||||
|
||||
if ( DoSetSashPosition(sashPos) )
|
||||
{
|
||||
wxSplitterEvent event(wxEVT_COMMAND_SPLITTER_SASH_POS_CHANGED, this);
|
||||
event.m_data.pos = m_sashPosition;
|
||||
// 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
|
||||
// must generate a CHANGED event at the end of resizing
|
||||
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.
|
||||
|
Loading…
Reference in New Issue
Block a user