diff options
Diffstat (limited to 'stats/statshelper.h')
-rw-r--r-- | stats/statshelper.h | 21 |
1 files changed, 2 insertions, 19 deletions
diff --git a/stats/statshelper.h b/stats/statshelper.h index 29dc083a4..f5d7cbcea 100644 --- a/stats/statshelper.h +++ b/stats/statshelper.h @@ -1,29 +1,12 @@ // SPDX-License-Identifier: GPL-2.0 -// Helper functions to render the stats. Currently only -// contains a small template to create scene-items. This -// is for historical reasons to ease transition from QtCharts -// and might be removed. +// Helper functions to render the stats. Currently contains +// QSGNode template jugglery to overcome API flaws. #ifndef STATSHELPER_H #define STATSHELPER_H #include <memory> -#include <QGraphicsScene> #include <QSGNode> -template <typename T, class... Args> -T *createItem(QGraphicsScene *scene, Args&&... args) -{ - T *res = new T(std::forward<Args>(args)...); - scene->addItem(res); - return res; -} - -template <typename T, class... Args> -std::unique_ptr<T> createItemPtr(QGraphicsScene *scene, Args&&... args) -{ - return std::unique_ptr<T>(createItem<T>(scene, std::forward<Args>(args)...)); -} - // In general, we want chart items to be hideable. For example to show/hide // labels on demand. Very sadly, the QSG API is absolutely terrible with // respect to temporarily disabling. Instead of simply having a flag, |