This is not a good idea because we really don't want them to wrap around
and it also provokes signed/unsigned comparison warnings when using
them.
Also make this variable and the other related one const.
Set the proposed drop index in wxEVT_DATAVIEW_ITEM_DROP_POSSIBLE event
generated by the control to allow dropping either on or between the
items in the control, as it was already possible with the Mac version.
Closes https://github.com/wxWidgets/wxWidgets/pull/1822
It's not enough to set the parent pointer in the child, the parent also
needs to be aware of its child, so call AddChild() to do both at once.
This ensures that find dialog with non-null parent is destroyed by it
when it is itself destroyed.
Closes#18747.
Update the code doing hit testing to use FromDIP() too, to be consistent
with the changes of 3a9b5001ce (Fix size of wxGenericTreeCtrl buttons
when using high DPI, 2020-02-23) # Please enter the commit message for
your changes. Lines starting.
See #18674.
Closes#18749.
It always returned wxDragNone since the changes of f5548e399e (Fix
problem with dragged icon remaining on screen under MSW 10, 2020-01-11)
which wrongly changed pdwEffect to DROPEFFECT_NONE before doing anything
else, disregarding the fact that it's an in-out parameter and not just
an output one.
Fix this by simply not doing this, just as it hadn't been done before.
See #18499.
gcc complained about converting NULL to long (-Wconversion-null), so use
0 explicitly. Also really pass the pointer to the first element, rather
than iterator, which is not guaranteed to be a pointer.
This amends the changes of d1553c63ed (Improve support for TABs in
wxListBox under MSW, 2020-04-13).
See https://github.com/wxWidgets/wxWidgets/pull/1789
It's not useful to allow dragging from the control area where there are
no items and it resulted in assert failures due to using an invalid row
in wxDataViewDropSource::GiveFeedback(), so simply don't do it at all.
Note that native GTK wxDataViewCtrl implementation doesn't do this
neither, so it also makes the behaviour more consistent.
Closes https://github.com/wxWidgets/wxWidgets/pull/1828
We don't have our own dlxxx() implementations under Darwin since 76c5594
(Remove our own dlxxx() functions emulation for OS X <= 10.3.,
2013-10-17).
wxHAVE_DYNLIB_ERROR is reduced to being the same HAVE_DLERROR, so use
the latter one instead.
Closes https://github.com/wxWidgets/wxWidgets/pull/1826
This is useful for read-only grids, in which an editor can't be shown to
copy the value of a cell, and also for copying an entire selection block
and not just a single cell.
Closes https://github.com/wxWidgets/wxWidgets/pull/1824Closes#13562.
Always set the LB_USETABSTOPS style flag to achieve behaviour more
compatible with other platforms and expand TABs to align them at tab
stops positioned at every 8 characters.
Also add MSW-specific MSWSetTabStops() method allowing to customize tab
stops.
Update the documentation and the sample to demonstrate using TABs.
Closes https://github.com/wxWidgets/wxWidgets/pull/1789
Previously, pressing Enter in a cell of a row which wasn't the last one,
but was the last shown one, didn't do anything because we explicitly
checked whether the cell was in the last row and not in the last visible
row, but MoveCursorDown() doesn't move the cursor for the latter, and
not just for the former.
Fix this by avoiding any row checks at all and just calling
MoveCursorDown() in any case and DisableCellEditControl() if it didn't
do anything.
Closes#18754.
Our code didn't convert 32-bit offset to (possibly 64-bit) m_Offset
correctly in the first place, and didn't check if the offset remained
valid after adjustment.
Fix both problems by using explicit cast and checking for the latter
explicitly.
Credit to OSS-Fuzz: this solves its issue 20527.
In addition to the current methods to add/delete one item to the control
we would need a method to replace all existing control items with new ones
at once.
Upgrade the submodule to a version which doesn't try to use SSE2 with
this old compiler, as it doesn't support the required intrinsics.
See https://github.com/wxWidgets/libpng/pull/4
This ensures that OLE is still initialized when this module cleanup
occurs, as it must be when IToastNotificationManagerStatics COM pointer
is destroyed.
Closes#18730.
This avoids the need for calling CoInitializeEx() and CoUninitialize()
in this module itself, it's enough to ensure that wxOleInitModule does
it before, or after, before this one is initialized, or uninitialized,
respectively.
This replaces the earlier fix of 450019dc21 (Ensure COM is still active
when Direct2D renderer is in use, 2015-12-30).
See #17308.
Previously this was done in wxMSW-specific wxApp version, which meant
that initialization was done after the modules initialization and,
especially problematically, uninitialization was done before modules
uninitialization, which resulted in problems when doing anything using
OLE from the modules OnExit().
This commit doesn't solve these problems yet, because it leaves modules
initialization order undefined, but the upcoming commits using it will.
File name only should be passed for `defaultFile' parameter otherwise
assertion in wxFileName::Assign() fails ("the file name shouldn't
contain the path").