summaryrefslogtreecommitdiffstats
path: root/examples/graphicsview/collidingmice/mouse.h
diff options
context:
space:
mode:
authorNorwegian Rock Cat <qt-info@nokia.com>2009-04-06 17:10:26 +0200
committerNorwegian Rock Cat <qt-info@nokia.com>2009-04-06 17:15:53 +0200
commit1bb9d8fcd59a91751c8d91e2885e2b05eff4d1bb (patch)
treebe50c79ad2211cb4ab5ee6547ff4be207bb038b7 /examples/graphicsview/collidingmice/mouse.h
parent9b3de2a229bfd393a13bcf08750c2284f775d8c5 (diff)
BT: Adjust the colliding mice example to work with coalesced updates.
It seems that Cocoa is much more strict about coalesced updates than Carbon ever was. The upshot of this is that some examples that "worked" after a fashion in Carbon, do not exhibit good frame rates with Cocoa. The reason why is that apparently Cocoa will decide to flush to the screen every time a timer fires. If you have a lot of timers that are all dependent on doing on update to the screen, you will get undesirable effects. Thankfully, it is possible to adjust the examples to follow best practices and get a good result. So, we now only do the animation once using QGraphicsScene::advance(). We are also able to make the mice less heavy (no QObject subclass). I've updated the docs and someone on the doc team has kindly volunteered to go through them. Reviewed-by: Andreas
Diffstat (limited to 'examples/graphicsview/collidingmice/mouse.h')
-rw-r--r--examples/graphicsview/collidingmice/mouse.h7
1 files changed, 2 insertions, 5 deletions
diff --git a/examples/graphicsview/collidingmice/mouse.h b/examples/graphicsview/collidingmice/mouse.h
index 832ea53704..c08ce4a2f2 100644
--- a/examples/graphicsview/collidingmice/mouse.h
+++ b/examples/graphicsview/collidingmice/mouse.h
@@ -43,13 +43,10 @@
#define MOUSE_H
#include <QGraphicsItem>
-#include <QObject>
//! [0]
-class Mouse : public QObject, public QGraphicsItem
+class Mouse : public QGraphicsItem
{
- Q_OBJECT
-
public:
Mouse();
@@ -59,7 +56,7 @@ public:
QWidget *widget);
protected:
- void timerEvent(QTimerEvent *event);
+ void advance(int step);
private:
qreal angle;