summaryrefslogtreecommitdiffstats
path: root/src/gui/widgets/qwidgetanimator_p.h
diff options
context:
space:
mode:
authorThierry Bastian <thierry.bastian@nokia.com>2009-07-08 08:25:04 (GMT)
committerThierry Bastian <thierry.bastian@nokia.com>2009-07-08 08:26:26 (GMT)
commit7486389a0d742a7c9e70c6110692186f70dbf1e5 (patch)
tree10eabfd8aa596101a74c00260e992c5634afa50a /src/gui/widgets/qwidgetanimator_p.h
parent4d2f47da2e4869b0419cf13856ddca8a3e34e88a (diff)
downloadQt-7486389a0d742a7c9e70c6110692186f70dbf1e5.zip
Qt-7486389a0d742a7c9e70c6110692186f70dbf1e5.tar.gz
Qt-7486389a0d742a7c9e70c6110692186f70dbf1e5.tar.bz2
QMainWindow: made use of QPropertyAnimation for animations
This required some refactoring as well. Now code is leaner and cleaner
Diffstat (limited to 'src/gui/widgets/qwidgetanimator_p.h')
-rw-r--r--src/gui/widgets/qwidgetanimator_p.h23
1 files changed, 6 insertions, 17 deletions
diff --git a/src/gui/widgets/qwidgetanimator_p.h b/src/gui/widgets/qwidgetanimator_p.h
index 0c68e00..edd8e7c 100644
--- a/src/gui/widgets/qwidgetanimator_p.h
+++ b/src/gui/widgets/qwidgetanimator_p.h
@@ -56,41 +56,30 @@
#include <qobject.h>
#include <qrect.h>
#include <qmap.h>
-#include <qbasictimer.h>
-#include <qdatetime.h>
QT_BEGIN_NAMESPACE
class QWidget;
class QMainWindowLayout;
+class QPropertyAnimation;
class QWidgetAnimator : public QObject
{
+ Q_OBJECT
public:
QWidgetAnimator(QMainWindowLayout *layout);
- ~QWidgetAnimator();
void animate(QWidget *widget, const QRect &final_geometry, bool animate);
bool animating() const;
- bool animating(QWidget *widget);
+ bool animating(QWidget *widget) const;
void abort(QWidget *widget);
-protected:
- void timerEvent(QTimerEvent *e);
+private Q_SLOTS:
+ void animationFinished();
private:
- struct AnimationItem {
- AnimationItem(QWidget *_widget = 0, const QRect &_r1 = QRect(),
- const QRect &_r2 = QRect())
- : widget(_widget), r1(_r1), r2(_r2), step(0) {}
- QWidget *widget;
- QRect r1, r2;
- int step;
- };
- typedef QMap<QWidget*, AnimationItem> AnimationMap;
+ typedef QMap<QWidget*, QPropertyAnimation*> AnimationMap;
AnimationMap m_animation_map;
- QBasicTimer m_timer;
- QTime m_time;
QMainWindowLayout *m_mainWindowLayout;
};