mirror of
https://github.com/subsurface/subsurface.git
synced 2025-02-19 22:16:15 +00:00
statistics: render title
Since we want to get rid of QtCharts, we have to render our own title. Simply keep around a QGraphicsSimpleTextItem and put in the center of the chart. Define the borders to the scene as constants. Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
parent
ccc95f938a
commit
90129aa26f
2 changed files with 36 additions and 2 deletions
|
|
@ -4,6 +4,7 @@
|
|||
|
||||
#include "statsstate.h"
|
||||
#include <memory>
|
||||
#include <QFont>
|
||||
#include <QQuickWidget>
|
||||
|
||||
struct dive;
|
||||
|
|
@ -17,6 +18,7 @@ namespace QtCharts {
|
|||
class QChart;
|
||||
}
|
||||
class QGraphicsLineItem;
|
||||
class QGraphicsSimpleTextItem;
|
||||
class StatsSeries;
|
||||
class CategoryAxis;
|
||||
class CountAxis;
|
||||
|
|
@ -74,6 +76,8 @@ private:
|
|||
const StatsVariable *categoryVariable, const StatsBinner *categoryBinner, const StatsVariable *valueVariable);
|
||||
void plotScatter(const std::vector<dive *> &dives, const StatsVariable *categoryVariable, const StatsVariable *valueVariable);
|
||||
void setTitle(const QString &);
|
||||
void updateTitlePos(); // After resizing, set title to correct position
|
||||
void plotChart();
|
||||
|
||||
template <typename T, class... Args>
|
||||
T *createSeries(Args&&... args);
|
||||
|
|
@ -115,11 +119,13 @@ private:
|
|||
|
||||
StatsState state;
|
||||
QtCharts::QChart *chart;
|
||||
QFont titleFont;
|
||||
std::vector<std::unique_ptr<StatsAxis>> axes;
|
||||
std::vector<std::unique_ptr<StatsSeries>> series;
|
||||
std::unique_ptr<Legend> legend;
|
||||
std::vector<QuartileMarker> quartileMarkers;
|
||||
std::vector<LineMarker> lineMarkers;
|
||||
std::unique_ptr<QGraphicsSimpleTextItem> title;
|
||||
StatsSeries *highlightedSeries;
|
||||
|
||||
// This is unfortunate: we can't derive from QChart, because the chart is allocated by QML.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue