aboutsummaryrefslogtreecommitdiffstats
path: root/stats/boxseries.h
diff options
context:
space:
mode:
Diffstat (limited to 'stats/boxseries.h')
-rw-r--r--stats/boxseries.h18
1 files changed, 6 insertions, 12 deletions
diff --git a/stats/boxseries.h b/stats/boxseries.h
index dde9014f6..ce48397ea 100644
--- a/stats/boxseries.h
+++ b/stats/boxseries.h
@@ -5,20 +5,18 @@
#ifndef BOX_SERIES_H
#define BOX_SERIES_H
+#include "chartitem.h"
#include "statsseries.h"
#include "statsvariables.h" // for StatsQuartiles
#include <memory>
#include <vector>
-#include <QGraphicsLineItem>
-#include <QGraphicsRectItem>
struct InformationBox;
-class QGraphicsScene;
class BoxSeries : public StatsSeries {
public:
- BoxSeries(QGraphicsScene *scene, StatsAxis *xAxis, StatsAxis *yAxis,
+ BoxSeries(StatsView &view, StatsAxis *xAxis, StatsAxis *yAxis,
const QString &variable, const QString &unit, int decimals);
~BoxSeries();
@@ -36,16 +34,12 @@ private:
int getItemUnderMouse(const QPointF &f);
struct Item {
- QGraphicsRectItem box;
- QGraphicsLineItem topWhisker, bottomWhisker;
- QGraphicsLineItem topBar, bottomBar;
- QGraphicsLineItem center;
- QRectF bounding; // bounding box in screen coordinates
- ~Item();
+ ChartItemPtr<ChartBoxItem> item;
double lowerBound, upperBound;
StatsQuartiles q;
QString binName;
- Item(QGraphicsScene *scene, BoxSeries *series, double lowerBound, double upperBound, const StatsQuartiles &q, const QString &binName);
+ Item(StatsView &view, BoxSeries *series, double lowerBound, double upperBound, const StatsQuartiles &q, const QString &binName);
+ ~Item();
void updatePosition(BoxSeries *series);
void highlight(bool highlight);
};
@@ -54,7 +48,7 @@ private:
int decimals;
std::vector<QString> formatInformation(const Item &item) const;
- std::unique_ptr<InformationBox> information;
+ ChartItemPtr<InformationBox> information;
std::vector<std::unique_ptr<Item>> items;
int highlighted; // -1: no item highlighted
};