diff options
Diffstat (limited to 'backends/graphics/wincesdl')
-rw-r--r-- | backends/graphics/wincesdl/wincesdl-graphics.cpp | 13 | ||||
-rw-r--r-- | backends/graphics/wincesdl/wincesdl-graphics.h | 19 |
2 files changed, 21 insertions, 11 deletions
diff --git a/backends/graphics/wincesdl/wincesdl-graphics.cpp b/backends/graphics/wincesdl/wincesdl-graphics.cpp index 80b04ca56d..8ba7b5821d 100644 --- a/backends/graphics/wincesdl/wincesdl-graphics.cpp +++ b/backends/graphics/wincesdl/wincesdl-graphics.cpp @@ -49,8 +49,8 @@ WINCESdlGraphicsManager::WINCESdlGraphicsManager(SdlEventSource *sdlEventSource) _panelVisible(true), _saveActiveToolbar(NAME_MAIN_PANEL), _panelStateForced(false), _canBeAspectScaled(false), _scalersChanged(false), _saveToolbarState(false), _mouseBackupOld(NULL), _mouseBackupDim(0), _mouseBackupToolbar(NULL), - _usesEmulatedMouse(false), _forceHideMouse(false), _hasfocus(true), - _zoomUp(false), _zoomDown(false) { + _usesEmulatedMouse(false), _forceHideMouse(false), _freeLook(false), + _hasfocus(true), _zoomUp(false), _zoomDown(false) { memset(&_mouseCurState, 0, sizeof(_mouseCurState)); if (_isSmartphone) { _mouseCurState.x = 20; @@ -444,7 +444,6 @@ void WINCESdlGraphicsManager::update_game_settings() { // Skip panel->add(NAME_ITEM_SKIP, new CEGUI::ItemAction(ITEM_SKIP, POCKET_ACTION_SKIP)); // sound -//__XXX__ panel->add(NAME_ITEM_SOUND, new CEGUI::ItemSwitch(ITEM_SOUND_OFF, ITEM_SOUND_ON, &_soundMaster)); panel->add(NAME_ITEM_SOUND, new CEGUI::ItemSwitch(ITEM_SOUND_OFF, ITEM_SOUND_ON, &OSystem_WINCE3::_soundMaster)); // bind keys @@ -1627,6 +1626,14 @@ void WINCESdlGraphicsManager::create_toolbar() { _toolbarHandler.setVisible(false); } +void WINCESdlGraphicsManager::swap_freeLook() { + _freeLook = !_freeLook; +} + +bool WINCESdlGraphicsManager::getFreeLookState() { + return _freeLook; +} + WINCESdlGraphicsManager::zoneDesc WINCESdlGraphicsManager::_zones[TOTAL_ZONES] = { { 0, 0, 320, 145 }, { 0, 145, 150, 55 }, diff --git a/backends/graphics/wincesdl/wincesdl-graphics.h b/backends/graphics/wincesdl/wincesdl-graphics.h index b3a8d66f51..2727bc0d27 100644 --- a/backends/graphics/wincesdl/wincesdl-graphics.h +++ b/backends/graphics/wincesdl/wincesdl-graphics.h @@ -56,6 +56,8 @@ public: void unloadGFXMode(); bool hotswapGFXMode(); + void update_game_settings(); + // Overloaded from SDL backend (toolbar handling) void drawMouse(); // Overloaded from SDL backend (new scaler handling) @@ -88,7 +90,8 @@ public: void swap_zoom_up(); void swap_zoom_down(); void swap_mouse_visibility(); - + void swap_freeLook(); + bool getFreeLookState(); //#ifdef WIN32_PLATFORM_WFSP void move_cursor_up(); @@ -96,7 +99,6 @@ public: void move_cursor_left(); void move_cursor_right(); - void retrieve_mouse_location(int &x, int &y); void switch_zone(); void add_right_click(bool pushed); @@ -106,6 +108,11 @@ public: void smartphone_rotate_display(); //#endif + bool hasPocketPCResolution(); + bool hasDesktopResolution(); + bool hasSquareQVGAResolution(); + bool hasWideResolution() const; + bool _panelInitialized; // only initialize the toolbar once bool _noDoubleTapRMB; // disable double tap -> rmb click @@ -122,11 +129,6 @@ public: bool _hasfocus; // scummvm has the top window - bool hasPocketPCResolution(); - bool hasDesktopResolution(); - bool hasSquareQVGAResolution(); - bool hasWideResolution() const; - MousePos _mouseCurState; bool _zoomUp; // zooming up mode @@ -158,8 +160,8 @@ protected: private: bool update_scalers(); - void update_game_settings(); void drawToolbarMouse(SDL_Surface *surf, bool draw); + void retrieve_mouse_location(int &x, int &y); void create_toolbar(); bool _panelVisible; // panel visibility @@ -186,6 +188,7 @@ private: uint16 _mouseBackupDim; bool _forceHideMouse; // force invisible mouse cursor + bool _freeLook; // freeLook mode (do not send mouse button events) // Smartphone specific variables void loadDeviceConfigurationElement(Common::String element, int &value, int defaultValue); |