Double-clicking on a floating (non-container) object selects it instead of selecting a word.
Selection refresh now takes floating objects into account.
The last line of a paragraph now takes floating objects into account.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75360 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Both trunk builds were using Cocoa, change the one supposed to be Carbon to
use Carbon instead.
Also add Carbon stable branch build as this is probably even more important
than testing Carbon in the trunk.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75358 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
It doesn't return the parent of a TLW but TLW itself. Whether this is a good
idea or bad one, this is how it works since a very long time and we don't want
to change it any more.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75357 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
wxImageList returns size of its bitmap as pixel size, i.e. twice the
displayed screen on HiDPI screens. Unfortunately,
wxImageList::GetSize() is used heavily in (generic) GUI drawing code,
e.g. to properly size wxListCtrl's icon columns. As wxImageList is
used primarily by controls, it seems reasonable to adjust for scaling
here, rather than requiring all users of the class to do it.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75351 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
The size is expressed in logical coordinates and needs to use bitmap's
scaled size, otherwise it would appear twice as large in both
dimensions.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75350 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
The GTK+ implementation always did this and it doesn't make much sense
to let the space be wasted, so do as GTK+ does: expand the last column
to cover the remaining unused space in the OS X and generic
implementations too. Don't do anything if the space is insufficient.
Respect the last column's minimal width.
See #13904.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75347 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Both native wxDVC implementations grow the progress column, the generic
one didn't. This change fixes it and _seems_ not to break other things.
As a consequence, progress columns no longer have a 40px minimal width,
but that should be OK.
Fixes#15745.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75345 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Generalize the code in wxTopLevelWindowBase dtor checking for the children of
the TLW being destroyed pending for deletion themselves to work when the child
TLW is an indirect child, i.e. was created with a child window of this TLW as
parent and not this TLW itself.
Closes#15743.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75342 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Under this system vsscanf() is declared as taking a non-const char* as first
argument which prevented our code using it from compiling. Wrap it in
wxCRT_VsscanfA() adding the necessary const_cast<> to fix this.
Closes#15638.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75340 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
The code apparently expected EM_SETCUEBANNER to return false on
pre-Vista systems (where the cue banners don't work). This isn't the
case in practice, so check for Vista explicitly and use the generic
implementation on XP.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75334 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Don't fall back to wxALIGN_CENTRE, even if the renderer doesn't specify its
own alignment we still have to take the column alignment in consideration, so
use GetEffectiveAlignment() (which had to be made public for this).
This notably fixes (again) hit testing for wxDataViewToggleRenderer in the
generic version.
Closes#15731.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75329 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Call the base class version to update the colour stored in the base class and
also to avoid changing the colour of the main window unnecessarily if the
colour didn't really change.
This is also consistent with the code in SetForegroundColour() just below.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75328 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
As calling wxGenericListCtrl::SetBackgroundColour() doesn't change the header
window background, don't change its foreground in SetForegroundColour()
neither.
Closes#15741.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75327 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
IsDirty() still returned true even after undoing all the commands which was
wrong, as there was nothing to save in this case.
Closes#15722.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75310 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Disable setting focus in response to TVN_SELCHANGING when deleting an item in
a single selection control too -- this was already done in multi selection
case but not in this one, for some reason.
Also refactor the code to avoid duplicating TreeView_DeleteItem() calls.
Closes#15721.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75308 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
If the application launches while the parent process doesn't have an active
window, [NSApp run] won't terminate immediately, as was assumed here. Instead,
it blocks until some input arrives, e.g. clicking the Dock icon.
Work around this by adding a dummy event to the queue.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75302 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
wxMenu::Remove() was still broken in wxMSW after r75250, even with the fix in
r75290, as wxMSW code relied on the item still being present in
wxMenu::m_items.
Delay removing it from there until after DoRemove() call to fix this.
See #3424.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75297 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
The menu items were not removed from the menu any longer when they were
deleted or destroyed after the changes in this revision.
Fix this by calling the public Remove(), which does the right thing, instead
of the private DoRemove(), which only does part of the job of removing the
item, in DoDelete() and DoDestroy().
See #3424.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75290 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Subsequent calls didn't initialize the hidden window correctly because
wxSocket::Shutdown() unregistered the window class used for it, but
wxSocket::Initialize() still kept a pointer to the previously registered class
name.
Don't remember it any longer, unlike in the other cases where we use
wxCreateHiddenWindow(), this function is only ever going to be called once
until the class is unregistered anyhow, so it doesn't have to be static.
Closes#15701.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75287 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
Static event tables are search top to bottom while dynamic event tables are
searched in the most-recently-bound to the most-early-bound order.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75285 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
It wasn't up to date (e.g. aui, ribbon, propgrid, richtext were not included
in it) and wasn't used anywhere anyhow.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75282 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This code probably misunderstood NSEvent documentation, where this mask is
mentioned, but setKeyEquivalentModifierMask: documentation doesn't list it as
allowed. More importantly, it causes "fn" to appear in the menu item and the
accelerator doesn't work.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75276 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775