##// END OF EJS Templates
No longer automatically disable QDateTimeAxis on ARM platforms...
No longer automatically disable QDateTimeAxis on ARM platforms QDateTimeAxis is now only disabled on platforms that define qreal as float. Change-Id: I08d393d328c972d74b27bd218e4cd01e844800c9 Reviewed-by: Tomi Korpipää <tomi.korpipaa@theqtcompany.com> Reviewed-by: Mika Salmela <mika.salmela@theqtcompany.com> Reviewed-by: Miikka Heikkinen <miikka.heikkinen@theqtcompany.com>

File last commit:

r2854:46147b040d06
r2861:21c113d296ef
Show More
qabstractaxis.h
218 lines | 8.4 KiB | text/x-c | CLexer
/****************************************************************************
**
** Copyright (C) 2016 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the Qt Charts module of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:GPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU
** General Public License version 3 or (at your option) any later version
** approved by the KDE Free Qt Foundation. The licenses are as published by
** the Free Software Foundation and appearing in the file LICENSE.GPL3
** included in the packaging of this file. Please review the following
** information to ensure the GNU General Public License requirements will
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
**
** $QT_END_LICENSE$
**
****************************************************************************/
#ifndef QABSTRACTAXIS_H
#define QABSTRACTAXIS_H
#include <QtCharts/QChartGlobal>
#include <QtGui/QPen>
#include <QtGui/QFont>
#include <QtCore/QVariant>
QT_CHARTS_BEGIN_NAMESPACE
class QAbstractAxisPrivate;
class QT_CHARTS_EXPORT QAbstractAxis : public QObject
{
Q_OBJECT
//visibility
Q_PROPERTY(bool visible READ isVisible WRITE setVisible NOTIFY visibleChanged)
//arrow
Q_PROPERTY(bool lineVisible READ isLineVisible WRITE setLineVisible NOTIFY lineVisibleChanged)
Q_PROPERTY(QPen linePen READ linePen WRITE setLinePen NOTIFY linePenChanged)
Q_PROPERTY(QColor color READ linePenColor WRITE setLinePenColor NOTIFY colorChanged)
//labels
Q_PROPERTY(bool labelsVisible READ labelsVisible WRITE setLabelsVisible NOTIFY labelsVisibleChanged)
Q_PROPERTY(QBrush labelsBrush READ labelsBrush WRITE setLabelsBrush NOTIFY labelsBrushChanged)
Q_PROPERTY(int labelsAngle READ labelsAngle WRITE setLabelsAngle NOTIFY labelsAngleChanged)
Q_PROPERTY(QFont labelsFont READ labelsFont WRITE setLabelsFont NOTIFY labelsFontChanged)
Q_PROPERTY(QColor labelsColor READ labelsColor WRITE setLabelsColor NOTIFY labelsColorChanged)
//grid
Q_PROPERTY(bool gridVisible READ isGridLineVisible WRITE setGridLineVisible NOTIFY gridVisibleChanged)
Q_PROPERTY(QPen gridLinePen READ gridLinePen WRITE setGridLinePen NOTIFY gridLinePenChanged)
Q_PROPERTY(bool minorGridVisible READ isMinorGridLineVisible WRITE setMinorGridLineVisible NOTIFY minorGridVisibleChanged)
Q_PROPERTY(QPen minorGridLinePen READ minorGridLinePen WRITE setMinorGridLinePen NOTIFY minorGridLinePenChanged)
Q_PROPERTY(QColor gridLineColor READ gridLineColor WRITE setGridLineColor NOTIFY gridLineColorChanged)
Q_PROPERTY(QColor minorGridLineColor READ minorGridLineColor WRITE setMinorGridLineColor NOTIFY minorGridLineColorChanged)
//shades
Q_PROPERTY(bool shadesVisible READ shadesVisible WRITE setShadesVisible NOTIFY shadesVisibleChanged)
Q_PROPERTY(QColor shadesColor READ shadesColor WRITE setShadesColor NOTIFY shadesColorChanged)
Q_PROPERTY(QColor shadesBorderColor READ shadesBorderColor WRITE setShadesBorderColor NOTIFY shadesBorderColorChanged)
Q_PROPERTY(QPen shadesPen READ shadesPen WRITE setShadesPen NOTIFY shadesPenChanged)
Q_PROPERTY(QBrush shadesBrush READ shadesBrush WRITE setShadesBrush NOTIFY shadesBrushChanged)
//title
Q_PROPERTY(QString titleText READ titleText WRITE setTitleText NOTIFY titleTextChanged)
Q_PROPERTY(QBrush titleBrush READ titleBrush WRITE setTitleBrush NOTIFY titleBrushChanged)
Q_PROPERTY(bool titleVisible READ isTitleVisible WRITE setTitleVisible NOTIFY titleVisibleChanged)
Q_PROPERTY(QFont titleFont READ titleFont WRITE setTitleFont NOTIFY titleFontChanged)
//orientation
Q_PROPERTY(Qt::Orientation orientation READ orientation)
//aligment
Q_PROPERTY(Qt::Alignment alignment READ alignment)
Q_PROPERTY(bool reverse READ isReverse WRITE setReverse NOTIFY reverseChanged)
public:
enum AxisType {
AxisTypeNoAxis = 0x0,
AxisTypeValue = 0x1,
AxisTypeBarCategory = 0x2,
AxisTypeCategory = 0x4,
AxisTypeDateTime = 0x8,
AxisTypeLogValue = 0x10
};
Q_DECLARE_FLAGS(AxisTypes, AxisType)
protected:
explicit QAbstractAxis(QAbstractAxisPrivate &d, QObject *parent = 0);
public:
~QAbstractAxis();
virtual AxisType type() const = 0;
//visibility handling
bool isVisible() const;
void setVisible(bool visible = true);
void show();
void hide();
//arrow handling
bool isLineVisible() const;
void setLineVisible(bool visible = true);
void setLinePen(const QPen &pen);
QPen linePen() const;
void setLinePenColor(QColor color);
QColor linePenColor() const;
//grid handling
bool isGridLineVisible() const;
void setGridLineVisible(bool visible = true);
void setGridLinePen(const QPen &pen);
QPen gridLinePen() const;
bool isMinorGridLineVisible() const;
void setMinorGridLineVisible(bool visible = true);
void setMinorGridLinePen(const QPen &pen);
QPen minorGridLinePen() const;
void setGridLineColor(const QColor &color);
QColor gridLineColor();
void setMinorGridLineColor(const QColor &color);
QColor minorGridLineColor();
//labels handling
bool labelsVisible() const;
void setLabelsVisible(bool visible = true);
void setLabelsBrush(const QBrush &brush);
QBrush labelsBrush() const;
void setLabelsFont(const QFont &font);
QFont labelsFont() const;
void setLabelsAngle(int angle);
int labelsAngle() const;
void setLabelsColor(QColor color);
QColor labelsColor() const;
//title handling
bool isTitleVisible() const;
void setTitleVisible(bool visible = true);
void setTitleBrush(const QBrush &brush);
QBrush titleBrush() const;
void setTitleFont(const QFont &font);
QFont titleFont() const;
void setTitleText(const QString &title);
QString titleText() const;
//shades handling
bool shadesVisible() const;
void setShadesVisible(bool visible = true);
void setShadesPen(const QPen &pen);
QPen shadesPen() const;
void setShadesBrush(const QBrush &brush);
QBrush shadesBrush() const;
void setShadesColor(QColor color);
QColor shadesColor() const;
void setShadesBorderColor(QColor color);
QColor shadesBorderColor() const;
Qt::Orientation orientation() const;
Qt::Alignment alignment() const;
//range handling
void setMin(const QVariant &min);
void setMax(const QVariant &max);
void setRange(const QVariant &min, const QVariant &max);
//reverse handling
void setReverse(bool reverse = true);
bool isReverse() const;
Q_SIGNALS:
void visibleChanged(bool visible);
void linePenChanged(const QPen &pen);
void lineVisibleChanged(bool visible);
void labelsVisibleChanged(bool visible);
void labelsBrushChanged(const QBrush &brush);
void labelsFontChanged(const QFont &pen);
void labelsAngleChanged(int angle);
void gridLinePenChanged(const QPen &pen);
void gridVisibleChanged(bool visible);
void minorGridVisibleChanged(bool visible);
void minorGridLinePenChanged(const QPen &pen);
void gridLineColorChanged(const QColor &color);
void minorGridLineColorChanged(const QColor &color);
void colorChanged(QColor color);
void labelsColorChanged(QColor color);
void titleTextChanged(const QString &title);
void titleBrushChanged(const QBrush &brush);
void titleVisibleChanged(bool visible);
void titleFontChanged(const QFont &font);
void shadesVisibleChanged(bool visible);
void shadesColorChanged(QColor color);
void shadesBorderColorChanged(QColor color);
void shadesPenChanged(const QPen &pen);
void shadesBrushChanged(const QBrush &brush);
void reverseChanged(bool reverse);
protected:
QScopedPointer<QAbstractAxisPrivate> d_ptr;
friend class ChartDataSet;
friend class ChartPresenter;
friend class ChartThemeManager;
friend class AbstractDomain;
friend class ChartAxisElement;
friend class XYChart;
private:
Q_DISABLE_COPY(QAbstractAxis)
};
QT_CHARTS_END_NAMESPACE
#endif // QABSTRACTAXIS_H