chartanimator_p.h
76 lines
| 2.3 KiB
| text/x-c
|
CLexer
Jani Honkonen
|
r794 | /**************************************************************************** | ||
** | ||||
** Copyright (C) 2012 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 Commercial Charts Add-on. | ||||
** | ||||
** $QT_BEGIN_LICENSE$ | ||||
** Licensees holding valid Qt Commercial licenses may use this file in | ||||
** accordance with the Qt Commercial 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$ | ||||
** | ||||
****************************************************************************/ | ||||
Michal Klocek
|
r969 | #ifndef CHARTANIMATOR_P_H | ||
#define CHARTANIMATOR_P_H | ||||
Michal Klocek
|
r530 | #include "qchartglobal.h" | ||
#include "chartanimation_p.h" | ||||
Jani Honkonen
|
r618 | #include "piechartitem_p.h" | ||
sauimone
|
r671 | #include "barchartitem_p.h" | ||
Michal Klocek
|
r531 | #include <QPointF> | ||
Michal Klocek
|
r530 | |||
QTCOMMERCIALCHART_BEGIN_NAMESPACE | ||||
class ChartItem; | ||||
Michal Klocek
|
r1006 | class ChartAxis; | ||
Michal Klocek
|
r560 | class AreaChartItem; | ||
Michal Klocek
|
r622 | class SplineChartItem; | ||
class ScatterChartItem; | ||||
class LineChartItem; | ||||
class XYChartItem; | ||||
Michal Klocek
|
r1217 | class XYAnimation; | ||
Michal Klocek
|
r530 | |||
Michal Klocek
|
r974 | class ChartAnimator : public QObject | ||
{ | ||||
Q_OBJECT | ||||
Michal Klocek
|
r530 | public: | ||
Marek Rosa
|
r738 | enum State{ShowState, ScrollUpState, ScrollDownState, ScrollLeftState, ScrollRightState, ZoomInState, ZoomOutState}; | ||
Michal Klocek
|
r677 | |||
Michal Klocek
|
r530 | ChartAnimator(QObject *parent = 0); | ||
virtual ~ChartAnimator(); | ||||
Michal Klocek
|
r1006 | void addAnimation(ChartAxis *item); | ||
Marek Rosa
|
r738 | void addAnimation(PieChartItem *item); | ||
void addAnimation(BarChartItem *item); | ||||
void removeAnimation(Chart *item); | ||||
Michal Klocek
|
r530 | |||
void animationStarted(); | ||||
Michal Klocek
|
r1006 | void updateLayout(ChartAxis *item, QVector<qreal> &layout); | ||
Michal Klocek
|
r530 | |||
Jani Honkonen
|
r1053 | void addAnimation(PieChartItem *item, PieSliceItem *sliceItem, const PieSliceData &sliceData, bool isEmpty); | ||
void removeAnimation(PieChartItem *item, PieSliceItem *sliceItem); | ||||
Jani Honkonen
|
r1074 | void updateAnimation(PieChartItem *item, PieSliceItem *sliceItem, const PieSliceData &sliceData); | ||
Jani Honkonen
|
r618 | |||
Marek Rosa
|
r738 | void updateLayout(BarChartItem *item, const QVector<QRectF> &oldLayout, const QVector<QRectF> &newLayout); | ||
sauimone
|
r671 | |||
Marek Rosa
|
r738 | void setState(State state,const QPointF &point = QPointF()); | ||
Michal Klocek
|
r531 | |||
Michal Klocek
|
r1217 | void startAnimation(XYAnimation* animation); | ||
Michal Klocek
|
r530 | private: | ||
Marek Rosa
|
r738 | QMap<Chart *, ChartAnimation *> m_animations; | ||
Michal Klocek
|
r531 | State m_state; | ||
QPointF m_point; | ||||
Michal Klocek
|
r530 | }; | ||
QTCOMMERCIALCHART_END_NAMESPACE | ||||
#endif | ||||