aboutsummaryrefslogtreecommitdiff
path: root/gui/gui-manager.cpp
AgeCommit message (Collapse)Author
2019-10-16TTS: Fix language setting.Jaromir Wysoglad
2019-10-14GUI: Added easter eggEugene Sandulenko
2019-09-01TTS: RefactoringJaromir Wysoglad
* Delete multiple empty rows * Make getVolume non-virtual and leave just the implementation in base class * Resolve warning about signed / unsigned comparison in gui-manager * Clear availableVoices when updating voices on linux * By default set language to transMan language on windows (if the transMan is available) * Remove freeVoices method from Windows ttsMan, it isn't needed anymore
2019-09-01TTS: Minor refactorisationsJaromir Wysoglad
- Add comment to tts initialization on Windows - Correctly free the voicesInfo in linux ttsMan - Remove popState method from linux-text-to-speech.h and windows-text-to-speech.h - Add tts to help in configure - Refactor language setting in gui-manager.cpp It counted with english being the default language in ttsMan constructors, which isn't true anymore.
2019-09-01TTS: Fix voice setting on startupJaromir Wysoglad
The ScummVM was crashing because of an assert, when there was less voices availaible, than what was set in the ConfMan. Now the voice just falls back to 0th voice, if there are not enough voices.
2019-09-01TTS: Make sure that TTS lang matches transMan langJaromir Wysoglad
2019-09-01TTS: Prepare for windows TTSJaromir Wysoglad
Add windows configuration in configure Add basic skeleton to backends Check if ttsMan is initialized in GUI
2019-09-01TTS: Reformat tts volume setting for GUIJaromir Wysoglad
2019-09-01TTS: Add correct language switchingJaromir Wysoglad
2019-09-01TTS: Restrict TTS on linux to only englishJaromir Wysoglad
Unfortunatedly the encoding used by ScummVM breaks the speech-dispatcher, so after trying to say non-ascii character the connection has to be restarted. So for now I am restricting the GUI TTS to english only.
2019-09-01TTS: Add voice selection to optionsJaromir Wysoglad
2019-04-30GUI: Support adding games via Drag and DropCameron Cawley
2019-04-02BUILD: Update default theme to use remasteredMatan Bareket
2018-03-12GUI: Remove the ThemeItem draw queuesBastien Bouclet
Drawing nows happens directly when the Dialog or Widget draw methods are called. This makes it easy to debug why a particular low level draw method was called, by inspecting the call stack. This replaces the notion of "buffering" by two independant ways to control what is drawn and where: - The active layer is used to select whether the foreground or background part of the dialogs are rendered by the draw calls. - The active surface is used to select if the draw calls affect the back buffer or the screen. The foreground layer of the active dialog is drawn directly to the screen. Its background layer is drawn to the back buffer. This way widgets can restore the back buffer in order to update without having to redraw the dialog's background. Dialogs lower in the dialog stack are drawn entirely to the back buffer.
2018-01-27GUI: Remove Dialog::markAsDirty to expose full GUI redrawsBastien Bouclet
2018-01-27GUI: Remove explicit redraw when scrolling the ScrollContainerBastien Bouclet
The redraw is already handled by the GUI main loop
2018-01-27GUI: Implement dirty-checking for widget redrawsBastien Bouclet
2018-01-27GUI: Rework the frame limiter to actually reach the target framerateBastien Bouclet
The previous combination of a fixed 10 milliseconds delay and time since last update checks meant that in most cases 20 milliseconds elapsed between two calls to updateScreen resulting in a 50 fps framerate. On systems with wait for vsync enabled that meant that some frames were missed. The new frame limiter waits for a variable delay equal to the non consumed time in the slot allocated to the frame.
2017-07-10Revert "COMMON: Change way the Singleton instances are instantiated"Eugene Sandulenko
This reverts commit eefa72afa1978a9dea10f5b1833fcc8f58a3468e. With this patch ConfigManager is broken.
2017-07-10COMMON: Change way the Singleton instances are instantiatedThierry Crozat
This fixes tons of warnings with clang from a recent xcode version on macOS (and possibly other systems) complaining that an instantiation of _singleton is required but no definition is available.
2017-03-18GUI: Fix a signed vs unsigned comparison warningBastien Bouclet
2017-03-13JANITORIAL: Remove trailing spacesEugene Sandulenko
2017-03-13GUI: Fix warningsEugene Sandulenko
2017-03-10GUI: Allow delayed deletion of GuiObjectThierry Crozat
This is achieved by adding a list of GuiObject to delete to GuiManager and doing the deletion in GuiManager::runLoop. The main purpose of this is to avoid the deletion of ButtonWidget object while their ButtonWidget::sendCommand function is being called. For example the sendCommand of the Apply button of the OptionsDialog may cause a rebuild (if the GUI language was changed) which tries to delete the widgets inside the OptionsDialog, including the Apply button.
2016-11-12Merge pull request #720 from ottogin/gui-events-fixEugene Sandulenko
GUI: Fix "eaten" event by dialog which was closed
2016-08-24GUI: Add SaveLoadCloudSyncProgress in ScummModern themeAlexander Tkachev
ScummVM would probably crash when using a theme without SaveLoadCloudSyncProgress dialog described.
2016-07-03GUI: Make ScrollContainerWidget do full redrawAlexander Tkachev
2016-04-06GUI: When dialogs gain focus, inform them of the current mouse positionOri Avtalion
Previously, they only reacted to the mouse position once it was moved. This meant that if the cursor was on a button that just gained focus, it did not highlight. Fixes #7101.
2016-04-05GUI: Increase update screen rate to 60HzLothar Serra Mari
2016-04-05GUI: Update _lastRedraw before calling updateScreenLothar Serra Mari
This reduces the cursor lags on some systems.
2016-03-24GUI: Fix "eaten" event by dialog which was closedottogin
This patch fix bug #6841 If this runloop catches both the repeated key down event and the key up event. In this case they key down will close the tooltip, because it got closed the key up event will be ignored. As a result the LauncherDialog will never get notified the SHIFT state might have changed and not adapt the button description. In this patch we just pass event to topDialog, if activeDialog was closed. Also we must check, If topDialog doesn't exist.
2015-11-11GUI: Do not show splash when ran from launcherEugene Sandulenko
2014-08-28GUI: change FullScreen into fullscreenBen Castricum
This makes it consistant with other references to fullscreen.
2014-02-18GUI: Make GPL headers consistent in themselves.Johannes Schickel
2013-10-19GUI: Check for screen change whenever an event is polled.Johannes Schickel
This should *hopefully* really fix all GUI crashes when resizing with OpenGL.
2013-07-06ALL: Don't use EventRecorder at all when not compiled inMatthew Hoops
2013-05-17RECORDER: Implement Events RecorderEugene Sandulenko
2012-06-20GUI: Allow tooltips to be changed after widget creation.Johannes Schickel
2012-05-03GUI: Implemented pressed state for buttonsOleksiy Kurochko
2012-03-02KEYMAPPER: Map non-key custom input eventsTarek Soliman
This also makes the keymapper be in charge of keymapping logic
2012-02-22ALL: Fix some signed/unsigned comparison warnings.Johannes Schickel
2012-02-21KEYMAPPER: Remove automapping dead codeTarek Soliman
2012-02-20KEYMAPPER: Move F7 and F8 handling to DefaultEventMapperTarek Soliman
2012-02-13KEYMAPPER: Fix Action ctor args in most keymapsTarek Soliman
2012-02-04KEYMAPPER: Added Toggle FullScreen actionTarek Soliman
2012-01-30GUI: Work around bug #3481395.Johannes Schickel
The bug in question is: "LAUNCHER: Can't quit from unsupported game dialog".
2012-01-07KEYMAPPER: Add failsafe code for popping into Keymapper itselfTarek Soliman
Thanks LordHoto
2012-01-07KEYMAPPER: Only push/pop the gui keymap once per gui sessionTarek Soliman
The removes a bit of waste when gui dialogs are opened. Multiple gui keymaps were being pushed.
2011-12-30KEYMAPPER: Simplify calling getKeymapTarek Soliman
2011-10-31KEYMAPPER: Put the gui keymap pushing/popping back in GuiManager::runLoopTarek Soliman
This because theoretically the GUI could be run without a dialog. This also fixes the situations where the GUI keymap gets popped more times than pushed. Thanks sev