src/callout.h

Sun, 12 Feb 2023 13:58:36 +0100

author
Michiel Broek <mbroek@mbse.eu>
date
Sun, 12 Feb 2023 13:58:36 +0100
changeset 494
49ac23d25f61
parent 370
a730825bc5e4
permissions
-rw-r--r--

In monitor iSpindel: in the chart calculate the ranges, do't let the toolkit do that. Save the path for chart image download in the user settings. In the tooltip for the battery voltage line, also show the remaining battery capacity. In the monitor window show the battery capacity digit instead of allways 0. Updated the translations.

370
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
1 /****************************************************************************
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
2 **
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
3 ** Copyright (C) 2016 The Qt Company Ltd.
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
4 ** Contact: https://www.qt.io/licensing/
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
5 **
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
6 ** This file is part of the Qt Charts module of the Qt Toolkit.
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
7 **
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
8 ** $QT_BEGIN_LICENSE:GPL$
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
9 ** Commercial License Usage
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
10 ** Licensees holding valid commercial Qt licenses may use this file in
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
11 ** accordance with the commercial license agreement provided with the
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
12 ** Software or, alternatively, in accordance with the terms contained in
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
13 ** a written agreement between you and The Qt Company. For licensing terms
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
14 ** and conditions see https://www.qt.io/terms-conditions. For further
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
15 ** information use the contact form at https://www.qt.io/contact-us.
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
16 **
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
17 ** GNU General Public License Usage
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
18 ** Alternatively, this file may be used under the terms of the GNU
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
19 ** General Public License version 3 or (at your option) any later version
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
20 ** approved by the KDE Free Qt Foundation. The licenses are as published by
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
21 ** the Free Software Foundation and appearing in the file LICENSE.GPL3
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
22 ** included in the packaging of this file. Please review the following
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
23 ** information to ensure the GNU General Public License requirements will
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
24 ** be met: https://www.gnu.org/licenses/gpl-3.0.html.
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
25 **
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
26 ** $QT_END_LICENSE$
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
27 **
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
28 ****************************************************************************/
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
29
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
30 #ifndef CALLOUT_H
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
31 #define CALLOUT_H
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
32
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
33 #include <QtCharts/QChartGlobal>
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
34 #include <QtWidgets/QGraphicsItem>
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
35 #include <QtGui/QFont>
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
36
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
37 QT_BEGIN_NAMESPACE
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
38 class QGraphicsSceneMouseEvent;
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
39 QT_END_NAMESPACE
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
40
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
41 QT_CHARTS_BEGIN_NAMESPACE
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
42 class QChart;
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
43 class QAbstractSeries;
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
44 QT_CHARTS_END_NAMESPACE
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
45
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
46 QT_CHARTS_USE_NAMESPACE
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
47
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
48 class Callout : public QGraphicsItem
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
49 {
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
50 public:
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
51 Callout(QChart *parent, QAbstractSeries *series);
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
52
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
53 void setText(const QString &text);
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
54 void setAnchor(QPointF point);
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
55 void updateGeometry();
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
56
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
57 QRectF boundingRect() const;
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
58 void paint(QPainter *painter, const QStyleOptionGraphicsItem *option,QWidget *widget);
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
59 void setSeries(QAbstractSeries *series);
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
60
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
61 protected:
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
62 void mousePressEvent(QGraphicsSceneMouseEvent *event);
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
63 void mouseMoveEvent(QGraphicsSceneMouseEvent *event);
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
64
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
65 private:
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
66 QString m_text;
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
67 QRectF m_textRect;
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
68 QRectF m_rect;
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
69 QPointF m_anchor;
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
70 QFont m_font;
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
71 QChart *m_chart;
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
72 QAbstractSeries *m_series;
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
73 };
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
74
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
75 #endif // CALLOUT_H
a730825bc5e4 Added callout
Michiel Broek <mbroek@mbse.eu>
parents:
diff changeset
76

mercurial