Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-09-20 09:22:03

0001 // Copyright (C) 2016 The Qt Company Ltd.
0002 // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
0003 // Qt-Security score:significant reason:default
0004 
0005 #ifndef QSEQUENTIALANIMATIONGROUP_H
0006 #define QSEQUENTIALANIMATIONGROUP_H
0007 
0008 #include <QtCore/qanimationgroup.h>
0009 
0010 QT_REQUIRE_CONFIG(animation);
0011 
0012 QT_BEGIN_NAMESPACE
0013 
0014 class QPauseAnimation;
0015 class QSequentialAnimationGroupPrivate;
0016 
0017 class Q_CORE_EXPORT QSequentialAnimationGroup : public QAnimationGroup
0018 {
0019     Q_OBJECT
0020     Q_PROPERTY(QAbstractAnimation *currentAnimation READ currentAnimation
0021                NOTIFY currentAnimationChanged BINDABLE bindableCurrentAnimation)
0022 
0023 public:
0024     QSequentialAnimationGroup(QObject *parent = nullptr);
0025     ~QSequentialAnimationGroup();
0026 
0027     QPauseAnimation *addPause(int msecs);
0028     QPauseAnimation *insertPause(int index, int msecs);
0029 
0030     QAbstractAnimation *currentAnimation() const;
0031     QBindable<QAbstractAnimation *> bindableCurrentAnimation() const;
0032     int duration() const override;
0033 
0034 Q_SIGNALS:
0035     void currentAnimationChanged(QAbstractAnimation *current);
0036 
0037 protected:
0038     QSequentialAnimationGroup(QSequentialAnimationGroupPrivate &dd, QObject *parent);
0039     bool event(QEvent *event) override;
0040 
0041     void updateCurrentTime(int) override;
0042     void updateState(QAbstractAnimation::State newState, QAbstractAnimation::State oldState) override;
0043     void updateDirection(QAbstractAnimation::Direction direction) override;
0044 
0045 private:
0046     Q_DISABLE_COPY(QSequentialAnimationGroup)
0047     Q_DECLARE_PRIVATE(QSequentialAnimationGroup)
0048     Q_PRIVATE_SLOT(d_func(), void _q_uncontrolledAnimationFinished())
0049 };
0050 
0051 QT_END_NAMESPACE
0052 
0053 #endif //QSEQUENTIALANIMATIONGROUP_H