4#ifndef QQUICKANIMATEDPROPERTY_P_H
5#define QQUICKANIMATEDPROPERTY_P_H
20#include <QtGui/private/qbezier_p.h>
28 struct Q_QUICKVECTORIMAGEGENERATOR_EXPORT PropertyAnimation {
32 ReplacePreviousAnimations = 2,
35 QMap<
int, QVariant> frames;
36 QMap<
int, QBezier> easingPerFrame;
40 quint8 flags = NoFlags;
42 bool isConstant()
const {
46 for (
const auto& frame : frames) {
47 if (frame != frames.first())
53 PropertyAnimation simplified()
const;
56 QQuickAnimatedProperty(
const QVariant &defaultValue)
57 : m_defaultValue(defaultValue)
61 bool isAnimated()
const
63 return !m_animations.isEmpty();
66 QVariant defaultValue()
const
68 return m_defaultValue;
71 void setDefaultValue(
const QVariant &value)
73 m_defaultValue = value;
76 qsizetype animationCount()
const
78 return m_animations.size();
81 const PropertyAnimation &animation(
int index)
const
83 return m_animations.at(index);
86 void addAnimation(
const PropertyAnimation &animation)
88 if (m_animationGroups.isEmpty())
89 beginAnimationGroup();
91 m_animations.append(animation.simplified());
94 qsizetype animationGroupCount()
const
96 return m_animationGroups.size();
99 int animationGroup(
int index)
const
101 return m_animationGroups.at(index);
104 void beginAnimationGroup()
106 m_animationGroups.append(m_animations.size());
110 QVariant m_defaultValue;
111 QList<PropertyAnimation> m_animations;
112 QList<
int> m_animationGroups;
bool visitFilterNodeStart(const QSvgFilterContainer *node) override
void visitPolygonNode(const QSvgPolygon *node) override
bool visitSwitchNodeStart(const QSvgSwitch *node) override
void visitMaskNodeEnd(const QSvgMask *node) override
void visitEllipseNode(const QSvgEllipse *node) override
void visitPathNode(const QSvgPath *node) override
void visitMarkerNodeEnd(const QSvgMarker *node) override
bool visitDefsNodeStart(const QSvgDefs *node) override
void visitDefsNodeEnd(const QSvgDefs *node) override
bool visitMaskNodeStart(const QSvgMask *node) override
void visitDocumentNodeEnd(const QSvgDocument *node) override
~QSvgVisitorImpl() override
void visitStructureNodeEnd(const QSvgStructureNode *node) override
void visitRectNode(const QSvgRect *node) override
void visitFeFilterPrimitiveNodeEnd(const QSvgFeFilterPrimitive *node) override
void visitLineNode(const QSvgLine *node) override
void visitNode(const QSvgNode *node) override
bool visitMarkerNodeStart(const QSvgMarker *node) override
void visitPolylineNode(const QSvgPolyline *node) override
QSvgVisitorImpl(const QString svgFileName, QQuickGenerator *generator, bool assumeTrustedSource)
void visitUseNode(const QSvgUse *node) override
bool visitSymbolNodeStart(const QSvgSymbol *node) override
void visitPatternNodeEnd(const QSvgPattern *) override
bool visitDocumentNodeStart(const QSvgDocument *node) override
void visitImageNode(const QSvgImage *node) override
void visitFilterNodeEnd(const QSvgFilterContainer *node) override
bool visitPatternNodeStart(const QSvgPattern *) override
void visitTextNode(const QSvgText *node) override
void visitSwitchNodeEnd(const QSvgSwitch *node) override
void visitSymbolNodeEnd(const QSvgSymbol *node) override
bool visitFeFilterPrimitiveNodeStart(const QSvgFeFilterPrimitive *node) override
bool visitStructureNodeStart(const QSvgStructureNode *node) override
Combined button and popup list for selecting options.
QT_BEGIN_NAMESPACE QT_DECLARE_EXPORTED_QT_LOGGING_CATEGORY(lcAotCompiler, Q_QMLCOMPILER_EXPORT)