diff options
Diffstat (limited to 'backends/platform/samsungtv/samsungtv.cpp')
-rw-r--r-- | backends/platform/samsungtv/samsungtv.cpp | 33 |
1 files changed, 23 insertions, 10 deletions
diff --git a/backends/platform/samsungtv/samsungtv.cpp b/backends/platform/samsungtv/samsungtv.cpp index aa79b92558..1e316aa840 100644 --- a/backends/platform/samsungtv/samsungtv.cpp +++ b/backends/platform/samsungtv/samsungtv.cpp @@ -24,19 +24,32 @@ */ #include "backends/platform/samsungtv/samsungtv.h" +#include "backends/events/samsungtvsdl/samsungtvsdl-events.h" -#if defined(SAMSUNGTV) +OSystem_SDL_SamsungTV::OSystem_SDL_SamsungTV() + : + OSystem_POSIX("/dtv/usb/sda1/.scummvmrc") { +} bool OSystem_SDL_SamsungTV::hasFeature(Feature f) { return - (f == kFeatureAspectRatioCorrection) || - (f == kFeatureCursorHasPalette); + (f == OSystem::kFeatureAspectRatioCorrection) || + (f == OSystem::kFeatureCursorHasPalette); +} + +void OSystem_SDL_SamsungTV::initBackend() { + // Create the events manager + if (_eventManager == 0) + _eventManager = new SamsungTVSdlEventManager(this); + + // Call parent implementation of this method + OSystem_SDL::initBackend(); } void OSystem_SDL_SamsungTV::setFeatureState(Feature f, bool enable) { switch (f) { - case kFeatureAspectRatioCorrection: - setAspectRatioCorrection(enable); + case OSystem::kFeatureAspectRatioCorrection: + _graphicsManager->setFeatureState(f, enable); break; default: break; @@ -44,14 +57,14 @@ void OSystem_SDL_SamsungTV::setFeatureState(Feature f, bool enable) { } bool OSystem_SDL_SamsungTV::getFeatureState(Feature f) { - assert (_transactionMode == kTransactionNone); - switch (f) { - case kFeatureAspectRatioCorrection: - return _videoMode.aspectRatioCorrection; + case OSystem::kFeatureAspectRatioCorrection: + return _graphicsManager->getFeatureState(f); default: return false; } } -#endif +void OSystem_SDL_SamsungTV::quit() { + deinit(); +} |