In wxGTK, calling HighlightCurrentField() from EVT_SET_FOCUS handler was not
enough as the highlighting was overwritten by the default behaviour of
selecting the entire text control contents on focus gain.
Fix this by calling SetFocus() from HighlightCurrentField() before updating
the selection. This ensures that the correct field is always highlighted.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69291 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This ensures that the spin button arrows are always enabled, as they should
be, even under wxGTK where wxSpinButton disables its arrows on its own if its
value reaches the end of its range and wxSP_WRAP is not used.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69289 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This list is supposed to be roughly in importance order.
Also add a period at the end of wxAuiNotebook entry, let's try to be
consistent about using them.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69287 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Propagate SetToolTip() call on wxCompositeWindow to all subwindows to ensure
that the tooltip is shown for all parts of the window.
Notice that this is still not ideal as the tooltip temporarily disappears when
mouse moves from one subwindow to another, instead of staying in place as it
does with "monolithic" windows and ideally we should find a way to avoid it
(should be possible at least under MSW with TTM_RELAYEVENT) but for now this
is already much better than nothing.
Closes#13523.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69286 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This method simply sets the same tooltip for the window but making copy of,
instead of taking ownership of, the wxToolTip passed in.
It's not especially useful on its own but is needed by wxCompositeWindow and
might be handy elsewhere.
See #13523.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69285 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
The code in generic wxSearchCtrl implementation was broken by the changes of
r69066 which deccreased the best height of border-less text controls.
Ideally we should probably change wxSearchCtrl::LayoutControls() to not be
sensitive at all to the exact value returned from wxTextCtrl::GetBestSize()
and just always centre everything vertically but this doesn't look simple to
do with the current code so just override wxSearchTextCtrl::DoGetBestSize() to
return the same size as wxTextCtrl used to return before to fix this for now.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69284 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Don't compare signed and unsigned variables if possible (insert a cast in one
place where it wasn't).
Put WXUNUSED() around the unused parameters.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69283 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Attempt to use wxPen::GetStyle() on the initially invalid pen resulted in an
assert, so don't do it and test for pen validity explicitly.
Closes#13524.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69243 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This library includes some wx headers and so setup.h must be available when
it's being compiled but there was no rule to copy it in its projects, so add
it now.
Closes#13526.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69242 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Implement wxTimePickerCtrl natively for MSW and add a generic implementation
(very loosely based on the original class by Paul Breen) for the other
platforms.
Also update the calendar sample to show the new control.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69224 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
The documentation for this method seems to have been copy-and-pasted from
somewhere else and didn't make any sense.
Also don't say that this control doesn't have any control-specific styles when
it does.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69223 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
No real changes, just refactor wxMSW wxDatePickerCtrl to allow sharing code
with the upcoming wxTimePickerCtrl class. Even less changes for the other
platforms where wxDateTimePickerCtrl is trivial.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69222 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
For some reason comparing wxTreeListItem with its associated Type doesn't work
when using VC6 ("error C2593: 'operator ==' is ambiguous") so help the compiler
to do it.
Also remove the unnecessary (and unsupported by VC6) return from void function.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69220 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
When using the generic wxDataViewCtrl version, forcefully refresh it after
changing its size to avoid artefacts during resizing of wxTreeListCtrl.
Closes#13502.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69183 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Under GTK the columns of wxDataViewCtrl (and hence wxTreeListCtrl) are always
resized to cover the entire control width. For consistency, also do it under
the other platforms and give the remaining space to the first column and not
to the last one as GTK does by default, as the first column is more important.
Do this even if this results in reducing the size of the column: presumably,
if the entire control itself can be resized, the user wouldn't bother resizing
the columns and, on the contrary, if the user did resize the columns, the
entire control size is unlikely to change, so in practice we don't risk
overriding the user preferences and reducing as well as increasing the first
column width works much better by default as it doesn't leave the other
columns invisible after making the control wider and than reverting it back to
its initial, more narrow, state again.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69182 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Scrolling in a small wxVListBox with tall items (i.e. taller than the height
of wxVListBox itself) behaved wrongly: wrong item was being scrolled into view
and Page Up/Down didn't scroll as much as they should.
Fix both of these problems by checking for these corner cases explicitly.
Closes#13454.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69180 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Fix typo in the sample, comma was used instead of a semicolon. The code still
worked correctly but make it look correctly too now.
Closes#13453.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69179 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This constructor previously used int and, especially annoyingly, wxByte* for
the data. Use standard void* for untyped binary data instead.
Also document this ctor as it seems to be implemented in all ports.
Closes#13451.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69178 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Always send this event, even if the user right clicked outside of the client
area. This is useful for showing item-independent commands in the context
menu.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69177 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775