- 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:
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
}
else
{
- SetSashPositionAndNotify(posSashNew);
+ DoSetSashPosition(posSashNew);
m_needUpdating = true;
}
}
// 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.