diff options
author | uruk | 2014-06-01 21:44:07 +0200 |
---|---|---|
committer | uruk | 2014-06-01 21:44:07 +0200 |
commit | 8eb6a4db8bb73df76c5cc1d90775d0925a5a6adb (patch) | |
tree | b23c8a4daf2347b4bcfee0eac9eb1f729e37c79e /engines/cge2/events.h | |
parent | 82898716cf24098e664211a5e2f904f9fe98d2d5 (diff) | |
download | scummvm-rg350-8eb6a4db8bb73df76c5cc1d90775d0925a5a6adb.tar.gz scummvm-rg350-8eb6a4db8bb73df76c5cc1d90775d0925a5a6adb.tar.bz2 scummvm-rg350-8eb6a4db8bb73df76c5cc1d90775d0925a5a6adb.zip |
CGE2: Add display of mouse cursor.
The actual click-handling is not working yet.
Diffstat (limited to 'engines/cge2/events.h')
-rw-r--r-- | engines/cge2/events.h | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/engines/cge2/events.h b/engines/cge2/events.h index 99f017bae3..39fbf536b9 100644 --- a/engines/cge2/events.h +++ b/engines/cge2/events.h @@ -65,6 +65,14 @@ public: /*----------------- MOUSE interface -----------------*/ +struct CGE2Event { + uint16 _mask; + uint16 _x; + uint16 _y; + Common::KeyCode _keyCode; + Sprite *_spritePtr; +}; + class Mouse : public Sprite { public: Sprite *_hold; @@ -83,6 +91,25 @@ private: CGE2Engine *_vm; }; +/*----------------- EventManager interface -----------------*/ + +class EventManager { +private: + CGE2Engine *_vm; + Common::Event _event; + CGE2Event _eventQueue[kEventMax]; + uint16 _eventQueueHead; + uint16 _eventQueueTail; + + void handleEvents(); +public: + EventManager(CGE2Engine *vm); + void poll(); + void clearEvent(Sprite *spr); + + CGE2Event &getNextEvent(); +}; + } // End of namespace CGE #endif // #define CGE2_EVENTS_H |