diff options
author | Paul Gilbert | 2011-10-31 11:35:04 +1100 |
---|---|---|
committer | Paul Gilbert | 2011-10-31 11:35:04 +1100 |
commit | b6239f3b3da789fc996ff3f2310777be9de1e298 (patch) | |
tree | 783471845087a0f43681c17126be9d7a969911a7 /engines/tsage/ringworld2 | |
parent | ef1f96b674fe4840c553e915f02eae45666cdf3b (diff) | |
download | scummvm-rg350-b6239f3b3da789fc996ff3f2310777be9de1e298.tar.gz scummvm-rg350-b6239f3b3da789fc996ff3f2310777be9de1e298.tar.bz2 scummvm-rg350-b6239f3b3da789fc996ff3f2310777be9de1e298.zip |
TSAGE: Display UI cursor correctly in R2RW
Diffstat (limited to 'engines/tsage/ringworld2')
-rw-r--r-- | engines/tsage/ringworld2/ringworld2_logic.cpp | 16 | ||||
-rw-r--r-- | engines/tsage/ringworld2/ringworld2_logic.h | 7 |
2 files changed, 23 insertions, 0 deletions
diff --git a/engines/tsage/ringworld2/ringworld2_logic.cpp b/engines/tsage/ringworld2/ringworld2_logic.cpp index f9ac2efcbf..642d265e42 100644 --- a/engines/tsage/ringworld2/ringworld2_logic.cpp +++ b/engines/tsage/ringworld2/ringworld2_logic.cpp @@ -224,6 +224,22 @@ void SceneExt::refreshBackground(int xAmount, int yAmount) { /*--------------------------------------------------------------------------*/ +void SceneHandlerExt::postInit(SceneObjectList *OwnerList) { + SceneHandler::postInit(OwnerList); +} + +void SceneHandlerExt::process(Event &event) { + if (T2_GLOBALS._uiElements._active) { + T2_GLOBALS._uiElements.process(event); + if (event.handled) + return; + } + + SceneHandler::process(event); +} + +/*--------------------------------------------------------------------------*/ + DisplayHotspot::DisplayHotspot(int regionId, ...) { _sceneRegionId = regionId; diff --git a/engines/tsage/ringworld2/ringworld2_logic.h b/engines/tsage/ringworld2/ringworld2_logic.h index b12978344c..b0f388a2ae 100644 --- a/engines/tsage/ringworld2/ringworld2_logic.h +++ b/engines/tsage/ringworld2/ringworld2_logic.h @@ -73,6 +73,13 @@ public: void clearScreen(); }; +class SceneHandlerExt: public SceneHandler { +public: + virtual void postInit(SceneObjectList *OwnerList = NULL); + virtual void process(Event &event); +}; + + class DisplayHotspot : public SceneObject { private: Common::Array<int> _actions; |