summaryrefslogtreecommitdiffstats
path: root/src/charts/animations/pieanimation.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/charts/animations/pieanimation.cpp')
-rw-r--r--src/charts/animations/pieanimation.cpp16
1 files changed, 8 insertions, 8 deletions
diff --git a/src/charts/animations/pieanimation.cpp b/src/charts/animations/pieanimation.cpp
index c513a663..5b974d88 100644
--- a/src/charts/animations/pieanimation.cpp
+++ b/src/charts/animations/pieanimation.cpp
@@ -22,9 +22,11 @@
QT_CHARTS_BEGIN_NAMESPACE
-PieAnimation::PieAnimation(PieChartItem *item)
+PieAnimation::PieAnimation(PieChartItem *item, int duration, QEasingCurve &curve)
: ChartAnimation(item),
- m_item(item)
+ m_item(item),
+ m_animationDuration(duration),
+ m_animationCurve(curve)
{
}
@@ -37,14 +39,14 @@ ChartAnimation *PieAnimation::updateValue(PieSliceItem *sliceItem, const PieSlic
PieSliceAnimation *animation = m_animations.value(sliceItem);
if (!animation) {
animation = new PieSliceAnimation(sliceItem);
+ animation->setDuration(m_animationDuration);
+ animation->setEasingCurve(m_animationCurve);
m_animations.insert(sliceItem, animation);
} else {
animation->stop();
}
animation->updateValue(sliceData);
- animation->setDuration(ChartAnimationDuration);
- animation->setEasingCurve(QEasingCurve::OutQuart);
return animation;
}
@@ -52,6 +54,8 @@ ChartAnimation *PieAnimation::updateValue(PieSliceItem *sliceItem, const PieSlic
ChartAnimation *PieAnimation::addSlice(PieSliceItem *sliceItem, const PieSliceData &sliceData, bool startupAnimation)
{
PieSliceAnimation *animation = new PieSliceAnimation(sliceItem);
+ animation->setDuration(m_animationDuration);
+ animation->setEasingCurve(m_animationCurve);
m_animations.insert(sliceItem, animation);
PieSliceData startValue = sliceData;
@@ -66,8 +70,6 @@ ChartAnimation *PieAnimation::addSlice(PieSliceItem *sliceItem, const PieSliceDa
startValue.m_radius = sliceData.m_holeRadius;
animation->setValue(startValue, sliceData);
- animation->setDuration(ChartAnimationDuration);
- animation->setEasingCurve(QEasingCurve::OutQuart);
return animation;
}
@@ -88,8 +90,6 @@ ChartAnimation *PieAnimation::removeSlice(PieSliceItem *sliceItem)
endValue.m_isLabelVisible = false;
animation->updateValue(endValue);
- animation->setDuration(ChartAnimationDuration);
- animation->setEasingCurve(QEasingCurve::OutQuart);
// PieSliceItem is the parent of PieSliceAnimation so the animation will be deleted as well..
connect(animation, SIGNAL(finished()), sliceItem, SLOT(deleteLater()));