wxWidgets/tests
Vadim Zeitlin bc3c6fea70 Fix Shift-Ctrl-arrows handling
Extending the selection with Ctrl-arrows is different from all the other
cases, as we need to combine both the selection anchor and the current
cell coordinates when doing it.

This means that we can't reuse the same PrepareForSelectionExpansion()
helper for this case, so this function is not useful finally and this
commit removes it entirely. It also replaces GetCurrentBlockCornerRow()
and GetCurrentBlockCornerCol() functions with GetExtensionAnchor() which
combines both of them.

Finally, it adds wxGridDirectionOperations::TryToAdvance() helper to
avoid repeating the IsAtBoundary() check which was previously part of
PrepareForSelectionExpansion() in multiple places.

And because the "extending" and normal parts of DoMoveCursorByBlock()
are so different now, it also factors out AdvanceByBlock() helper which
can be used to keep these parts well separate from each other instead of
intermixing them together.

With all these preparatory changes, it's finally possible to implement
the "extending selection by block" logic relatively easily, with the
bulk of this branch actually taken by comments explaining why do we have
to do what we do.

Add unit tests verifying that the functions used by Shift-Ctrl-arrow
work as expected.
2020-04-13 00:49:22 +02:00
..
any Add more wxOVERRIDE 2018-09-22 14:44:07 +02:00
archive Add more wxOVERRIDE 2018-09-22 14:44:07 +02:00
arrays Suppress some harmless clang warnings in the test suite 2019-01-04 23:51:31 +01:00
base64
benchmarks Rebake after changes 2020-03-27 23:15:03 +01:00
cmdline Suppress all -Wmissing-field-initializers in the test suite 2019-02-02 17:25:37 +01:00
config
controls Fix Shift-Ctrl-arrows handling 2020-04-13 00:49:22 +02:00
datetime Add another workaround for failures in wxDateTime::UNow test 2019-11-13 15:39:36 +01:00
drawing Add more wxOVERRIDE 2018-09-22 14:44:07 +02:00
events Fix event propagation test build for !wxUSE_DOC_VIEW_ARCHITECTURE 2020-03-19 01:16:52 +01:00
exec Restore wxConvAuto in wxTextInputStream used by wxExecute() 2019-04-21 20:10:30 +02:00
file Move URL<->filename conversion functions to wxFileName 2019-08-25 00:48:39 +02:00
filekind Add wxOVERRIDE to test files 2018-07-29 12:08:53 +02:00
filename Fix build without precompiled headers 2018-11-26 23:51:40 +01:00
filesys Move URL<->filename conversion functions to wxFileName 2019-08-25 00:48:39 +02:00
font Allow parsing all fractional sizes in wxFont descriptions 2020-01-19 17:46:55 +01:00
fontmap
formatconverter
fswatcher Remove macOS workaround unnecessary any longer 2019-04-26 13:36:00 +02:00
fuzz Add the script run by OSS-Fuzz 2019-12-16 18:07:38 +01:00
geometry Move operator<<(std::ostream&, wxRect) overload to a header 2018-11-04 18:28:33 +01:00
graphics Add test case for wxGraphicsContext DrawBitmap 2020-03-11 20:00:09 +01:00
hashes
html Tweak wxHtmlPrintout::Pagination unit test to pass under Travis 2019-07-19 01:40:44 +02:00
image Fix build with wxUSE_LIBTIFF==0 2019-09-19 00:39:59 +02:00
interactive Add more wxOVERRIDE 2018-09-22 14:44:07 +02:00
intl Add wxOVERRIDE to test files 2018-07-29 12:08:53 +02:00
lists Make wxList iterators conform to input iterator requirements 2018-02-23 16:00:06 +01:00
log Use correct warning option for older gcc in wxLog test 2020-03-10 02:42:08 +01:00
longlong
mbconv Eliminate -Wcast-qual warnings with GCC and Clang 2020-02-02 22:50:32 -08:00
menu Fix harmless signed/unsigned comparison warnings in menu test 2019-10-06 17:43:08 +02:00
misc Workaround for a crash with gcc 9.1 from MSYS2 MinGW 32bit 2019-08-03 21:08:10 +02:00
net Add unit test for reading from wxSocket in a thread 2019-11-01 16:00:01 +01:00
persistence Disable tests requiring a WM under Xvfb 2019-07-18 17:45:20 +02:00
regex Add wxRegEx::QuoteMeta() helper 2019-08-25 12:32:51 +02:00
rowheightcache Fix memory leaks in newly added unit test 2018-12-07 04:17:16 +01:00
scopeguard
sizers Allow using alignment with wxEXPAND and wxSHAPED in wxBoxSizer 2019-03-23 17:18:48 +01:00
streams Add more wxOVERRIDE 2018-09-22 14:44:07 +02:00
strings Define wxStrtox() overloads taking nullptr 2020-02-05 03:54:25 +01:00
textfile Add wxOVERRIDE to test files 2018-07-29 12:08:53 +02:00
thread Add more wxOVERRIDE 2018-09-22 14:44:07 +02:00
toplevel Disable tests requiring a WM under Xvfb 2019-07-18 17:45:20 +02:00
uris Make parsing wxURI paths more conforming to RFC 3986 2019-02-23 14:36:36 +01:00
validators wxTextValidator improvements 2019-01-05 23:33:35 +01:00
vectors Make wxVector::reverse_iterator satisfy RandomAccessIterator 2018-12-07 14:52:51 +01:00
weakref Suppress some harmless clang warnings in the test suite 2019-01-04 23:51:31 +01:00
window Get rid of an unnecessary function in wxWindow unit test 2019-10-17 22:01:36 +02:00
xlocale
xml Add wxOVERRIDE to test files 2018-07-29 12:08:53 +02:00
asserthelper.cpp Move operator<<(std::ostream&, wxRect) overload to a header 2018-11-04 18:28:33 +01:00
asserthelper.h Move operator<<(std::ostream&, wxRect) overload to a header 2018-11-04 18:28:33 +01:00
descrip.mms Update other test build files by hand for the new STC test 2019-03-20 17:07:56 -05:00
dummy.cpp
horse.ani
horse.bmp
horse.cur
horse.gif
horse.ico
horse.jpg
horse.pcx
horse.png
horse.pnm
horse.tga
horse.tif
horse.xpm
makefile.bcc Rebake after adding DPI awareness option 2019-11-30 22:52:48 +01:00
makefile.gcc Rebake after adding DPI awareness option 2019-11-30 22:52:48 +01:00
Makefile.in Mark failtest_xxx targets as phony 2020-03-24 00:01:15 +01:00
makefile.vc Rebake after changes 2020-03-27 23:15:03 +01:00
runtests.bat
test_gui_vc10.sln Update test sln and vcxproj files 2019-11-30 23:24:54 +01:00
test_gui_vc11.sln Update test sln and vcxproj files 2019-11-30 23:24:54 +01:00
test_gui_vc12.sln Update test sln and vcxproj files 2019-11-30 23:24:54 +01:00
test_gui_vc14.sln Update test sln and vcxproj files 2019-11-30 23:24:54 +01:00
test_gui_vc15.sln Update test sln and vcxproj files 2019-11-30 23:24:54 +01:00
test_gui.vcxproj Rename manifests to use underscores 2019-12-13 21:44:26 +01:00
test_gui.vcxproj.filters Update other test build files by hand for the new STC test 2019-03-20 17:07:56 -05:00
test_vc7_test_drawing.vcproj Rebake after changes 2020-03-27 23:15:03 +01:00
test_vc7_test_drawingplugin.vcproj Rebake after changes 2020-03-27 23:15:03 +01:00
test_vc7_test_gui.vcproj Rebake after changes 2020-03-27 23:15:03 +01:00
test_vc7_test.vcproj Rebake after changes 2020-03-27 23:15:03 +01:00
test_vc8_test_drawing.vcproj Rebake after changes 2020-03-27 23:15:03 +01:00
test_vc8_test_drawingplugin.vcproj Rebake after changes 2020-03-27 23:15:03 +01:00
test_vc8_test_gui.vcproj Rebake after changes 2020-03-27 23:15:03 +01:00
test_vc8_test.vcproj Rebake after changes 2020-03-27 23:15:03 +01:00
test_vc9_test_drawing.vcproj Rebake after changes 2020-03-27 23:15:03 +01:00
test_vc9_test_drawingplugin.vcproj Rebake after changes 2020-03-27 23:15:03 +01:00
test_vc9_test_gui.vcproj Rebake after changes 2020-03-27 23:15:03 +01:00
test_vc9_test.vcproj Rebake after changes 2020-03-27 23:15:03 +01:00
test_vc10.sln
test_vc11.sln
test_vc12.sln
test_vc14.sln
test_vc15.sln
test.bkl Mark failtest_xxx targets as phony 2020-03-24 00:01:15 +01:00
test.cpp Fix build-breaking typo in the GUI test suite 2019-11-01 00:53:12 +01:00
test.vcxproj Rename manifests to use underscores 2019-12-13 21:44:26 +01:00
test.vcxproj.filters Add unit test for wxLZMA{Input,Output}Stream classes 2018-04-06 15:39:55 +02:00
testableframe.cpp Refactor code waiting for events in the test suite 2019-01-24 22:52:46 +01:00
testableframe.h Refactor code waiting for events in the test suite 2019-01-24 22:52:46 +01:00
testdata.fc
testdate.h
testfile.h
testimage.h Give more information in case of wxImage comparison failure 2019-07-18 17:45:20 +02:00
testprec.h Add a helper IsRunningUnderXvfb() function to the test suite 2019-07-18 17:45:20 +02:00
testwindow.h Provide more information for failures involving FindFocus() 2019-07-18 17:45:20 +02:00
waitforpaint.h Don't do anything in WaitForPaint class under non-GTK platforms 2019-10-17 22:03:44 +02:00