subsurface/stats
Berthold Stoeger db69c38245 statistics: refactor QSG memory management
The code was wrong, because it deleted the ChartItems in the
main UI thread, not the render thread. This would delete the
QSG nodes in the UI thread and then crash on mobile.

Therefore refactor this part of the code by adding the
items to be deleted to a list that will be deleted by the
render thread.

As a drop in replacement of std::unique_ptr, implement
a silly ChartItemPtr class, which auto-initializes to null.

This turns the deterministic and easily controlled memory
management into a steaming pile of insanity. Obviously,
this can be made much more elegant, but this has to do for now.

Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
2021-01-20 08:47:18 +01:00
..
barseries.cpp statistics: refactor QSG memory management 2021-01-20 08:47:18 +01:00
barseries.h statistics: refactor QSG memory management 2021-01-20 08:47:18 +01:00
boxseries.cpp statistics: refactor QSG memory management 2021-01-20 08:47:18 +01:00
boxseries.h statistics: refactor QSG memory management 2021-01-20 08:47:18 +01:00
chartitem.cpp statistics: refactor QSG memory management 2021-01-20 08:47:18 +01:00
chartitem.h statistics: refactor QSG memory management 2021-01-20 08:47:18 +01:00
chartlistmodel.cpp statistics: add count property to chart list 2021-01-13 11:39:36 -08:00
chartlistmodel.h statistics: add count property to chart list 2021-01-13 11:39:36 -08:00
CMakeLists.txt statistics: render regression item using QSGNode 2021-01-20 08:47:18 +01:00
histogrammarker.cpp statistics: convert HistogramMarkers to QSGNodes 2021-01-20 08:47:18 +01:00
histogrammarker.h statistics: convert HistogramMarkers to QSGNodes 2021-01-20 08:47:18 +01:00
informationbox.cpp statistics: add notion of Z-value to chart items 2021-01-20 08:47:18 +01:00
informationbox.h statistics: turn infobox into a QSGNode 2021-01-20 08:47:18 +01:00
legend.cpp statistics: remember position of legend when resizing 2021-01-20 08:47:18 +01:00
legend.h statistics: remember position of legend when resizing 2021-01-20 08:47:18 +01:00
pieseries.cpp statistics: refactor QSG memory management 2021-01-20 08:47:18 +01:00
pieseries.h statistics: refactor QSG memory management 2021-01-20 08:47:18 +01:00
quartilemarker.cpp statistics: convert QuartileMarkers to QSGNodes 2021-01-20 08:47:18 +01:00
quartilemarker.h statistics: convert QuartileMarkers to QSGNodes 2021-01-20 08:47:18 +01:00
regressionitem.cpp statistics: render regression item using QSGNode 2021-01-20 08:47:18 +01:00
regressionitem.h statistics: render regression item using QSGNode 2021-01-20 08:47:18 +01:00
scatterseries.cpp statistics: refactor QSG memory management 2021-01-20 08:47:18 +01:00
scatterseries.h statistics: refactor QSG memory management 2021-01-20 08:47:18 +01:00
statsaxis.cpp statistics: refactor QSG memory management 2021-01-20 08:47:18 +01:00
statsaxis.h statistics: refactor QSG memory management 2021-01-20 08:47:18 +01:00
statscolors.cpp statistics: add color-related functions 2021-01-01 21:10:10 +01:00
statscolors.h statistics: convert chart to QQuickItem 2021-01-10 15:16:52 -08:00
statsgrid.cpp statistics: refactor QSG memory management 2021-01-20 08:47:18 +01:00
statsgrid.h statistics: refactor QSG memory management 2021-01-20 08:47:18 +01:00
statshelper.h statistics: refactor QSG memory management 2021-01-20 08:47:18 +01:00
statsicons.qrc mobile/statistics: make icons available in mobile app 2021-01-19 12:35:29 -08:00
statsseries.cpp statistics: remove QGraphicsView from StatSeries 2021-01-20 08:47:18 +01:00
statsseries.h statistics: remove QGraphicsView from StatSeries 2021-01-20 08:47:18 +01:00
statsstate.cpp statistics: don't reset binner if binner is set 2021-01-03 15:41:36 -08:00
statsstate.h statistics: reverse chart selection logic 2021-01-03 13:41:15 -08:00
statstranslations.h statistics: add statistic variables 2021-01-01 21:10:10 +01:00
statsvariables.cpp statistics: split people binner 2021-01-10 15:56:40 -08:00
statsvariables.h statistics: add count to box and whisker plots 2021-01-10 14:45:12 -08:00
statsview.cpp statistics: refactor QSG memory management 2021-01-20 08:47:18 +01:00
statsview.h statistics: refactor QSG memory management 2021-01-20 08:47:18 +01:00
zvalues.h statistics: remove float z-value 2021-01-20 08:47:18 +01:00