##// END OF EJS Templates
Merge remote-tracking branch 'origin/5.7' into dev...
Merge remote-tracking branch 'origin/5.7' into dev Change-Id: I86dec1064d79704214e885681449ca347b193d66

File last commit:

r2854:46147b040d06
r2895:e9a2e2a5e9c0 merge
Show More
pieanimation.cpp
119 lines | 3.8 KiB | text/x-c | CppLexer
Miikka Heikkinen
Updated license...
r2854 /****************************************************************************
Jani Honkonen
Add license headers
r794 **
Miikka Heikkinen
Updated license...
r2854 ** Copyright (C) 2016 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
Jani Honkonen
Add license headers
r794 **
Miikka Heikkinen
Updated license...
r2854 ** This file is part of the Qt Charts module of the Qt Toolkit.
Jani Honkonen
Add license headers
r794 **
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.
Jani Honkonen
Add license headers
r794 **
Titta Heikkala
Updated license headers...
r2845 ** $QT_END_LICENSE$
**
Miikka Heikkinen
Updated license...
r2854 ****************************************************************************/
Jani Honkonen
Add license headers
r794
Titta Heikkala
Fix include syntax...
r2714 #include <private/pieanimation_p.h>
#include <private/piesliceanimation_p.h>
#include <private/piechartitem_p.h>
Jani Honkonen
Add animations to pie. Works but has some visual issues when adding slices.
r618
Titta Heikkala
Qt Charts project file structure change...
r2712 QT_CHARTS_BEGIN_NAMESPACE
Jani Honkonen
Add animations to pie. Works but has some visual issues when adding slices.
r618
Titta Heikkala
Added possibility to set duration and easing curve for chart animation...
r2804 PieAnimation::PieAnimation(PieChartItem *item, int duration, QEasingCurve &curve)
Jani Honkonen
astyle and manual coding style fixes for src-folder
r2097 : ChartAnimation(item),
Titta Heikkala
Added possibility to set duration and easing curve for chart animation...
r2804 m_item(item),
m_animationDuration(duration),
m_animationCurve(curve)
Jani Honkonen
Add animations to pie. Works but has some visual issues when adding slices.
r618 {
}
PieAnimation::~PieAnimation()
{
}
Jani Honkonen
more coding style fixes for src-folder...
r2104 ChartAnimation *PieAnimation::updateValue(PieSliceItem *sliceItem, const PieSliceData &sliceData)
Jani Honkonen
Add animations to pie. Works but has some visual issues when adding slices.
r618 {
Jani Honkonen
Refactor piechart to avoid using invalid QPieSlice pointers....
r1053 PieSliceAnimation *animation = m_animations.value(sliceItem);
Jani Honkonen
Fix pie animation chrash
r2321 if (!animation) {
animation = new PieSliceAnimation(sliceItem);
Titta Heikkala
Added possibility to set duration and easing curve for chart animation...
r2804 animation->setDuration(m_animationDuration);
animation->setEasingCurve(m_animationCurve);
Jani Honkonen
Fix pie animation chrash
r2321 m_animations.insert(sliceItem, animation);
} else {
animation->stop();
}
Jani Honkonen
Refactoring pie series and animations.
r621
Jani Honkonen
Rename PieSliceLayout -> PieSliceData. A "layout" is a bad name for this.
r668 animation->updateValue(sliceData);
Jani Honkonen
Refactoring pie series and animations.
r621
Michal Klocek
Refactor animator...
r1735 return animation;
Jani Honkonen
Refactoring pie series and animations.
r621 }
Jani Honkonen
more coding style fixes for src-folder...
r2104 ChartAnimation *PieAnimation::addSlice(PieSliceItem *sliceItem, const PieSliceData &sliceData, bool startupAnimation)
Jani Honkonen
Refactoring pie series and animations.
r621 {
Jani Honkonen
Refactor piechart to avoid using invalid QPieSlice pointers....
r1053 PieSliceAnimation *animation = new PieSliceAnimation(sliceItem);
Titta Heikkala
Added possibility to set duration and easing curve for chart animation...
r2804 animation->setDuration(m_animationDuration);
animation->setEasingCurve(m_animationCurve);
Jani Honkonen
Refactor piechart to avoid using invalid QPieSlice pointers....
r1053 m_animations.insert(sliceItem, animation);
Jani Honkonen
Refactoring pie series and animations.
r621
Jani Honkonen
Rename PieSliceLayout -> PieSliceData. A "layout" is a bad name for this.
r668 PieSliceData startValue = sliceData;
startValue.m_radius = 0;
Jani Honkonen
Refactor graphical side of pie to simplify the implementation.
r1074 if (startupAnimation)
Jani Honkonen
Rename PieSliceLayout -> PieSliceData. A "layout" is a bad name for this.
r668 startValue.m_startAngle = 0;
Jani Honkonen
Nicer animation for adding a pie initially.
r634 else
Marek Rosa
Animation folder formating: white spaces, brackets, etc fixed
r738 startValue.m_startAngle = sliceData.m_startAngle + (sliceData.m_angleSpan / 2);
Jani Honkonen
Rename PieSliceLayout -> PieSliceData. A "layout" is a bad name for this.
r668 startValue.m_angleSpan = 0;
Jani Honkonen
Refactoring pie series and animations.
r621
Marek Rosa
Donut support simplified. Examples updated
r1838 if (sliceData.m_holeRadius > 0)
startValue.m_radius = sliceData.m_holeRadius;
Jani Honkonen
pie: finetuning donut animations...
r1758
animation->setValue(startValue, sliceData);
Michal Klocek
Refactor animator...
r1735
return animation;
Jani Honkonen
Refactoring pie series and animations.
r621 }
Jani Honkonen
more coding style fixes for src-folder...
r2104 ChartAnimation *PieAnimation::removeSlice(PieSliceItem *sliceItem)
Jani Honkonen
Refactoring pie series and animations.
r621 {
Jani Honkonen
Refactor piechart to avoid using invalid QPieSlice pointers....
r1053 PieSliceAnimation *animation = m_animations.value(sliceItem);
Jani Honkonen
Refactoring pie series and animations.
r621 Q_ASSERT(animation);
animation->stop();
Jani Honkonen
Rename PieSliceLayout -> PieSliceData. A "layout" is a bad name for this.
r668 PieSliceData endValue = animation->currentSliceValue();
Marek Rosa
Donut support simplified. Examples updated
r1838 if (endValue.m_holeRadius > 0)
endValue.m_radius = endValue.m_holeRadius;
Jani Honkonen
pie: finetuning donut animations...
r1758 else
endValue.m_radius = 0;
Jani Honkonen
Rename PieSliceLayout -> PieSliceData. A "layout" is a bad name for this.
r668 endValue.m_startAngle = endValue.m_startAngle + endValue.m_angleSpan;
endValue.m_angleSpan = 0;
Jani Honkonen
Slice remove animation hides the label
r1075 endValue.m_isLabelVisible = false;
Jani Honkonen
Refactoring pie series and animations.
r621
Jani Honkonen
Rename PieSliceLayout -> PieSliceData. A "layout" is a bad name for this.
r668 animation->updateValue(endValue);
Jani Honkonen
Refactoring pie series and animations.
r621
Jani Honkonen
Refactor piechart to avoid using invalid QPieSlice pointers....
r1053 // PieSliceItem is the parent of PieSliceAnimation so the animation will be deleted as well..
connect(animation, SIGNAL(finished()), sliceItem, SLOT(deleteLater()));
m_animations.remove(sliceItem);
Michal Klocek
Refactor animator...
r1735 return animation;
Jani Honkonen
Add animations to pie. Works but has some visual issues when adding slices.
r618 }
void PieAnimation::updateCurrentValue(const QVariant &)
{
// nothing to do...
}
#include "moc_pieanimation_p.cpp"
Titta Heikkala
Qt Charts project file structure change...
r2712 QT_CHARTS_END_NAMESPACE