3ffc739e0e
This makes the code much more clear: LoadDib() now reads all the header
data while LoadBMPData() reads bitmap data only and doesn't read any
header values any more, unlike before.
It also allows not to have to pass neither bmpOffset nor IsBmp
parameters to LoadBMPData(), making its argument list much more
reasonable.
Finally, and, most importantly, it fixes loading bitmaps using
BI_BITFIELDS that was broken back in cccda9ef6b
(Fix loading colour
palette from BMP file, 2019-12-28).
This commit also adds a unit test checking that this doesn't get broken
again without anyone noticing.
See #18634.
Closes #22499.
231 lines
6.6 KiB
CMake
231 lines
6.6 KiB
CMake
#############################################################################
|
|
# Name: build/cmake/tests/gui/CMakeLists.txt
|
|
# Purpose: CMake file for gui test
|
|
# Author: Tobias Taschner
|
|
# Created: 2016-10-31
|
|
# Copyright: (c) 2016 wxWidgets development team
|
|
# Licence: wxWindows licence
|
|
#############################################################################
|
|
|
|
set(TEST_GUI_SRC
|
|
asserthelper.cpp
|
|
test.cpp
|
|
testableframe.cpp
|
|
geometry/rect.cpp
|
|
geometry/size.cpp
|
|
geometry/point.cpp
|
|
geometry/region.cpp
|
|
graphics/bitmap.cpp
|
|
graphics/colour.cpp
|
|
graphics/ellipsization.cpp
|
|
graphics/measuring.cpp
|
|
graphics/affinematrix.cpp
|
|
graphics/boundingbox.cpp
|
|
graphics/clippingbox.cpp
|
|
graphics/coords.cpp
|
|
graphics/graphbitmap.cpp
|
|
graphics/graphmatrix.cpp
|
|
graphics/graphpath.cpp
|
|
graphics/imagelist.cpp
|
|
config/config.cpp
|
|
controls/auitest.cpp
|
|
controls/bitmapcomboboxtest.cpp
|
|
controls/bitmaptogglebuttontest.cpp
|
|
controls/bookctrlbasetest.cpp
|
|
controls/buttontest.cpp
|
|
controls/checkboxtest.cpp
|
|
controls/checklistboxtest.cpp
|
|
controls/choicebooktest.cpp
|
|
controls/choicetest.cpp
|
|
controls/comboboxtest.cpp
|
|
controls/dataviewctrltest.cpp
|
|
controls/datepickerctrltest.cpp
|
|
controls/frametest.cpp
|
|
controls/gaugetest.cpp
|
|
controls/gridtest.cpp
|
|
controls/headerctrltest.cpp
|
|
controls/htmllboxtest.cpp
|
|
controls/hyperlinkctrltest.cpp
|
|
controls/itemcontainertest.cpp
|
|
controls/label.cpp
|
|
controls/listbasetest.cpp
|
|
controls/listbooktest.cpp
|
|
controls/listboxtest.cpp
|
|
controls/listctrltest.cpp
|
|
controls/listviewtest.cpp
|
|
controls/markuptest.cpp
|
|
controls/notebooktest.cpp
|
|
controls/ownerdrawncomboboxtest.cpp
|
|
controls/pickerbasetest.cpp
|
|
controls/pickertest.cpp
|
|
controls/radioboxtest.cpp
|
|
controls/radiobuttontest.cpp
|
|
controls/rearrangelisttest.cpp
|
|
controls/richtextctrltest.cpp
|
|
controls/searchctrltest.cpp
|
|
controls/simplebooktest.cpp
|
|
controls/slidertest.cpp
|
|
controls/spinctrldbltest.cpp
|
|
controls/spinctrltest.cpp
|
|
controls/styledtextctrltest.cpp
|
|
controls/textctrltest.cpp
|
|
controls/textentrytest.cpp
|
|
controls/togglebuttontest.cpp
|
|
controls/toolbooktest.cpp
|
|
controls/treebooktest.cpp
|
|
controls/treectrltest.cpp
|
|
controls/treelistctrltest.cpp
|
|
controls/virtlistctrltest.cpp
|
|
controls/webtest.cpp
|
|
controls/windowtest.cpp
|
|
controls/dialogtest.cpp
|
|
events/clone.cpp
|
|
# Duplicate this file here to test GUI event loops too.
|
|
events/evtlooptest.cpp
|
|
events/propagation.cpp
|
|
events/keyboard.cpp
|
|
# And duplicate this one too as wxExecute behaves differently in
|
|
# console and GUI applications.
|
|
exec/exec.cpp
|
|
font/fonttest.cpp
|
|
image/image.cpp
|
|
image/rawbmp.cpp
|
|
html/htmlparser.cpp
|
|
html/htmlwindow.cpp
|
|
html/htmprint.cpp
|
|
menu/accelentry.cpp
|
|
menu/menu.cpp
|
|
misc/guifuncs.cpp
|
|
misc/selstoretest.cpp
|
|
misc/garbage.cpp
|
|
misc/safearrayconverttest.cpp
|
|
misc/settings.cpp
|
|
# This one is intentionally duplicated here (it is also part of
|
|
# non-GUI test) as sockets behave differently in console and GUI
|
|
# applications.
|
|
net/socket.cpp
|
|
persistence/tlw.cpp
|
|
persistence/dataview.cpp
|
|
rowheightcache/rowheightcachetest.cpp
|
|
sizers/boxsizer.cpp
|
|
sizers/gridsizer.cpp
|
|
sizers/wrapsizer.cpp
|
|
toplevel/toplevel.cpp
|
|
validators/valnum.cpp
|
|
validators/valtext.cpp
|
|
window/clientsize.cpp
|
|
window/setsize.cpp
|
|
xml/xrctest.cpp
|
|
|
|
testprec.h
|
|
testableframe.h
|
|
asserthelper.h
|
|
testdate.h
|
|
testfile.h
|
|
testimage.h
|
|
controls/bookctrlbasetest.h
|
|
controls/itemcontainertest.h
|
|
controls/listbasetest.h
|
|
controls/pickerbasetest.h
|
|
controls/textentrytest.h
|
|
persistence/testpersistence.h
|
|
)
|
|
|
|
set(TEST_GUI_DATA
|
|
horse.ani
|
|
horse.bmp
|
|
horse.cur
|
|
horse.gif
|
|
horse.ico
|
|
horse.jpg
|
|
horse.pcx
|
|
horse.png
|
|
horse.pnm
|
|
horse.svg
|
|
horse.tga
|
|
horse.tif
|
|
horse.xpm
|
|
image/bitfields.bmp
|
|
image/8bpp-colorsused-large.bmp
|
|
image/8bpp-colorsused-negative.bmp
|
|
image/rle4-delta-320x240.bmp
|
|
image/rle8-delta-320x240-expected.bmp
|
|
image/rle8-delta-320x240.bmp
|
|
image/horse_grey.bmp
|
|
image/horse_grey_flipped.bmp
|
|
image/horse_rle4.bmp
|
|
image/horse_rle4_flipped.bmp
|
|
image/horse_rle8.bmp
|
|
image/horse_rle8_flipped.bmp
|
|
image/cross_bicubic_256x256.png
|
|
image/cross_bilinear_256x256.png
|
|
image/cross_box_average_256x256.png
|
|
image/cross_nearest_neighb_256x256.png
|
|
image/horse_bicubic_50x50.png
|
|
image/horse_bicubic_100x100.png
|
|
image/horse_bicubic_150x150.png
|
|
image/horse_bicubic_300x300.png
|
|
image/horse_bilinear_50x50.png
|
|
image/horse_bilinear_100x100.png
|
|
image/horse_bilinear_150x150.png
|
|
image/horse_bilinear_300x300.png
|
|
image/horse_box_average_50x50.png
|
|
image/horse_box_average_100x100.png
|
|
image/horse_box_average_150x150.png
|
|
image/horse_box_average_300x300.png
|
|
image/paste_input_background.png
|
|
image/paste_input_black.png
|
|
image/paste_input_overlay_transparent_border_opaque_square.png
|
|
image/paste_input_overlay_transparent_border_semitransparent_circle.png
|
|
image/paste_input_overlay_transparent_border_semitransparent_square.png
|
|
image/paste_result_background_plus_circle_plus_square.png
|
|
image/paste_result_background_plus_overlay_transparent_border_opaque_square.png
|
|
image/paste_result_background_plus_overlay_transparent_border_semitransparent_square.png
|
|
image/paste_result_no_background_square_over_circle.png
|
|
image/wx.png
|
|
image/toucan.png
|
|
image/toucan_hue_0.538.png
|
|
image/toucan_sat_-0.41.png
|
|
image/toucan_bright_-0.259.png
|
|
image/toucan_hsv_0.538_-0.41_-0.259.png
|
|
image/toucan_light_46.png
|
|
image/toucan_dis_240.png
|
|
image/toucan_grey.png
|
|
image/toucan_mono_255_255_255.png
|
|
image/width-times-height-overflow.bmp
|
|
image/width_height_32_bit_overflow.pgm
|
|
intl/ja/internat.mo
|
|
intl/ja/internat.po
|
|
)
|
|
|
|
wx_add_test(test_gui CONSOLE_GUI ${TEST_GUI_SRC}
|
|
DATA ${TEST_GUI_DATA}
|
|
)
|
|
if(wxUSE_AUI)
|
|
wx_exe_link_libraries(test_gui wxaui)
|
|
endif()
|
|
if(wxUSE_RICHTEXT)
|
|
wx_exe_link_libraries(test_gui wxrichtext)
|
|
endif()
|
|
if(wxUSE_STC)
|
|
wx_exe_link_libraries(test_gui wxstc)
|
|
endif()
|
|
if(wxUSE_MEDIACTRL)
|
|
wx_exe_link_libraries(test_gui wxmedia)
|
|
endif()
|
|
if(wxUSE_XRC)
|
|
wx_exe_link_libraries(test_gui wxxrc)
|
|
endif()
|
|
if(wxUSE_XML)
|
|
wx_exe_link_libraries(test_gui wxxml)
|
|
endif()
|
|
if(wxUSE_HTML)
|
|
wx_exe_link_libraries(test_gui wxhtml)
|
|
endif()
|
|
if(wxUSE_SOCKETS)
|
|
wx_exe_link_libraries(test_gui wxnet)
|
|
endif()
|
|
if(wxUSE_WEBVIEW)
|
|
wx_exe_link_libraries(test_gui wxwebview)
|
|
endif()
|