diff options
author | Berthold Stoeger <bstoeger@mail.tuwien.ac.at> | 2021-01-01 21:54:35 +0100 |
---|---|---|
committer | Dirk Hohndel <dirk@hohndel.org> | 2021-01-02 11:04:03 -0800 |
commit | 907e6ff05d35278303bc72ba5d93614da6ca0ab7 (patch) | |
tree | 3e8a36b10658c557bc2a88a9b1689ca15b374385 /stats/statsseries.h | |
parent | 31da03770164db83787fcb63c2d3a033c4c48417 (diff) | |
download | subsurface-907e6ff05d35278303bc72ba5d93614da6ca0ab7.tar.gz |
statistics: add series interface class
Add a interface class for the chart series used by the statistics
module. Abstract virtual functions are declared for replotting
and selecting items.
Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
Diffstat (limited to 'stats/statsseries.h')
-rw-r--r-- | stats/statsseries.h | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/stats/statsseries.h b/stats/statsseries.h new file mode 100644 index 000000000..567f32644 --- /dev/null +++ b/stats/statsseries.h @@ -0,0 +1,27 @@ +// SPDX-License-Identifier: GPL-2.0 +// Base class for all series. Defines a small virtual interface +// concerning highlighting of series items. +#ifndef STATS_SERIES_H +#define STATS_SERIES_H + +#include <QScatterSeries> + +namespace QtCharts { + class QChart; +} +class StatsAxis; + +// We derive from a proper scatter series to get access to the map-to +// and map-from coordinates calls. But we don't use any of its functionality. +// This should be removed in due course. + +class StatsSeries : public QtCharts::QScatterSeries { +public: + StatsSeries(QtCharts::QChart *chart, StatsAxis *xAxis, StatsAxis *yAxis); + virtual ~StatsSeries(); + virtual void updatePositions() = 0; // Called if chart geometry changes. + virtual bool hover(QPointF pos) = 0; // Called on mouse movement. Return true if an item of this series is highlighted. + virtual void unhighlight() = 0; // Unhighlight any highlighted item. +}; + +#endif |