Add first version of wxBitmapBundle and use it in wxToolBar

This first version provides only a generic implementation of
wxBitmapBundle using a collection of bitmaps and only supports using it
in wxToolBar in wxMSW and wxGTK.

More methods of creating wxBitmapBundle will be provided later and more
functions taking wxBitmap will be changed to take wxBitmapBundle later
too and, of course, all the other ports will be updated to use the new
API too.
This commit is contained in:
Vadim Zeitlin 2021-09-24 00:35:06 +01:00
parent 44fe94fad8
commit 97f6c85d9b
31 changed files with 874 additions and 174 deletions

View file

@ -2531,7 +2531,8 @@ ____CORE_SRC_FILENAMES_OBJECTS = \
$(OBJS)\monodll_laywin.obj \
$(OBJS)\monodll_calctrlg.obj \
$(OBJS)\monodll_creddlgg.obj \
$(OBJS)\monodll_rowheightcache.obj
$(OBJS)\monodll_rowheightcache.obj \
$(OBJS)\monodll_bmpbndl.obj
!endif
!if "$(USE_GUI)" == "1" && "$(WXUNIV)" == "1"
____CORE_SRC_FILENAMES_OBJECTS = \
@ -2859,7 +2860,8 @@ ____CORE_SRC_FILENAMES_OBJECTS = \
$(OBJS)\monodll_laywin.obj \
$(OBJS)\monodll_calctrlg.obj \
$(OBJS)\monodll_creddlgg.obj \
$(OBJS)\monodll_rowheightcache.obj
$(OBJS)\monodll_rowheightcache.obj \
$(OBJS)\monodll_bmpbndl.obj
!endif
!if "$(USE_STC)" == "1"
____MONOLIB_STC_SRC_FILENAMES_OBJECTS = \
@ -3373,7 +3375,8 @@ ____CORE_SRC_FILENAMES_1_OBJECTS = \
$(OBJS)\monolib_laywin.obj \
$(OBJS)\monolib_calctrlg.obj \
$(OBJS)\monolib_creddlgg.obj \
$(OBJS)\monolib_rowheightcache.obj
$(OBJS)\monolib_rowheightcache.obj \
$(OBJS)\monolib_bmpbndl.obj
!endif
!if "$(USE_GUI)" == "1" && "$(WXUNIV)" == "1"
____CORE_SRC_FILENAMES_1_OBJECTS = \
@ -3701,7 +3704,8 @@ ____CORE_SRC_FILENAMES_1_OBJECTS = \
$(OBJS)\monolib_laywin.obj \
$(OBJS)\monolib_calctrlg.obj \
$(OBJS)\monolib_creddlgg.obj \
$(OBJS)\monolib_rowheightcache.obj
$(OBJS)\monolib_rowheightcache.obj \
$(OBJS)\monolib_bmpbndl.obj
!endif
!if "$(USE_STC)" == "1"
____MONOLIB_STC_SRC_FILENAMES_1_OBJECTS = \
@ -4148,7 +4152,8 @@ ____CORE_SRC_FILENAMES_2_OBJECTS = \
$(OBJS)\coredll_laywin.obj \
$(OBJS)\coredll_calctrlg.obj \
$(OBJS)\coredll_creddlgg.obj \
$(OBJS)\coredll_rowheightcache.obj
$(OBJS)\coredll_rowheightcache.obj \
$(OBJS)\coredll_bmpbndl.obj
!endif
!if "$(USE_GUI)" == "1" && "$(WXUNIV)" == "1"
____CORE_SRC_FILENAMES_2_OBJECTS = \
@ -4476,7 +4481,8 @@ ____CORE_SRC_FILENAMES_2_OBJECTS = \
$(OBJS)\coredll_laywin.obj \
$(OBJS)\coredll_calctrlg.obj \
$(OBJS)\coredll_creddlgg.obj \
$(OBJS)\coredll_rowheightcache.obj
$(OBJS)\coredll_rowheightcache.obj \
$(OBJS)\coredll_bmpbndl.obj
!endif
!if "$(MONOLITHIC)" == "0" && "$(SHARED)" == "0" && "$(USE_GUI)" == "1"
__corelib___depname = \
@ -4829,7 +4835,8 @@ ____CORE_SRC_FILENAMES_3_OBJECTS = \
$(OBJS)\corelib_laywin.obj \
$(OBJS)\corelib_calctrlg.obj \
$(OBJS)\corelib_creddlgg.obj \
$(OBJS)\corelib_rowheightcache.obj
$(OBJS)\corelib_rowheightcache.obj \
$(OBJS)\corelib_bmpbndl.obj
!endif
!if "$(USE_GUI)" == "1" && "$(WXUNIV)" == "1"
____CORE_SRC_FILENAMES_3_OBJECTS = \
@ -5157,7 +5164,8 @@ ____CORE_SRC_FILENAMES_3_OBJECTS = \
$(OBJS)\corelib_laywin.obj \
$(OBJS)\corelib_calctrlg.obj \
$(OBJS)\corelib_creddlgg.obj \
$(OBJS)\corelib_rowheightcache.obj
$(OBJS)\corelib_rowheightcache.obj \
$(OBJS)\corelib_bmpbndl.obj
!endif
!if "$(SHARED)" == "1"
____wxcore_namedll_DEP = $(__coredll___depname)
@ -9887,6 +9895,11 @@ $(OBJS)\monodll_rowheightcache.obj: ..\..\src\generic\rowheightcache.cpp
$(CXX) /c /nologo /TP /Fo$@ $(MONODLL_CXXFLAGS) ..\..\src\generic\rowheightcache.cpp
!endif
!if "$(USE_GUI)" == "1"
$(OBJS)\monodll_bmpbndl.obj: ..\..\src\common\bmpbndl.cpp
$(CXX) /c /nologo /TP /Fo$@ $(MONODLL_CXXFLAGS) ..\..\src\common\bmpbndl.cpp
!endif
$(OBJS)\monodll_version.res: ..\..\src\msw\version.rc
rc /fo$@ /d WIN32 /i ..\..\src\tiff\libtiff /i ..\..\src\jpeg /i ..\..\src\png /i ..\..\src\zlib /i ..\..\3rdparty\pcre\src\wx /i ..\..\src\expat\expat\lib $(____DEBUGRUNTIME_6) /d _CRT_SECURE_NO_DEPRECATE=1 /d _CRT_NON_CONFORMING_SWPRINTFS=1 /d _SCL_SECURE_NO_WARNINGS=1 $(__NO_VC_CRTDBG_p_72) $(__TARGET_CPU_COMPFLAG_p_72) /d __WXMSW__ $(__WXUNIV_DEFINE_p_66) $(__DEBUG_DEFINE_p_66) $(__NDEBUG_DEFINE_p_65) $(__EXCEPTIONS_DEFINE_p_65) $(__RTTI_DEFINE_p_65) $(__THREAD_DEFINE_p_65) $(__UNICODE_DEFINE_p_67) /i $(SETUPHDIR) /i ..\..\include $(____CAIRO_INCLUDEDIR_FILENAMES_4) /d WXBUILDING /d WXDLLNAME=wx$(PORTNAME)$(WXUNIVNAME)$(WX_VERSION_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)$(WXCOMPILER)$(VENDORTAG) /i ..\..\src\stc\scintilla\include /i ..\..\src\stc\scintilla\lexlib /i ..\..\src\stc\scintilla\src /d __WX__ /d SCI_LEXER /d NO_CXX11_REGEX /d LINK_LEXERS /d wxUSE_BASE=1 /d WXMAKINGDLL ..\..\src\msw\version.rc
@ -12461,6 +12474,11 @@ $(OBJS)\monolib_rowheightcache.obj: ..\..\src\generic\rowheightcache.cpp
$(CXX) /c /nologo /TP /Fo$@ $(MONOLIB_CXXFLAGS) ..\..\src\generic\rowheightcache.cpp
!endif
!if "$(USE_GUI)" == "1"
$(OBJS)\monolib_bmpbndl.obj: ..\..\src\common\bmpbndl.cpp
$(CXX) /c /nologo /TP /Fo$@ $(MONOLIB_CXXFLAGS) ..\..\src\common\bmpbndl.cpp
!endif
$(OBJS)\basedll_dummy.obj: ..\..\src\common\dummy.cpp
$(CXX) /c /nologo /TP /Fo$@ $(BASEDLL_CXXFLAGS) /Ycwx/wxprec.h ..\..\src\common\dummy.cpp
@ -15008,6 +15026,11 @@ $(OBJS)\coredll_rowheightcache.obj: ..\..\src\generic\rowheightcache.cpp
$(CXX) /c /nologo /TP /Fo$@ $(COREDLL_CXXFLAGS) ..\..\src\generic\rowheightcache.cpp
!endif
!if "$(USE_GUI)" == "1"
$(OBJS)\coredll_bmpbndl.obj: ..\..\src\common\bmpbndl.cpp
$(CXX) /c /nologo /TP /Fo$@ $(COREDLL_CXXFLAGS) ..\..\src\common\bmpbndl.cpp
!endif
$(OBJS)\corelib_dummy.obj: ..\..\src\common\dummy.cpp
$(CXX) /c /nologo /TP /Fo$@ $(CORELIB_CXXFLAGS) /Ycwx/wxprec.h ..\..\src\common\dummy.cpp
@ -16748,6 +16771,11 @@ $(OBJS)\corelib_rowheightcache.obj: ..\..\src\generic\rowheightcache.cpp
$(CXX) /c /nologo /TP /Fo$@ $(CORELIB_CXXFLAGS) ..\..\src\generic\rowheightcache.cpp
!endif
!if "$(USE_GUI)" == "1"
$(OBJS)\corelib_bmpbndl.obj: ..\..\src\common\bmpbndl.cpp
$(CXX) /c /nologo /TP /Fo$@ $(CORELIB_CXXFLAGS) ..\..\src\common\bmpbndl.cpp
!endif
$(OBJS)\advdll_dummy.obj: ..\..\src\common\dummy.cpp
$(CXX) /c /nologo /TP /Fo$@ $(ADVDLL_CXXFLAGS) /Ycwx/wxprec.h ..\..\src\common\dummy.cpp