diff options
Diffstat (limited to 'stats/informationbox.h')
-rw-r--r-- | stats/informationbox.h | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/stats/informationbox.h b/stats/informationbox.h new file mode 100644 index 000000000..7e9253dc7 --- /dev/null +++ b/stats/informationbox.h @@ -0,0 +1,31 @@ +// SPDX-License-Identifier: GPL-2.0 +// A small box displaying statistics information, notably +// for a scatter-plot item or a bar in a bar chart. +#ifndef INFORMATION_BOX_H +#define INFORMATION_BOX_H + +#include <vector> +#include <memory> +#include <QGraphicsRectItem> +#include <QFont> + +namespace QtCharts { + class QChart; +} +struct dive; + +// Information window showing data of highlighted dive +struct InformationBox : QGraphicsRectItem { + InformationBox(QtCharts::QChart *chart); + void setText(const std::vector<QString> &text, QPointF pos); + void setPos(QPointF pos); + int recommendedMaxLines() const; +private: + QtCharts::QChart *chart; + QFont font; // For future specialization. + double width, height; + void addLine(const QString &s); + std::vector<std::unique_ptr<QGraphicsSimpleTextItem>> textItems; +}; + +#endif |