1// Copyright (C) 2016 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
3
4// W A R N I N G
5// -------------
6//
7// This file is not part of the Qt Chart API. It exists purely as an
8// implementation detail. This header file may change from version to
9// version without notice, or even be removed.
10//
11// We mean it.
12
13#ifndef POLARCHARTAXISANGULAR_P_H
14#define POLARCHARTAXISANGULAR_P_H
15
16#include <QtCharts/qvalueaxis.h>
17#include <private/polarchartaxis_p.h>
18#include <QtCharts/private/qchartglobal_p.h>
19
20QT_BEGIN_NAMESPACE
21
22class Q_CHARTS_PRIVATE_EXPORT PolarChartAxisAngular : public PolarChartAxis
23{
24 Q_OBJECT
25
26public:
27 PolarChartAxisAngular(QAbstractAxis *axis, QGraphicsItem *item, bool intervalAxis = false);
28 ~PolarChartAxisAngular();
29
30 Qt::Orientation orientation() const;
31 QSizeF sizeHint(Qt::SizeHint which, const QSizeF &constraint = QSizeF()) const override;
32
33 void updateGeometry() override;
34 void createItems(int count) override;
35 void updateMinorTickItems() override;
36
37 qreal preferredAxisRadius(const QSizeF &maxSize) override;
38
39public Q_SLOTS:
40 void handleArrowPenChanged(const QPen &pen) override;
41 void handleGridPenChanged(const QPen &pen) override;
42 void handleMinorArrowPenChanged(const QPen &pen) override;
43 void handleMinorGridPenChanged(const QPen &pen) override;
44 void handleGridLineColorChanged(const QColor &color) override;
45 void handleMinorGridLineColorChanged(const QColor &color) override;
46
47private:
48 QRectF moveLabelToPosition(qreal angularCoordinate, QPointF labelPoint, QRectF labelRect) const;
49 void updateMinorTickGeometry();
50};
51
52QT_END_NAMESPACE
53
54#endif // POLARCHARTAXISANGULAR_P_H
55

source code of qtcharts/src/charts/axis/polarchartaxisangular_p.h