GetItemByRow() returned a valid row even for an item which was collapsed
which is clearly inappropriate for its use in GetItemRect(), which is
supposed return an invalid rectangle if the item is not visible. It also
might be inappropriate in other cases, but this is not totally clear and
it seems like it is supposed to return a valid row even for collapsed
items at least sometimes, so just make its behaviour conditional by
adding a new flags parameter to GetItemRect() and to Walker() helper
used by it itself, so that it could skip over collapsed items.
Update the test to show that it succeeds now even when the item is
present in the tree, as it only passed before because the item had never
been expanded at all, and so wasn't really present in the tree
structure and the updated test would have failed without the changes to
the code in this commit.
Most of them can't be expected to work, e.g. non-ASCII file names can't
be supported without Unicode support.
Some others, e.g. test for NULs in wxDataOutputStream, are questionable,
as it seems that it might be possible to fix them in ANSI build too, but
for now just do the simplest thing to make the tests pass on Travis.
This reverts WX_ATTRIBUTE_FORMAT() added in 36c5884acb (Generalize
WX_ATTRIBUTE_PRINTF to WX_ATTRIBUTE_FORMAT, 2020-08-30) as it can't be
used with the format parameter of "const wxString&" type.
Closes https://github.com/wxWidgets/wxWidgets/pull/2091
Append "-limm32" after the monolithic library, otherwise it's not taken
into account when the linker encounters it because there is no
dependency on it yet.
This should finally complete 68feb3e7ff (Fix linking monolithic wxMSW
DLL after STC IME changes, 2020-05-31).
See https://github.com/wxWidgets/wxWidgets/pull/1852Closes#18776.
This class is redundant with wxAffineMatrix2D, which is actually used by
the library itself and documented, so it gets to stay, while this one is
scheduled for removal.
Closes https://github.com/wxWidgets/wxWidgets/pull/2083Closes#13114.
Remove support for Borland C++ compiler, it wasn't tested since a long
time and probably didn't work anyhow and there was no interest in
keeping support for it since many years.
See https://github.com/wxWidgets/wxWidgets/pull/2087
This fixes a regression introduced in f646532889 (Call
wxAuiManager::UnInit() if associated frame is destroyed, 2020-07-18)
since when children of a window managed by wxAuiManager didn't receive
wxEVT_DESTROY any more because the manager intercepted it for its own
needs.
Closes#18938.
Just fix a warning about assigning -1 to a size_t variable introduced in
the recent commit 1e435d2347 (Fix wxTextInputStream incorrectly decoding
multibyte fallback encodings, 2020-09-28).
No real changes.
Detecting that the scrollbar position was at the bottom did not work while a
scrollbar animation was in progress. Work around this by updating the position
whenever the scrollbar parameters are changed during the incremental layout.
Setting the position directly will prevent any scrollbar animation from starting.
See #18864
Don't make many single-item selection adjustments in SetSelections() in
wxOSX and instead implement it with a single native call to
selectRowIndexes:byExtendingSelection:
This has a dramatic, orders of magnitude effect on this call's
performance when selecting many items: selecting 10 thousand items goes
from minutes of runtime and gigabytes of RAM to unobservable impact in
both.