aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrei Prykhodko2018-07-20 21:54:05 +0300
committerAndrei Prykhodko2018-07-20 22:05:46 +0300
commitda34d0dce2943ffb936d55bb2291d728002d0002 (patch)
tree7e823f8fe24990e0290022e6bb3e7d4018f38161
parent8a27ac879ed6241d4f1e79083e4dc431da1d2997 (diff)
downloadscummvm-rg350-da34d0dce2943ffb936d55bb2291d728002d0002.tar.gz
scummvm-rg350-da34d0dce2943ffb936d55bb2291d728002d0002.tar.bz2
scummvm-rg350-da34d0dce2943ffb936d55bb2291d728002d0002.zip
GRAPHICS: MACGUI: moved engine ptr, pause callback to private section
-rw-r--r--graphics/macgui/macmenu.cpp4
-rw-r--r--graphics/macgui/macwindowmanager.cpp15
-rw-r--r--graphics/macgui/macwindowmanager.h10
3 files changed, 22 insertions, 7 deletions
diff --git a/graphics/macgui/macmenu.cpp b/graphics/macgui/macmenu.cpp
index 499f0b9710..6eb9689ab5 100644
--- a/graphics/macgui/macmenu.cpp
+++ b/graphics/macgui/macmenu.cpp
@@ -556,8 +556,8 @@ bool MacMenu::mouseMove(int x, int y) {
return true;
} else if ((_wm->_mode & kWMModeAutohideMenu) && !_bbox.contains(x, y)) {
_isVisible = false;
- if ((_wm->_mode & kWMModalMenuMode) && _wm->_pauseEngineCallback) {
- _wm->_pauseEngineCallback(_wm->_engine, false);
+ if (_wm->_mode & kWMModalMenuMode) {
+ _wm->pauseEngine(false);
}
}
diff --git a/graphics/macgui/macwindowmanager.cpp b/graphics/macgui/macwindowmanager.cpp
index 294983ac4a..5dcea4d754 100644
--- a/graphics/macgui/macwindowmanager.cpp
+++ b/graphics/macgui/macwindowmanager.cpp
@@ -337,8 +337,8 @@ static void menuTimerHandler(void *refCon) {
if (wm->_menuHotzone.contains(wm->_lastMousePos)) {
wm->activateMenu();
- if ((wm->_mode & kWMModalMenuMode) && wm->_pauseEngineCallback) {
- wm->_pauseEngineCallback(wm->_engine, true);
+ if (wm->_mode & kWMModalMenuMode) {
+ wm->pauseEngine(true);
}
}
@@ -509,4 +509,15 @@ void MacWindowManager::passPalette(const byte *pal, uint size) {
_colorBlack = darkest;
}
+void MacWindowManager::pauseEngine(bool pause) {
+ if (_engine && _pauseEngineCallback) {
+ _pauseEngineCallback(_engine, pause);
+ }
+}
+
+void MacWindowManager::setEnginePauseCallback(void *engine, void (*pauseCallback)(void *, bool)) {
+ _engine = engine;
+ _pauseEngineCallback = pauseCallback;
+}
+
} // End of namespace Graphics
diff --git a/graphics/macgui/macwindowmanager.h b/graphics/macgui/macwindowmanager.h
index 1b450d9907..a889816d95 100644
--- a/graphics/macgui/macwindowmanager.h
+++ b/graphics/macgui/macwindowmanager.h
@@ -209,8 +209,12 @@ public:
void pushWatchCursor();
void popCursor();
+ void pauseEngine(bool pause);
+
void setMode(uint32 mode) { _mode = mode; }
+ void setEnginePauseCallback(void *engine, void (*pauseCallback)(void *engine, bool pause));
+
void passPalette(const byte *palette, uint size);
public:
@@ -224,9 +228,6 @@ public:
int _colorBlack, _colorWhite;
- void *_engine;
- void (*_pauseEngineCallback)(void *engine, bool pause);
-
private:
void drawDesktop();
@@ -253,6 +254,9 @@ private:
MacMenu *_menu;
uint32 _menuDelay;
+ void *_engine;
+ void (*_pauseEngineCallback)(void *engine, bool pause);
+
bool _cursorIsArrow;
};