mainwindow.h
181 lines
| 5.4 KiB
| text/x-c
|
CLexer
Miikka Heikkinen
|
r2854 | /**************************************************************************** | ||
Miikka Heikkinen
|
r2483 | ** | ||
Miikka Heikkinen
|
r2854 | ** Copyright (C) 2016 The Qt Company Ltd. | ||
** Contact: https://www.qt.io/licensing/ | ||||
Miikka Heikkinen
|
r2483 | ** | ||
Miikka Heikkinen
|
r2854 | ** This file is part of the Qt Charts module of the Qt Toolkit. | ||
Miikka Heikkinen
|
r2483 | ** | ||
Miikka Heikkinen
|
r2854 | ** $QT_BEGIN_LICENSE:GPL$ | ||
Titta Heikkala
|
r2845 | ** 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 | ||||
Miikka Heikkinen
|
r2854 | ** 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. | ||||
Miikka Heikkinen
|
r2483 | ** | ||
Titta Heikkala
|
r2845 | ** $QT_END_LICENSE$ | ||
** | ||||
Miikka Heikkinen
|
r2854 | ****************************************************************************/ | ||
Miikka Heikkinen
|
r2483 | |||
#ifndef MAINWINDOW_H | ||||
#define MAINWINDOW_H | ||||
Titta Heikkala
|
r2714 | #include <QtCharts/QPolarChart> | ||
#include <QtWidgets/QMainWindow> | ||||
#include <QtGui/QFont> | ||||
#include <QtCharts/QChart> | ||||
#include <QtCharts/QScatterSeries> | ||||
#include <QtCharts/QLineSeries> | ||||
#include <QtCharts/QSplineSeries> | ||||
#include <QtCharts/QAreaSeries> | ||||
Miikka Heikkinen
|
r2483 | |||
Christian Kandeler
|
r2774 | QT_BEGIN_NAMESPACE | ||
class QBrush; | ||||
class QPen; | ||||
Miikka Heikkinen
|
r2483 | namespace Ui { | ||
class MainWindow; | ||||
} | ||||
Christian Kandeler
|
r2774 | QT_END_NAMESPACE | ||
Miikka Heikkinen
|
r2483 | |||
Christian Kandeler
|
r2774 | QT_CHARTS_USE_NAMESPACE | ||
Miikka Heikkinen
|
r2483 | |||
class MainWindow : public QMainWindow | ||||
{ | ||||
Q_OBJECT | ||||
public: | ||||
explicit MainWindow(QWidget *parent = 0); | ||||
~MainWindow(); | ||||
public slots: | ||||
void angularTicksChanged(int value); | ||||
void radialTicksChanged(int value); | ||||
Titta Heikkala
|
r2795 | void angularMinorTicksChanged(int value); | ||
void radialMinorTicksChanged(int value); | ||||
Miikka Heikkinen
|
r2483 | void anglesChanged(int value); | ||
void angularMinChanged(double value); | ||||
void angularMaxChanged(double value); | ||||
void radialMinChanged(double value); | ||||
void radialMaxChanged(double value); | ||||
void angularShadesIndexChanged(int index); | ||||
void radialShadesIndexChanged(int index); | ||||
void labelFormatEdited(const QString &text); | ||||
void labelFontChanged(const QFont &font); | ||||
void labelFontSizeChanged(int value); | ||||
void animationIndexChanged(int index); | ||||
void labelsIndexChanged(int index); | ||||
void titleIndexChanged(int index); | ||||
void titleFontChanged(const QFont &font); | ||||
void titleFontSizeChanged(int value); | ||||
void gridIndexChanged(int index); | ||||
Titta Heikkala
|
r2795 | void minorGridIndexChanged(int index); | ||
Titta Heikkala
|
r2810 | void gridLineColorIndexChanged(int index); | ||
Miikka Heikkinen
|
r2483 | void arrowIndexChanged(int index); | ||
void angularRangeChanged(qreal min, qreal max); | ||||
void radialRangeChanged(qreal min, qreal max); | ||||
void angularAxisIndexChanged(int index); | ||||
void radialAxisIndexChanged(int index); | ||||
void logBaseChanged(double value); | ||||
void niceNumbersChecked(); | ||||
void dateFormatEdited(const QString &text); | ||||
void moreCategoriesChecked(); | ||||
Miikka Heikkinen
|
r2801 | void categoryLabelLocationChecked(); | ||
Miikka Heikkinen
|
r2483 | void series1CheckBoxChecked(); | ||
void series2CheckBoxChecked(); | ||||
void series3CheckBoxChecked(); | ||||
void series4CheckBoxChecked(); | ||||
void series5CheckBoxChecked(); | ||||
void series6CheckBoxChecked(); | ||||
void series7CheckBoxChecked(); | ||||
void themeIndexChanged(int index); | ||||
void seriesHovered(QPointF point, bool state); | ||||
void seriesClicked(const QPointF &point); | ||||
Miikka Heikkinen
|
r2498 | void backgroundIndexChanged(int index); | ||
void plotAreaIndexChanged(int index); | ||||
Miikka Heikkinen
|
r2483 | |||
private: | ||||
enum AxisMode { | ||||
AxisModeNone, | ||||
AxisModeValue, | ||||
AxisModeLogValue, | ||||
AxisModeDateTime, | ||||
AxisModeCategory | ||||
}; | ||||
void initXYValueChart(); | ||||
void setAngularAxis(AxisMode mode); | ||||
void setRadialAxis(AxisMode mode); | ||||
void applyRanges(); | ||||
void applyCategories(); | ||||
Ui::MainWindow *ui; | ||||
int m_angularTickCount; | ||||
int m_radialTickCount; | ||||
Titta Heikkala
|
r2795 | int m_angularMinorTickCount; | ||
int m_radialMinorTickCount; | ||||
Miikka Heikkinen
|
r2483 | qreal m_labelsAngle; | ||
qreal m_angularMin; | ||||
qreal m_angularMax; | ||||
qreal m_radialMin; | ||||
qreal m_radialMax; | ||||
bool m_angularShadesVisible; | ||||
bool m_radialShadesVisible; | ||||
bool m_labelsVisible; | ||||
bool m_titleVisible; | ||||
bool m_gridVisible; | ||||
bool m_arrowVisible; | ||||
Titta Heikkala
|
r2795 | bool m_minorGridVisible; | ||
bool m_minorArrowVisible; | ||||
Miikka Heikkinen
|
r2483 | QBrush *m_angularShadesBrush; | ||
QBrush *m_radialShadesBrush; | ||||
QBrush *m_labelBrush; | ||||
QBrush *m_titleBrush; | ||||
Miikka Heikkinen
|
r2498 | QBrush *m_backgroundBrush; | ||
QBrush *m_plotAreaBackgroundBrush; | ||||
Miikka Heikkinen
|
r2483 | QPen *m_angularShadesPen; | ||
QPen *m_radialShadesPen; | ||||
QPen *m_gridPen; | ||||
QPen *m_arrowPen; | ||||
Titta Heikkala
|
r2795 | QPen *m_minorGridPen; | ||
Miikka Heikkinen
|
r2498 | QPen *m_backgroundPen; | ||
QPen *m_plotAreaBackgroundPen; | ||||
Miikka Heikkinen
|
r2483 | QString m_labelFormat; | ||
QFont m_currentLabelFont; | ||||
QFont m_currentTitleFont; | ||||
QChart::AnimationOptions m_animationOptions; | ||||
QString m_angularTitle; | ||||
QString m_radialTitle; | ||||
qreal m_base; | ||||
QString m_dateFormat; | ||||
QPolarChart *m_chart; | ||||
QAbstractAxis *m_angularAxis; | ||||
QAbstractAxis *m_radialAxis; | ||||
AxisMode m_angularAxisMode; | ||||
AxisMode m_radialAxisMode; | ||||
bool m_moreCategories; | ||||
QScatterSeries *m_series1; | ||||
QLineSeries *m_series2; | ||||
QLineSeries *m_series3; | ||||
QLineSeries *m_series4; | ||||
QAreaSeries *m_series5; | ||||
QSplineSeries *m_series6; | ||||
QScatterSeries *m_series7; | ||||
}; | ||||
#endif // MAINWINDOW_H | ||||