aboutsummaryrefslogtreecommitdiff
path: root/backends
diff options
context:
space:
mode:
authorMax Horn2011-06-06 15:51:46 +0200
committerMax Horn2011-06-06 16:13:57 +0200
commitc81e94b25214d258e0789f51b0ad0236ba1bf9c0 (patch)
tree41e1a0a9e9c121e58f1379db19d0faf743d80fcd /backends
parent848079b66de84cec7559bfbd009d664098ea42ac (diff)
downloadscummvm-rg350-c81e94b25214d258e0789f51b0ad0236ba1bf9c0.tar.gz
scummvm-rg350-c81e94b25214d258e0789f51b0ad0236ba1bf9c0.tar.bz2
scummvm-rg350-c81e94b25214d258e0789f51b0ad0236ba1bf9c0.zip
BACKENDS: Unify EventManager setup
Diffstat (limited to 'backends')
-rw-r--r--backends/base-backend.cpp20
-rw-r--r--backends/base-backend.h3
-rw-r--r--backends/modular-backend.cpp8
-rw-r--r--backends/modular-backend.h2
-rw-r--r--backends/platform/ps2/systemps2.cpp6
-rw-r--r--backends/platform/ps2/systemps2.h1
6 files changed, 13 insertions, 27 deletions
diff --git a/backends/base-backend.cpp b/backends/base-backend.cpp
index ecd22d58bc..156871eec5 100644
--- a/backends/base-backend.cpp
+++ b/backends/base-backend.cpp
@@ -24,7 +24,11 @@
*/
#include "backends/base-backend.h"
+
+#ifndef DISABLE_DEFAULT_EVENT_MANAGER
#include "backends/events/default/default-events.h"
+#endif
+
#include "gui/message.h"
void BaseBackend::displayMessageOnOSD(const char *msg) {
@@ -33,16 +37,12 @@ void BaseBackend::displayMessageOnOSD(const char *msg) {
dialog.runModal();
}
-
-static Common::EventManager *s_eventManager = 0;
-
-Common::EventManager *BaseBackend::getEventManager() {
- // FIXME/TODO: Eventually this method should be turned into an abstract one,
- // to force backends to implement this conciously (even if they
- // end up returning the default event manager anyway).
- if (!s_eventManager)
- s_eventManager = new DefaultEventManager(this);
- return s_eventManager;
+void BaseBackend::initBackend() {
+ // Init Event manager
+#ifndef DISABLE_DEFAULT_EVENT_MANAGER
+ if (!_eventManager)
+ _eventManager = new DefaultEventManager(this);
+#endif
}
void BaseBackend::fillScreen(uint32 col) {
diff --git a/backends/base-backend.h b/backends/base-backend.h
index c71b481aa2..6b19b7a9cb 100644
--- a/backends/base-backend.h
+++ b/backends/base-backend.h
@@ -28,7 +28,8 @@
class BaseBackend : public OSystem, Common::EventSource {
public:
- virtual Common::EventManager *getEventManager();
+ virtual void initBackend();
+
virtual void displayMessageOnOSD(const char *msg);
virtual void fillScreen(uint32 col);
diff --git a/backends/modular-backend.cpp b/backends/modular-backend.cpp
index d56c9479b9..bbf6a6c1ed 100644
--- a/backends/modular-backend.cpp
+++ b/backends/modular-backend.cpp
@@ -36,7 +36,6 @@
ModularBackend::ModularBackend()
:
_fsFactory(0),
- _eventManager(0),
_savefileManager(0),
_timerManager(0),
_mutexManager(0),
@@ -50,8 +49,6 @@ ModularBackend::~ModularBackend() {
_fsFactory = 0;
delete _graphicsManager;
_graphicsManager = 0;
- delete _eventManager;
- _eventManager = 0;
delete _mixer;
_mixer = 0;
delete _savefileManager;
@@ -223,11 +220,6 @@ Common::TimerManager *ModularBackend::getTimerManager() {
return _timerManager;
}
-Common::EventManager *ModularBackend::getEventManager() {
- assert(_eventManager);
- return _eventManager;
-}
-
OSystem::MutexRef ModularBackend::createMutex() {
assert(_mutexManager);
return _mutexManager->createMutex();
diff --git a/backends/modular-backend.h b/backends/modular-backend.h
index a978f2062c..42bd0ed73a 100644
--- a/backends/modular-backend.h
+++ b/backends/modular-backend.h
@@ -111,7 +111,6 @@ public:
//@{
virtual Common::TimerManager *getTimerManager();
- virtual Common::EventManager *getEventManager();
virtual Common::HardwareKeySet *getHardwareKeySet() { return 0; }
//@}
@@ -148,7 +147,6 @@ protected:
//@{
FilesystemFactory *_fsFactory;
- Common::EventManager *_eventManager;
Common::SaveFileManager *_savefileManager;
Common::TimerManager *_timerManager;
MutexManager *_mutexManager;
diff --git a/backends/platform/ps2/systemps2.cpp b/backends/platform/ps2/systemps2.cpp
index e3a2f77dc8..9336468b35 100644
--- a/backends/platform/ps2/systemps2.cpp
+++ b/backends/platform/ps2/systemps2.cpp
@@ -603,11 +603,7 @@ void OSystem_PS2::delayMillis(uint msecs) {
Common::TimerManager *OSystem_PS2::getTimerManager() {
return _scummTimerManager;
}
-/*
-Common::EventManager *OSystem_PS2::getEventManager() {
- return getEventManager();
-}
-*/
+
Audio::Mixer *OSystem_PS2::getMixer() {
return _scummMixer;
}
diff --git a/backends/platform/ps2/systemps2.h b/backends/platform/ps2/systemps2.h
index 5e59a4f0c4..cc9c489827 100644
--- a/backends/platform/ps2/systemps2.h
+++ b/backends/platform/ps2/systemps2.h
@@ -94,7 +94,6 @@ public:
virtual uint32 getMillis();
virtual void delayMillis(uint msecs);
virtual Common::TimerManager *getTimerManager();
-// virtual Common::EventManager *getEventManager();
virtual bool pollEvent(Common::Event &event);
virtual Audio::Mixer *getMixer();