Native MSW wxSpinCtrl uses a single pixel margin between the text part and the
spin button while the generic version used 2 pixels which resulted in a
slightly different appearance (see #12767).
Use the same margin as MSW now in the generic version too, it should be fine
for the other platforms as well and if it isn't we can always tweak them
later.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66444 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
The code in DoMoveWindow() didn't account for the margin and made the text
control part of the window too large resulting in the truncation of the spin
button.
Simply remember to take margin into account when computing the text width.
See #12767.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66443 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
We need to update the internally stored information about the number of digits
we use and not just update the control appearance accordingly.
Also don't do anything at all when the number of digits didn't really change.
Closes#12260.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65042 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Use "wxWindows licence" and not "wxWidgets licence" (the latter doesn't
exist) and consistently spell "licence" using British spelling.
See #12165.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64940 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Use wxDELETE[A]() functions which automatically NULL out their arguments after
deleting them instead of doing it manually.
Closes#9685.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64656 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
We create wxSpinCtrlGenericBase window disabled at underlying toolkit level
(but enabled at the level of wxWidgets API, of course), but calling Disable()
and Enable() on it re-enabled it resulting in loss of mouse events under
Windows.
Don't re-enable it (again, at the low-level toolkit level only) in its
Enable() any more but keep this window itself always disabled.
Closes#12045.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64302 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
The generic double spin control sent UPDATED events whenever it lost focus,
whether anything changed or not.
Don't send events unless the controls value has really changed.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64229 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
We could be left with an invalid value in the control when leaving it. E.g. in
the widgets sample whose double spin control has range from 0 to 10, 123 could
be entered in it and was not replaced by 10 when the control lost focus. This
happened because the code didn't bother to update the text control if its
contents already corresponded to the internally stored value -- but this was
wrong as it could have a different representation.
Just always update the text unconditionally when synchronizing it with the
internal value.
See #12004.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64228 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
fixed alignment of the spinbutton. Also, since the generic spinctrl
is used then the generic header should be included.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@27301 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Renamed generic wxSpinCtrl::DoGetBestClientSize to DoGetBestSize
( the "Client" appears to be a relic of the past ).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@16303 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775