aboutsummaryrefslogtreecommitdiff
path: root/backends/platform/sdl
diff options
context:
space:
mode:
authorAlejandro Marzini2010-06-13 21:09:52 +0000
committerAlejandro Marzini2010-06-13 21:09:52 +0000
commit77f114b835eaafcc334ad38c407faaa04cb62eb8 (patch)
treef002824921d8babc0c3ceab53fc44e5aa5cce286 /backends/platform/sdl
parenta77738e53b8c52ebe8bf56fa753692832f851956 (diff)
downloadscummvm-rg350-77f114b835eaafcc334ad38c407faaa04cb62eb8.tar.gz
scummvm-rg350-77f114b835eaafcc334ad38c407faaa04cb62eb8.tar.bz2
scummvm-rg350-77f114b835eaafcc334ad38c407faaa04cb62eb8.zip
Added SdlTimerManager. Added getMillis, delayMillis and getTimeAndDate to Common::TimerManager, DefaultTimerManager and ModularBackend. Removed timer code from OSystem_SDL.
svn-id: r49637
Diffstat (limited to 'backends/platform/sdl')
-rw-r--r--backends/platform/sdl/sdl.cpp51
-rw-r--r--backends/platform/sdl/sdl.h25
2 files changed, 5 insertions, 71 deletions
diff --git a/backends/platform/sdl/sdl.cpp b/backends/platform/sdl/sdl.cpp
index 46984d1c8e..225c3180b7 100644
--- a/backends/platform/sdl/sdl.cpp
+++ b/backends/platform/sdl/sdl.cpp
@@ -33,7 +33,6 @@
#include "common/archive.h"
#include "common/config-manager.h"
#include "common/debug.h"
-#include "common/EventRecorder.h"
#include "common/util.h"
#ifdef UNIX
@@ -41,16 +40,14 @@
#else
#include "backends/saves/default/default-saves.h"
#endif
-#include "backends/timer/default/default-timer.h"
-
-#include "backends/mixer/sdl/sdl-mixer.h"
-
+#include "backends/audiocd/sdl/sdl-audiocd.h"
#include "backends/events/sdl/sdl-events.h"
+#include "backends/mutex/sdl/sdl-mutex.h"
+#include "backends/mixer/sdl/sdl-mixer.h"
+#include "backends/timer/sdl/sdl-timer.h"
#include "icons/scummvm.xpm"
-#include <time.h> // for getTimeAndDate()
-
/*
* Include header files needed for the getFilesystemFactory() method.
*/
@@ -62,7 +59,6 @@
#include "backends/fs/windows/windows-fs-factory.h"
#endif
-
#if defined(UNIX)
#ifdef MACOSX
#define DEFAULT_CONFIG_FILE "Library/Preferences/ScummVM Preferences"
@@ -80,11 +76,6 @@
#endif
-static Uint32 timer_handler(Uint32 interval, void *param) {
- ((DefaultTimerManager *)param)->handler();
- return interval;
-}
-
void OSystem_SDL::initBackend() {
assert(!_inited);
@@ -135,13 +126,7 @@ void OSystem_SDL::initBackend() {
// Create and hook up the timer manager, if none exists yet (we check for
// this to allow subclasses to provide their own).
if (_timerManager == 0) {
- // TODO: Implement SdlTimerManager
- if (SDL_InitSubSystem(SDL_INIT_TIMER) == -1) {
- error("Could not initialize SDL: %s", SDL_GetError());
- }
-
- _timerManager = new DefaultTimerManager();
- _timerID = SDL_AddTimer(10, &timer_handler, _timerManager);
+ _timerManager = new SdlTimerManager();
}
// Create and hook up the graphics manager, if none exists yet (we check for
@@ -184,34 +169,11 @@ OSystem_SDL::OSystem_SDL()
}
OSystem_SDL::~OSystem_SDL() {
- SDL_RemoveTimer(_timerID);
-
delete _mixer;
delete _savefileManager;
delete _timerManager;
}
-uint32 OSystem_SDL::getMillis() {
- uint32 millis = SDL_GetTicks();
- g_eventRec.processMillis(millis);
- return millis;
-}
-
-void OSystem_SDL::delayMillis(uint msecs) {
- SDL_Delay(msecs);
-}
-
-void OSystem_SDL::getTimeAndDate(TimeDate &td) const {
- time_t curTime = time(0);
- struct tm t = *localtime(&curTime);
- td.tm_sec = t.tm_sec;
- td.tm_min = t.tm_min;
- td.tm_hour = t.tm_hour;
- td.tm_mday = t.tm_mday;
- td.tm_mon = t.tm_mon;
- td.tm_year = t.tm_year;
-}
-
void OSystem_SDL::addSysArchivesToSearchSet(Common::SearchSet &s, int priority) {
#ifdef DATA_PATH
@@ -241,7 +203,6 @@ void OSystem_SDL::addSysArchivesToSearchSet(Common::SearchSet &s, int priority)
}
-
static Common::String getDefaultConfigFileName() {
char configFile[MAXPATHLEN];
#if defined (WIN32) && !defined(_WIN32_WCE) && !defined(__SYMBIAN32__)
@@ -338,8 +299,6 @@ void OSystem_SDL::setWindowCaption(const char *caption) {
void OSystem_SDL::deinit() {
SDL_ShowCursor(SDL_ENABLE);
- SDL_RemoveTimer(_timerID);
-
delete _mixer;
delete _timerManager;
diff --git a/backends/platform/sdl/sdl.h b/backends/platform/sdl/sdl.h
index 5a621a8645..8dae6a779c 100644
--- a/backends/platform/sdl/sdl.h
+++ b/backends/platform/sdl/sdl.h
@@ -33,22 +33,7 @@
#endif
#include "backends/modular-backend.h"
-
-#include "backends/mutex/sdl/sdl-mutex.h"
#include "backends/graphics/sdl/sdl-graphics.h"
-#include "backends/audiocd/sdl/sdl-audiocd.h"
-
-#include "graphics/scaler.h"
-
-
-namespace Audio {
- class MixerImpl;
-}
-
-#if !defined(_WIN32_WCE) && !defined(__SYMBIAN32__)
-// Uncomment this to enable the 'on screen display' code.
-#define USE_OSD 1
-#endif
class OSystem_SDL : public ModularBackend {
public:
@@ -57,14 +42,6 @@ public:
virtual void initBackend();
- // Get the number of milliseconds since the program was started.
- uint32 getMillis();
-
- // Delay for a specified amount of milliseconds
- void delayMillis(uint msecs);
-
- virtual void getTimeAndDate(TimeDate &t) const;
-
// Define all hardware keys for keymapper
virtual Common::HardwareKeySet *getHardwareKeySet();
@@ -86,8 +63,6 @@ public:
protected:
bool _inited;
- SDL_TimerID _timerID;
-
void setupIcon();
};