Improve wxDataViewCtrl performance with wxDV_VARIABLE_LINE_HEIGHT

Store the line heights in a cache to make the (generic) wxDataViewCtrl
usable with this style.
This commit is contained in:
jensgoe
2018-11-18 22:48:28 +01:00
committed by Vadim Zeitlin
parent 3d75541662
commit d6a137b730
25 changed files with 1068 additions and 69 deletions

View File

@@ -2126,7 +2126,8 @@ ____CORE_SRC_FILENAMES_OBJECTS = \
$(OBJS)\monodll_datavgen.obj \
$(OBJS)\monodll_editlbox.obj \
$(OBJS)\monodll_laywin.obj \
$(OBJS)\monodll_calctrlg.obj
$(OBJS)\monodll_calctrlg.obj \
$(OBJS)\monodll_rowheightcache.obj
!endif
!if "$(USE_GUI)" == "1" && "$(WXUNIV)" == "1"
____CORE_SRC_FILENAMES_OBJECTS = \
@@ -2451,7 +2452,8 @@ ____CORE_SRC_FILENAMES_OBJECTS = \
$(OBJS)\monodll_datavgen.obj \
$(OBJS)\monodll_editlbox.obj \
$(OBJS)\monodll_laywin.obj \
$(OBJS)\monodll_calctrlg.obj
$(OBJS)\monodll_calctrlg.obj \
$(OBJS)\monodll_rowheightcache.obj
!endif
!if "$(USE_STC)" == "1"
____MONOLIB_STC_SRC_FILENAMES_OBJECTS = \
@@ -2955,7 +2957,8 @@ ____CORE_SRC_FILENAMES_1_OBJECTS = \
$(OBJS)\monolib_datavgen.obj \
$(OBJS)\monolib_editlbox.obj \
$(OBJS)\monolib_laywin.obj \
$(OBJS)\monolib_calctrlg.obj
$(OBJS)\monolib_calctrlg.obj \
$(OBJS)\monolib_rowheightcache.obj
!endif
!if "$(USE_GUI)" == "1" && "$(WXUNIV)" == "1"
____CORE_SRC_FILENAMES_1_OBJECTS = \
@@ -3280,7 +3283,8 @@ ____CORE_SRC_FILENAMES_1_OBJECTS = \
$(OBJS)\monolib_datavgen.obj \
$(OBJS)\monolib_editlbox.obj \
$(OBJS)\monolib_laywin.obj \
$(OBJS)\monolib_calctrlg.obj
$(OBJS)\monolib_calctrlg.obj \
$(OBJS)\monolib_rowheightcache.obj
!endif
!if "$(USE_STC)" == "1"
____MONOLIB_STC_SRC_FILENAMES_1_OBJECTS = \
@@ -3659,7 +3663,8 @@ ____CORE_SRC_FILENAMES_2_OBJECTS = \
$(OBJS)\coredll_datavgen.obj \
$(OBJS)\coredll_editlbox.obj \
$(OBJS)\coredll_laywin.obj \
$(OBJS)\coredll_calctrlg.obj
$(OBJS)\coredll_calctrlg.obj \
$(OBJS)\coredll_rowheightcache.obj
!endif
!if "$(USE_GUI)" == "1" && "$(WXUNIV)" == "1"
____CORE_SRC_FILENAMES_2_OBJECTS = \
@@ -3984,7 +3989,8 @@ ____CORE_SRC_FILENAMES_2_OBJECTS = \
$(OBJS)\coredll_datavgen.obj \
$(OBJS)\coredll_editlbox.obj \
$(OBJS)\coredll_laywin.obj \
$(OBJS)\coredll_calctrlg.obj
$(OBJS)\coredll_calctrlg.obj \
$(OBJS)\coredll_rowheightcache.obj
!endif
!if "$(MONOLITHIC)" == "0" && "$(SHARED)" == "0" && "$(USE_GUI)" == "1"
__corelib___depname = \
@@ -4329,7 +4335,8 @@ ____CORE_SRC_FILENAMES_3_OBJECTS = \
$(OBJS)\corelib_datavgen.obj \
$(OBJS)\corelib_editlbox.obj \
$(OBJS)\corelib_laywin.obj \
$(OBJS)\corelib_calctrlg.obj
$(OBJS)\corelib_calctrlg.obj \
$(OBJS)\corelib_rowheightcache.obj
!endif
!if "$(USE_GUI)" == "1" && "$(WXUNIV)" == "1"
____CORE_SRC_FILENAMES_3_OBJECTS = \
@@ -4654,7 +4661,8 @@ ____CORE_SRC_FILENAMES_3_OBJECTS = \
$(OBJS)\corelib_datavgen.obj \
$(OBJS)\corelib_editlbox.obj \
$(OBJS)\corelib_laywin.obj \
$(OBJS)\corelib_calctrlg.obj
$(OBJS)\corelib_calctrlg.obj \
$(OBJS)\corelib_rowheightcache.obj
!endif
!if "$(SHARED)" == "1"
____wxcore_namedll_DEP = $(__coredll___depname)
@@ -8937,6 +8945,11 @@ $(OBJS)\monodll_calctrlg.obj: ..\..\src\generic\calctrlg.cpp
$(CXX) -q -c -P -o$@ $(MONODLL_CXXFLAGS) ..\..\src\generic\calctrlg.cpp
!endif
!if "$(USE_GUI)" == "1"
$(OBJS)\monodll_rowheightcache.obj: ..\..\src\generic\rowheightcache.cpp
$(CXX) -q -c -P -o$@ $(MONODLL_CXXFLAGS) ..\..\src\generic\rowheightcache.cpp
!endif
$(OBJS)\monodll_version.res: ..\..\src\msw\version.rc
brcc32 -32 -r -fo$@ -i$(BCCDIR)\include -d__WXMSW__ $(__WXUNIV_DEFINE_p_67) $(__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) -dWXBUILDING -dWXDLLNAME=wx$(PORTNAME)$(WXUNIVNAME)$(WX_VERSION_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)$(WXCOMPILER)$(VENDORTAG) -i$(BCCDIR)\include\windows\sdk -i..\..\src\tiff\libtiff -i..\..\src\jpeg -i..\..\src\png -i..\..\src\zlib -i..\..\src\regex -i..\..\src\expat\expat\lib -i..\..\src\stc\scintilla\include -i..\..\src\stc\scintilla\lexlib -i..\..\src\stc\scintilla\src -d__WX__ -dSCI_LEXER -dNO_CXX11_REGEX -dLINK_LEXERS -dwxUSE_BASE=1 -dWXMAKINGDLL ..\..\src\msw\version.rc
@@ -11478,6 +11491,11 @@ $(OBJS)\monolib_calctrlg.obj: ..\..\src\generic\calctrlg.cpp
$(CXX) -q -c -P -o$@ $(MONOLIB_CXXFLAGS) ..\..\src\generic\calctrlg.cpp
!endif
!if "$(USE_GUI)" == "1"
$(OBJS)\monolib_rowheightcache.obj: ..\..\src\generic\rowheightcache.cpp
$(CXX) -q -c -P -o$@ $(MONOLIB_CXXFLAGS) ..\..\src\generic\rowheightcache.cpp
!endif
$(OBJS)\basedll_dummy.obj: ..\..\src\common\dummy.cpp
$(CXX) -q -c -P -o$@ $(BASEDLL_CXXFLAGS) -H ..\..\src\common\dummy.cpp
@@ -13983,6 +14001,11 @@ $(OBJS)\coredll_calctrlg.obj: ..\..\src\generic\calctrlg.cpp
$(CXX) -q -c -P -o$@ $(COREDLL_CXXFLAGS) ..\..\src\generic\calctrlg.cpp
!endif
!if "$(USE_GUI)" == "1"
$(OBJS)\coredll_rowheightcache.obj: ..\..\src\generic\rowheightcache.cpp
$(CXX) -q -c -P -o$@ $(COREDLL_CXXFLAGS) ..\..\src\generic\rowheightcache.cpp
!endif
$(OBJS)\corelib_dummy.obj: ..\..\src\common\dummy.cpp
$(CXX) -q -c -P -o$@ $(CORELIB_CXXFLAGS) -H ..\..\src\common\dummy.cpp
@@ -15711,6 +15734,11 @@ $(OBJS)\corelib_calctrlg.obj: ..\..\src\generic\calctrlg.cpp
$(CXX) -q -c -P -o$@ $(CORELIB_CXXFLAGS) ..\..\src\generic\calctrlg.cpp
!endif
!if "$(USE_GUI)" == "1"
$(OBJS)\corelib_rowheightcache.obj: ..\..\src\generic\rowheightcache.cpp
$(CXX) -q -c -P -o$@ $(CORELIB_CXXFLAGS) ..\..\src\generic\rowheightcache.cpp
!endif
$(OBJS)\advdll_dummy.obj: ..\..\src\common\dummy.cpp
$(CXX) -q -c -P -o$@ $(ADVDLL_CXXFLAGS) -H ..\..\src\common\dummy.cpp