Round the values instead of truncating them when converting from pixel values
to Win32 ::mouse_event() 0..65535 scale. This probably doesn't make any real
difference in practice but seems more correct and also avoids g++ warnings.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67963 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
No real changes, just make the code slightly more readable by using a symbolic
constant instead of a magic value.
This also avoids g++ warnings about implicit conversion of a signed value (-1)
to unsigned type (DWORD).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67962 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Make the conversion of logical coordinates to the device ones more precise by
avoiding errors due to truncation of floating point values to integer ones.
See #13284.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67961 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This was mainly done to suppress g++ warning about implicit float to int
conversion but it also seems to make more sense to round the value here
instead of truncating it to int.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67960 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Show focus rectangle around the control when it has focus. Also handle the
space key to trigger the link.
Also allow using either the native or generic version of the class in the
widgets sample.
Closes#11285.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67948 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
After the recent changes we could try to use an invalid bitmap in wxMSW toggle
button code as GetNormalState() could return State_Pressed and then we used
the bitmap for the pressed state unconditionally even if it wasn't set.
It seems more correct to always fall back to the normal bitmap as the pressed
state is already taken into account by GetButtonState().
This fixes unit test failures under MSW after the button classes refactoring.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67946 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Don't mix up column internal indices and display positions in wxGrid keyboard
navigation code.
This ensures that pressing left/right cursor arrows always moves the cursor to
the previous/next column on the display, even if the columns were reordered.
Closes#13281.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67944 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
No real changes, just call the variables containing display positions "pos"
and not "line" in wxGridOperations to avoid giving the impression that they
contain indices.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67943 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Don't crash in timer callback added to work around broken Ubuntu 11.04 WM,
remove it when the window is being destroyed.
This corrects a crash which happened if a TLW was created and destroyed before
this timer had time to fire under Ubuntu.
Closes#13146.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67942 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Introduce wxAnyButton class, a common base class for wxButton and
wxToggleButton, allowing to reuse the same implementation for them.
This also allows to implement support for bitmaps in wxToggleButton for all
platforms and make wxBitmapToggleButton a trivial subclass of it everywhere,
similarly to wxBitmapButton and wxButton.
Closes#13198.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67931 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Allow changing the (fixed) row height without using wxDV_VARIABLE_LINE_HEIGHT
which may slow down the control display too much.
The new method is not implemented for the native GTK and OS X implementations
yet but should be simple to implement there.
See #12749.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67885 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Doing it immediately after calling ::SetWindowPos(), as we used to do, didn't
work correctly (presumably because the status bar fields widths were not
updated yet internally) and resulted in not updating the ellipsized fields
values when "Show window contents while dragging" Windows option was off.
Doing it when we get WM_SIZE works in this case too.
Closes#13257.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67884 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
wxColour::GetAsString(wxC2S_HTML_SYNTAX) doesn't accept colours with alpha
channel as alpha is not representable in HTML syntax, so avoid calling this
function with such colours, remove the alpha component in the caller before
using it instead.
Also slightly simplify wxBrushString() and wxPenString() functions code in
wxSVGFileDC implementation.
Closes#13214.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67883 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Correctly use DECLARE_DYNAMIC_CLASS for the classes that are supposed to be
dynamically creatable as using DECLARE_CLASS doesn't work any longer after the
last commit.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67880 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775