##// END OF EJS Templates
Merge remote-tracking branch 'origin/5.6' into 5.7...
Merge remote-tracking branch 'origin/5.6' into 5.7 Conflicts: src/charts/charts.pro src/charts/qchartglobal.h src/chartsqml2/chartsqml2.pro tests/auto/chartdataset/tst_chartdataset.cpp tests/auto/domain/tst_domain.cpp Change-Id: I9bfc63f6e93f9a3b86e53aca218dd3a48bb2ffc1

File last commit:

r2878:97bb01ce5d85 merge
r2898:03a6177a3223 merge master
Show More
qchart.h
203 lines | 6.9 KiB | text/x-c | CLexer
Miikka Heikkinen
Updated license...
r2854 /****************************************************************************
Michal Klocek
Polishing qchart class
r742 **
Miikka Heikkinen
Updated license...
r2854 ** Copyright (C) 2016 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
Michal Klocek
Polishing qchart class
r742 **
Miikka Heikkinen
Updated license...
r2854 ** This file is part of the Qt Charts module of the Qt Toolkit.
Michal Klocek
Polishing qchart class
r742 **
Miikka Heikkinen
Updated license...
r2854 ** $QT_BEGIN_LICENSE:GPL$
Titta Heikkala
Updated license headers...
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
Updated license...
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.
Michal Klocek
Polishing qchart class
r742 **
Titta Heikkala
Updated license headers...
r2845 ** $QT_END_LICENSE$
**
Miikka Heikkinen
Updated license...
r2854 ****************************************************************************/
Michal Klocek
Polishing qchart class
r742
Tero Ahola
Started documenting QChart
r264 #ifndef QCHART_H
#define QCHART_H
Michal Klocek
adds missing files form previous commit
r12
Titta Heikkala
Qt Charts project file structure change...
r2712 #include <QtCharts/QAbstractSeries>
#include <QtCharts/QLegend>
Titta Heikkala
Fix include syntax...
r2714 #include <QtWidgets/QGraphicsWidget>
#include <QtCore/QMargins>
Michal Klocek
adds missing files form previous commit
r12
Christian Kandeler
Fix compilation with namespaced Qt....
r2774 QT_BEGIN_NAMESPACE
Michal Klocek
Adds layout support for charts....
r115 class QGraphicsSceneResizeEvent;
Christian Kandeler
Fix compilation with namespaced Qt....
r2774 QT_END_NAMESPACE
Michal Klocek
Adds layout support for charts....
r115
Titta Heikkala
Qt Charts project file structure change...
r2712 QT_CHARTS_BEGIN_NAMESPACE
Michal Klocek
adds missing files form previous commit
r12
Tero Ahola
Renamed QSeries to QAbstractSeries
r988 class QAbstractSeries;
Michal Klocek
Refactors QAxis to QAbstractAxis...
r1541 class QAbstractAxis;
sauimone
framework for legend
r524 class QLegend;
Jani Honkonen
Some fixes for Qt5, vs2010 build and qml
r2277 class QChartPrivate;
Mika Salmela
A new box-and-whiskers series type added to charts....
r2548 class QBoxPlotSeries;
Michal Klocek
Refactor current draft to fit int current design specs...
r21
Titta Heikkala
Qt Charts project file structure change...
r2712 class QT_CHARTS_EXPORT QChart : public QGraphicsWidget
Tero Ahola
Integrated scatter series...
r38 {
Tero Ahola
Resizing of QGraphicItems now possible by resize signal from QChart
r48 Q_OBJECT
Tero Ahola
Added property definitions to QChart
r1524 Q_PROPERTY(QChart::ChartTheme theme READ theme WRITE setTheme)
Q_PROPERTY(QString title READ title WRITE setTitle)
Q_PROPERTY(bool backgroundVisible READ isBackgroundVisible WRITE setBackgroundVisible)
Q_PROPERTY(bool dropShadowEnabled READ isDropShadowEnabled WRITE setDropShadowEnabled)
Miikka Heikkinen
Added API to set chart background roundness...
r2549 Q_PROPERTY(qreal backgroundRoundness READ backgroundRoundness WRITE setBackgroundRoundness)
Tero Ahola
Added property definitions to QChart
r1524 Q_PROPERTY(QChart::AnimationOptions animationOptions READ animationOptions WRITE setAnimationOptions)
Titta Heikkala
Added possibility to set duration and easing curve for chart animation...
r2804 Q_PROPERTY(int animationDuration READ animationDuration WRITE setAnimationDuration)
Q_PROPERTY(QEasingCurve animationEasingCurve READ animationEasingCurve WRITE setAnimationEasingCurve)
Michal Klocek
Refactors layout...
r1965 Q_PROPERTY(QMargins margins READ margins WRITE setMargins)
Miikka Heikkinen
Add Polar chart support...
r2483 Q_PROPERTY(QChart::ChartType chartType READ chartType)
Miikka Heikkinen
Add API to specify plot area background....
r2498 Q_PROPERTY(bool plotAreaBackgroundVisible READ isPlotAreaBackgroundVisible WRITE setPlotAreaBackgroundVisible)
Miikka Heikkinen
Added QChart::localizeNumbers...
r2707 Q_PROPERTY(bool localizeNumbers READ localizeNumbers WRITE setLocalizeNumbers)
Miikka Heikkinen
Added QChart::locale property...
r2708 Q_PROPERTY(QLocale locale READ locale WRITE setLocale)
Miikka Heikkinen
Added plotAreaChanged signal to chart....
r2716 Q_PROPERTY(QRectF plotArea READ plotArea NOTIFY plotAreaChanged)
Tero Ahola
QML api to use chart theme enum of QChart
r836 Q_ENUMS(ChartTheme)
Tero Ahola
Added animation configuration to QML chart api
r1094 Q_ENUMS(AnimationOption)
Miikka Heikkinen
Add Polar chart support...
r2483 Q_ENUMS(ChartType)
Tero Ahola
QML api to use chart theme enum of QChart
r836
Tero Ahola
Draft implementation for setting color themes for a chart
r64 public:
Miikka Heikkinen
Add Polar chart support...
r2483 enum ChartType {
ChartTypeUndefined = 0,
ChartTypeCartesian,
ChartTypePolar
};
Michal Klocek
Adds animation settings handling
r298 enum ChartTheme {
Tero Ahola
Removed default theme, now using light as the default
r853 ChartThemeLight = 0,
Tero Ahola
Three more themes
r651 ChartThemeBlueCerulean,
ChartThemeDark,
ChartThemeBrownSand,
ChartThemeBlueNcs,
Tero Ahola
Added Icy Blue and High Contrast theme
r757 ChartThemeHighContrast,
Titta Heikkala
Add new Qt theme template...
r2625 ChartThemeBlueIcy,
ChartThemeQt
Tero Ahola
Draft implementation for setting color themes for a chart
r64 };
Michal Klocek
Polishing qchart class
r742 enum AnimationOption {
Michal Klocek
Adds animation settings handling
r298 NoAnimation = 0x0,
GridAxisAnimations = 0x1,
Jani Honkonen
astyle and manual coding style fixes for src-folder
r2097 SeriesAnimations = 0x2,
Michal Klocek
Adds animation settings handling
r298 AllAnimations = 0x3
Michal Klocek
Polishing qchart class
r742 };
Q_DECLARE_FLAGS(AnimationOptions, AnimationOption)
Michal Klocek
Adds animation settings handling
r298
Michal Klocek
adds missing files form previous commit
r12 public:
Marc Mutz
Make public headers compile with -Wzero-as-null-pointer-constant...
r2871 explicit QChart(QGraphicsItem *parent = Q_NULLPTR, Qt::WindowFlags wFlags = Qt::WindowFlags());
Tero Ahola
Resizing of QGraphicItems now possible by resize signal from QChart
r48 ~QChart();
Michal Klocek
adds missing files form previous commit
r12
Michal Klocek
Refactors QAxis to QAbstractAxis...
r1541 void addSeries(QAbstractSeries *series);
Tero Ahola
Renamed QSeries to QAbstractSeries
r988 void removeSeries(QAbstractSeries *series);
Michal Klocek
Adds PIMPL to qchart
r740 void removeAllSeries();
Jani Honkonen
more coding style fixes for src-folder...
r2104 QList<QAbstractSeries *> series() const;
Michal Klocek
adds missing files form previous commit
r12
Tero Ahola
Documented the new functionality in QChart
r2360 // *** deprecated ***
Marc Mutz
Make public headers compile with -Wzero-as-null-pointer-constant...
r2871 void setAxisX(QAbstractAxis *axis, QAbstractSeries *series = Q_NULLPTR);
void setAxisY(QAbstractAxis *axis, QAbstractSeries *series = Q_NULLPTR);
QAbstractAxis *axisX(QAbstractSeries *series = Q_NULLPTR) const;
QAbstractAxis *axisY(QAbstractSeries *series = Q_NULLPTR) const;
Tero Ahola
Documented the new functionality in QChart
r2360 // ******************
Michal Klocek
Refactors internals...
r2273
Miikka Heikkinen
Add Polar chart support...
r2483 void addAxis(QAbstractAxis *axis, Qt::Alignment alignment);
Michal Klocek
Refactors internals...
r2273 void removeAxis(QAbstractAxis *axis);
Marc Mutz
Make public headers compile with -Wzero-as-null-pointer-constant...
r2871 QList<QAbstractAxis*> axes(Qt::Orientations orientation = Qt::Horizontal|Qt::Vertical, QAbstractSeries *series = Q_NULLPTR) const;
Michal Klocek
Adds missing functions to qchart API
r1542
Michal Klocek
Refactor QChart API...
r1577 void createDefaultAxes();
Michal Klocek
Adds PIMPL to qchart
r740 void setTheme(QChart::ChartTheme theme);
QChart::ChartTheme theme() const;
Michal Klocek
Adds pimpl to qchart class
r28
Jani Honkonen
more coding style fixes for src-folder...
r2104 void setTitle(const QString &title);
Michal Klocek
Adds force option to chartTheme...
r645 QString title() const;
Jani Honkonen
more coding style fixes for src-folder...
r2104 void setTitleFont(const QFont &font);
Michal Klocek
Adds force option to chartTheme...
r645 QFont titleFont() const;
void setTitleBrush(const QBrush &brush);
QBrush titleBrush() const;
Michal Klocek
Increses margins prescision
r874
sauimone
improved legend layout
r783 void setBackgroundBrush(const QBrush &brush);
Michal Klocek
Adds force option to chartTheme...
r645 QBrush backgroundBrush() const;
sauimone
improved legend layout
r783 void setBackgroundPen(const QPen &pen);
Michal Klocek
Adds force option to chartTheme...
r645 QPen backgroundPen() const;
Tero Ahola
Default to true in boolean setters
r987 void setBackgroundVisible(bool visible = true);
Michal Klocek
Adds force option to chartTheme...
r645 bool isBackgroundVisible() const;
Michal Klocek
Change background gradient to use ObjectBoundingMode...
r122
Tero Ahola
Minor modifications to properties of abstract, area and bar series
r1462 void setDropShadowEnabled(bool enabled = true);
bool isDropShadowEnabled() const;
Miikka Heikkinen
Added API to set chart background roundness...
r2549 void setBackgroundRoundness(qreal diameter);
qreal backgroundRoundness() const;
Titta Heikkala
Added possibility to set duration and easing curve for chart animation...
r2804
Michal Klocek
Adds animation settings handling
r298 void setAnimationOptions(AnimationOptions options);
AnimationOptions animationOptions() const;
Titta Heikkala
Added possibility to set duration and easing curve for chart animation...
r2804 void setAnimationDuration(int msecs);
int animationDuration() const;
void setAnimationEasingCurve(const QEasingCurve &curve);
QEasingCurve animationEasingCurve() const;
Michal Klocek
Adds animation settings handling
r298
Michal Klocek
Add zoom support...
r67 void zoomIn();
void zoomOut();
Michal Klocek
Refactors internals...
r2273
void zoomIn(const QRectF &rect);
Jani Honkonen
Add gestures support for zoomlinechart example...
r1187 void zoom(qreal factor);
Miikka Heikkinen
Added QChart::zoomReset() and QChart::isZoomed()...
r2545 void zoomReset();
bool isZoomed();
Michal Klocek
Refactors internals...
r2273
Michal Klocek
Changes to qchart qabstractseries API
r1553 void scroll(qreal dx, qreal dy);
Michal Klocek
Add zoom support...
r67
Jani Honkonen
more coding style fixes for src-folder...
r2104 QLegend *legend() const;
Michal Klocek
Refactors layout managment...
r1534
Jani Honkonen
more coding style fixes for src-folder...
r2104 void setMargins(const QMargins &margins);
Michal Klocek
Refactors layout...
r1965 QMargins margins() const;
Michal Klocek
Implements minimumMargins...
r1883
Michal Klocek
Adds plotArea()...
r1648 QRectF plotArea() const;
Miikka Heikkinen
Add API to specify plot area background....
r2498 void setPlotAreaBackgroundBrush(const QBrush &brush);
QBrush plotAreaBackgroundBrush() const;
void setPlotAreaBackgroundPen(const QPen &pen);
QPen plotAreaBackgroundPen() const;
void setPlotAreaBackgroundVisible(bool visible = true);
bool isPlotAreaBackgroundVisible() const;
Miikka Heikkinen
Added QChart::localizeNumbers...
r2707 void setLocalizeNumbers(bool localize);
bool localizeNumbers() const;
Miikka Heikkinen
Added QChart::locale property...
r2708 void setLocale(const QLocale &locale);
QLocale locale() const;
sauimone
legend pos to theme example, legend padding
r803
Marc Mutz
Make public headers compile with -Wzero-as-null-pointer-constant...
r2871 QPointF mapToValue(const QPointF &position, QAbstractSeries *series = Q_NULLPTR);
QPointF mapToPosition(const QPointF &value, QAbstractSeries *series = Q_NULLPTR);
Marek Rosa
Mapping functions added to QChart. Callout example updated
r2344
Miikka Heikkinen
Add Polar chart support...
r2483 ChartType chartType() const;
Miikka Heikkinen
Fix build against 5.6...
r2793 Q_SIGNALS:
Miikka Heikkinen
Added plotAreaChanged signal to chart....
r2716 void plotAreaChanged(const QRectF &plotArea);
Michal Klocek
Adds PIMPL to qchart
r740 protected:
Miikka Heikkinen
Add Polar chart support...
r2483 explicit QChart(QChart::ChartType type, QGraphicsItem *parent, Qt::WindowFlags wFlags);
Michal Klocek
Adds PIMPL to qchart
r740 QScopedPointer<QChartPrivate> d_ptr;
Michal Klocek
Fix attempt to wrong graphics items hadnling
r790 friend class QLegend;
Tero Ahola
QML ChartView signals seriesAdded and seriesRemoved
r2068 friend class DeclarativeChart;
Michal Klocek
Refactors internals...
r2273 friend class ChartDataSet;
friend class ChartPresenter;
friend class ChartThemeManager;
friend class QAbstractSeries;
Mika Salmela
A new box-and-whiskers series type added to charts....
r2548 friend class QBoxPlotSeriesPrivate;
Miikka Heikkinen
Make all Q_DISABLE_COPY declarations private....
r2723
private:
Tero Ahola
Internal review: Removed extra semicolons
r760 Q_DISABLE_COPY(QChart)
Michal Klocek
adds missing files form previous commit
r12 };
Titta Heikkala
Qt Charts project file structure change...
r2712 QT_CHARTS_END_NAMESPACE
Michal Klocek
adds missing files form previous commit
r12
Titta Heikkala
Qt Charts project file structure change...
r2712 Q_DECLARE_OPERATORS_FOR_FLAGS(QT_CHARTS_NAMESPACE::QChart::AnimationOptions)
Michal Klocek
Adds animation settings handling
r298
Jani Honkonen
Spit&polish public headers
r2046 #endif // QCHART_H