summaryrefslogtreecommitdiffstats
path: root/plugins/declarative/declarativechart.h
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/declarative/declarativechart.h')
-rw-r--r--plugins/declarative/declarativechart.h245
1 files changed, 0 insertions, 245 deletions
diff --git a/plugins/declarative/declarativechart.h b/plugins/declarative/declarativechart.h
deleted file mode 100644
index a1b40d80..00000000
--- a/plugins/declarative/declarativechart.h
+++ /dev/null
@@ -1,245 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2014 Digia Plc
-** All rights reserved.
-** For any questions to Digia, please use contact form at http://qt.digia.com
-**
-** This file is part of the Qt Enterprise Charts Add-on.
-**
-** $QT_BEGIN_LICENSE$
-** Licensees holding valid Qt Enterprise licenses may use this file in
-** accordance with the Qt Enterprise License Agreement provided with the
-** Software or, alternatively, in accordance with the terms contained in
-** a written agreement between you and Digia.
-**
-** If you have questions regarding the use of this file, please use
-** contact form at http://qt.digia.com
-** $QT_END_LICENSE$
-**
-****************************************************************************/
-
-#ifndef DECLARATIVECHART_H
-#define DECLARATIVECHART_H
-
-#include <QtCore/QtGlobal>
-#include "shared_defines.h"
-
-#ifdef CHARTS_FOR_QUICK2
-#include <QtQuick/QQuickItem>
-#include <QtQuick/QQuickPaintedItem>
-#include <QtWidgets/QGraphicsScene>
-#include <QtCore/QMutex>
-#else
-#include <QtDeclarative/QDeclarativeItem>
-#endif
-
-#include "qchart.h"
-#include <QtCore/QLocale>
-
-QTCOMMERCIALCHART_BEGIN_NAMESPACE
-
-class DeclarativeMargins;
-class Domain;
-class DeclarativeAxes;
-
-class DeclarativeChart : public QDECLARATIVE_PAINTED_ITEM
-{
- Q_OBJECT
- Q_PROPERTY(Theme theme READ theme WRITE setTheme)
- Q_PROPERTY(Animation animationOptions READ animationOptions WRITE setAnimationOptions)
- Q_PROPERTY(QString title READ title WRITE setTitle)
- Q_PROPERTY(QFont titleFont READ titleFont WRITE setTitleFont)
- Q_PROPERTY(QColor titleColor READ titleColor WRITE setTitleColor NOTIFY titleColorChanged)
- Q_PROPERTY(QLegend *legend READ legend CONSTANT)
- Q_PROPERTY(int count READ count)
- Q_PROPERTY(QColor backgroundColor READ backgroundColor WRITE setBackgroundColor NOTIFY backgroundColorChanged)
- Q_PROPERTY(bool dropShadowEnabled READ dropShadowEnabled WRITE setDropShadowEnabled NOTIFY dropShadowEnabledChanged)
- Q_PROPERTY(qreal backgroundRoundness READ backgroundRoundness WRITE setBackgroundRoundness NOTIFY backgroundRoundnessChanged REVISION 3)
- Q_PROPERTY(qreal topMargin READ topMargin)
- Q_PROPERTY(qreal bottomMargin READ bottomMargin)
- Q_PROPERTY(qreal leftMargin READ leftMargin)
- Q_PROPERTY(qreal rightMargin READ rightMargin)
- Q_PROPERTY(DeclarativeMargins *minimumMargins READ minimumMargins NOTIFY minimumMarginsChanged REVISION 1)
- Q_PROPERTY(DeclarativeMargins *margins READ margins NOTIFY marginsChanged REVISION 2)
- Q_PROPERTY(QRectF plotArea READ plotArea NOTIFY plotAreaChanged REVISION 1)
- Q_PROPERTY(QColor plotAreaColor READ plotAreaColor WRITE setPlotAreaColor NOTIFY plotAreaColorChanged REVISION 3)
-#ifdef CHARTS_FOR_QUICK2
- Q_PROPERTY(QQmlListProperty<QAbstractAxis> axes READ axes REVISION 2)
-#else
- Q_PROPERTY(QDeclarativeListProperty<QAbstractAxis> axes READ axes REVISION 2)
-#endif
- Q_PROPERTY(bool localizeNumbers READ localizeNumbers WRITE setLocalizeNumbers NOTIFY localizeNumbersChanged REVISION 4)
- Q_PROPERTY(QLocale locale READ locale WRITE setLocale NOTIFY localeChanged REVISION 4)
- Q_ENUMS(Animation)
- Q_ENUMS(Theme)
- Q_ENUMS(SeriesType)
-
-public:
- // duplicating enums from QChart to make the QML api namings 1-to-1 with the C++ api
- enum Theme {
- ChartThemeLight = 0,
- ChartThemeBlueCerulean,
- ChartThemeDark,
- ChartThemeBrownSand,
- ChartThemeBlueNcs,
- ChartThemeHighContrast,
- ChartThemeBlueIcy,
- ChartThemeQt
- };
-
- enum Animation {
- NoAnimation = 0x0,
- GridAxisAnimations = 0x1,
- SeriesAnimations = 0x2,
- AllAnimations = 0x3
- };
-
- enum SeriesType {
- SeriesTypeLine,
- SeriesTypeArea,
- SeriesTypeBar,
- SeriesTypeStackedBar,
- SeriesTypePercentBar,
- SeriesTypeBoxPlot,
- SeriesTypePie,
- SeriesTypeScatter,
- SeriesTypeSpline,
- SeriesTypeHorizontalBar,
- SeriesTypeHorizontalStackedBar,
- SeriesTypeHorizontalPercentBar
- };
-
-public:
- DeclarativeChart(QDECLARATIVE_ITEM *parent = 0);
- ~DeclarativeChart();
-
-public: // From parent classes
- void childEvent(QChildEvent *event);
- void componentComplete();
- void geometryChanged(const QRectF &newGeometry, const QRectF &oldGeometry);
-#ifdef CHARTS_FOR_QUICK2
- void paint(QPainter *painter);
-protected:
- void mousePressEvent(QMouseEvent *event);
- void mouseReleaseEvent(QMouseEvent *event);
- void hoverMoveEvent(QHoverEvent *event);
-private Q_SLOTS:
- void handleAntialiasingChanged(bool enable);
- void sceneChanged(QList<QRectF> region);
- void renderScene();
-#endif
-
-public:
- void setTheme(DeclarativeChart::Theme theme);
- DeclarativeChart::Theme theme();
- void setAnimationOptions(DeclarativeChart::Animation animations);
- DeclarativeChart::Animation animationOptions();
- void setTitle(QString title);
- QString title();
- QLegend *legend();
- QFont titleFont() const;
- void setTitleFont(const QFont &font);
- void setTitleColor(QColor color);
- QColor titleColor();
- void setBackgroundColor(QColor color);
- QColor backgroundColor();
- Q_REVISION(3) void setPlotAreaColor(QColor color);
- Q_REVISION(3) QColor plotAreaColor();
- Q_REVISION(4) void setLocalizeNumbers(bool localize);
- Q_REVISION(4) bool localizeNumbers() const;
- Q_REVISION(4) void setLocale(const QLocale &locale);
- Q_REVISION(4) QLocale locale() const;
-
- int count();
- void setDropShadowEnabled(bool enabled);
- bool dropShadowEnabled();
- Q_REVISION(3) qreal backgroundRoundness() const;
- Q_REVISION(3) void setBackgroundRoundness(qreal diameter);
-
- // Margins & plotArea
- qreal topMargin();
- qreal bottomMargin();
- qreal leftMargin();
- qreal rightMargin();
- DeclarativeMargins *minimumMargins() { return m_margins; }
- Q_REVISION(2) DeclarativeMargins *margins() { return m_margins; }
- QRectF plotArea() { return m_chart->plotArea(); }
-
- // Axis handling
- QAbstractAxis *defaultAxis(Qt::Orientation orientation, QAbstractSeries *series);
- void initializeAxes(QAbstractSeries *series);
- void doInitializeAxes(QAbstractSeries *series, DeclarativeAxes *axes);
- QDECLARATIVE_LIST_PROPERTY<QAbstractAxis> axes();
- static void axesAppendFunc(QDECLARATIVE_LIST_PROPERTY<QAbstractAxis> *list, QAbstractAxis *element);
- static int axesCountFunc(QDECLARATIVE_LIST_PROPERTY<QAbstractAxis> *list);
- static QAbstractAxis *axesAtFunc(QDECLARATIVE_LIST_PROPERTY<QAbstractAxis> *list, int index);
- static void axesClearFunc(QDECLARATIVE_LIST_PROPERTY<QAbstractAxis> *list);
-
-public:
- Q_INVOKABLE QAbstractSeries *series(int index);
- Q_INVOKABLE QAbstractSeries *series(QString seriesName);
- Q_INVOKABLE QAbstractSeries *createSeries(int type, QString name = "", QAbstractAxis *axisX = 0, QAbstractAxis *axisY = 0);
- Q_INVOKABLE void removeSeries(QAbstractSeries *series);
- Q_INVOKABLE void removeAllSeries() { m_chart->removeAllSeries(); }
- Q_INVOKABLE void setAxisX(QAbstractAxis *axis, QAbstractSeries *series = 0);
- Q_INVOKABLE void setAxisY(QAbstractAxis *axis, QAbstractSeries *series = 0);
- Q_INVOKABLE void createDefaultAxes();
- Q_INVOKABLE QAbstractAxis *axisX(QAbstractSeries *series = 0);
- Q_INVOKABLE QAbstractAxis *axisY(QAbstractSeries *series = 0);
- Q_INVOKABLE void zoom(qreal factor);
- Q_INVOKABLE void scrollLeft(qreal pixels);
- Q_INVOKABLE void scrollRight(qreal pixels);
- Q_INVOKABLE void scrollUp(qreal pixels);
- Q_INVOKABLE void scrollDown(qreal pixels);
-
-Q_SIGNALS:
- void axisLabelsChanged();
- void titleColorChanged(QColor color);
- void backgroundColorChanged();
- void dropShadowEnabledChanged(bool enabled);
- void minimumMarginsChanged();
- Q_REVISION(2) void marginsChanged();
- void plotAreaChanged(QRectF plotArea);
- void seriesAdded(QAbstractSeries *series);
- void seriesRemoved(QAbstractSeries *series);
- Q_REVISION(3) void plotAreaColorChanged();
- Q_REVISION(3) void backgroundRoundnessChanged(qreal diameter);
- Q_REVISION(4) void localizeNumbersChanged();
- Q_REVISION(4) void localeChanged();
-
-private Q_SLOTS:
- void changeMinimumMargins(int top, int bottom, int left, int right);
- void handleAxisXSet(QAbstractAxis *axis);
- void handleAxisYSet(QAbstractAxis *axis);
- void handleAxisXTopSet(QAbstractAxis *axis);
- void handleAxisYRightSet(QAbstractAxis *axis);
- void handleSeriesAdded(QAbstractSeries *series);
-
-protected:
- explicit DeclarativeChart(QChart::ChartType type, QDECLARATIVE_ITEM *parent);
-
-private:
- void initChart(QChart::ChartType type);
- // Extending QChart with DeclarativeChart is not possible because QObject does not support
- // multi inheritance, so we now have a QChart as a member instead
- QChart *m_chart;
-#ifdef CHARTS_FOR_QUICK2
- QGraphicsScene *m_scene;
- QPointF m_mousePressScenePoint;
- QPoint m_mousePressScreenPoint;
- QPointF m_lastMouseMoveScenePoint;
- QPoint m_lastMouseMoveScreenPoint;
- Qt::MouseButton m_mousePressButton;
- Qt::MouseButtons m_mousePressButtons;
- QMutex m_sceneImageLock;
- QImage *m_currentSceneImage;
- bool m_updatePending;
- Qt::HANDLE m_paintThreadId;
- Qt::HANDLE m_guiThreadId;
-#endif
- DeclarativeMargins *m_margins;
-};
-
-QTCOMMERCIALCHART_END_NAMESPACE
-
-#endif // DECLARATIVECHART_H