Commit graph

187 commits

Author SHA1 Message Date
aryanrawlani28
c48719404a BASE: PLUGINS: Rename plugin matching helpers
- give*From* -> get*From*
2020-10-03 14:56:36 +02:00
aryanrawlani28
73cc973ad7 BASE: ENGINES: Change saveload code to adapt to the new MEC class.
- MEC: MetaEngineConnect.
- How do games handle save/load if MetaEngine (detection) is seperate from MetaEngineConnect (engine factory)?

- Most of the changes are quite similiar. ConfMan finds us the relevant MetaEngine, then simply use the new helpers from PluginMan.
- The new helpers will help convert a relevant MetaEngine into the other format or vice versa.
- Once the matching is complete, simply invoke functions by:
plugin->get<MetaEngineConnect>().engineMethod();
- Refer to previous commits to see the new class changes & notes.
2020-10-03 14:56:36 +02:00
aryanrawlani28
ce80c0c730 ENGINES: Add a helper method - getMetaEngineConnect().
- Get a metaEngine plugin by querying the ConfMan.
- Next, use this MetaEngine to find a matching enginePlugin.
- Return the enginePlugin.
2020-10-03 14:56:36 +02:00
aryanrawlani28
e206c513bb ENGINES: Proper usage of Saveload/SaveState for U32Strings. 2020-08-30 14:43:41 +02:00
aryanrawlani28
840f08d537 GUI: U32: Code cleanup & misc fixes
- Fix a translation for scumm subtitle settings dialogs.
2020-08-30 14:43:41 +02:00
aryanrawlani28
4b6976c558 GUI: U32: Reduce number of files changed and fixes
Up until last commit, everything was working fine but the amount of files changed was too large. This commit tries to reduce the changes.

- Add a fake constructor to Keymap, text-to-speech, setDescription (save-state)
- Redirecting functions for PopUpWidget::appendEntry, ButtonWidget::setLabel, GUIErrorMessage
- Use the above functions and constructors to reduce changes in Engines
- Fix warnings being in unicode. Only output english text in - Warnings, Errors, etc.
- Mark some strings as "translation" strings. (Not yet added to POTFILES)
- Remove some CP related things from po/modules.mk
- Previously used some Common::convertToU32 where it was not necessary, replace this with u32constructor
2020-08-30 14:43:41 +02:00
aryanrawlani28
d12c6c4338 GUI: U32: Code cleanup
- Remove extra parantheses leftover from temp code
- SaveLoadDialog - do not encode when setting labels
- Remove mapping variable from ThemeEngine::loadScalableFont (and use default 0)
- Remove incorrect u32 constructor wrapper from confman.set in eventrecorder.cpp
2020-08-30 14:43:41 +02:00
aryanrawlani28
185fb72783 GUI: U32: Improve U32 code
- Revert accidentally put translations in mt32.cpp
- Use U32::format in some places earlier missed
- Add %u and %i for u32::format
- Add support for GUIErrorMsgFormat to use u32::format internally
- Use the above whereever needed
- Improve linux tts by removing redundant code
- Some places I had changed nullptr -> "". Revert this
2020-08-30 14:43:41 +02:00
aryanrawlani28
a9bfe35216 GUI: U32: More issue fixes and general improvements
- Use the fake constructor for message dialog less often
- solve errors regarding comparision between string and u32string in midi
- solve errors in testbed/speech related to ttsMan->say
- fix unsigned comparision warning in tab.cpp
- fix issue with static strings and translations in sdl-graphics
2020-08-30 14:43:41 +02:00
aryanrawlani28
e22b32abfe GUI: U32: Use Common::U32String::format where necessary and GUIError to u32
- Where necessary as in, where translated messages are used.
- GUIErrorMessage now takes in U32String
- error messages across some engines use U32Strings. they are changed because they show a message dialog.
2020-08-30 14:43:41 +02:00
aryanrawlani28
f800ca4ada GUI: U32: Convert majority of code to use U32
This commit also includes some additional major changes.

- Return U32String from TransMan getTranslation()
- Change tooltips to be U32Strings
- Remove temporary code of convertToU32String
- U32 Support various dialogs (Browser, FileBrowser, Messages, Chooser, etc)
- U32 for music plugins
- U32 for OSD messages
- Add some helper functions to ustr.cpp
- Change default tooltips from nullptr & 0 -> ""
- Some runtime exceptions may occur when changing languages due to incorrect String::Format
2020-08-30 14:43:41 +02:00
aryanrawlani28
5f2af6b93e GUI: U32: Add u32 support to Editables and Dialogs
- Editable widgets
- Lists
- SaveLoad Dialogs
- Browser Dialogs
2020-08-30 14:43:41 +02:00
Thierry Crozat
96c977cd56 ENGINES: Reset virtual keyboard state when showing and hiding GMM 2020-08-29 16:31:37 +01:00
Eugene Sandulenko
1302adc796 ENGINES: Added GUIErrorMessageWithURL() 2020-08-26 17:28:13 +02:00
Thierry Crozat
5f34aaa52b ENGINES: Pop the TTS stack before calling syncSoundSettings
This allows engine to change the TTS speech volume for the correct
state if they use the Options  text volume for TTS.
2020-06-29 22:48:57 +01:00
Cameron Cawley
cc5abf5ebb TTS: Fix crash when TextToSpeechManager is unavailable, clean up formatting 2020-05-27 12:43:49 +02:00
mataniko
321a02aff2 JANITORIAL: Rename shouldRTL, resetRTL and FORCE_RTL 2020-05-12 10:36:38 +02:00
Henrik "Henke37" Andersson
1b4ce9096f ENGINES: Disallow clearing an already clear pause token. 2020-05-10 23:39:31 +02:00
Henrik "Henke37" Andersson
830a239b04 ENGINES: Move semantics for PauseToken
Only compilers who understands move semantics see the code.
2020-05-10 23:39:31 +02:00
Henrik "Henke37" Andersson
f5ac623cca ENGINES: Disallow assignment to a busy pause token. 2020-05-10 23:39:31 +02:00
Henrik "Henke37" Andersson
c15f268e9b ENGINES: Allow clearing a PauseToken 2020-05-10 23:39:31 +02:00
Henrik "Henke37" Andersson
ea7db12ee0 ENGINES: Base PauseToken support 2020-05-10 23:39:31 +02:00
Bastien Bouclet
0d895ec2f9 ENGINES: Allow showing the engine options in the in-game options dialog 2020-03-28 07:38:39 +01:00
Cameron Cawley
f2db412ba5 GUI: Store the shader name in the config file instead of the ID 2020-03-09 18:01:14 -05:00
Cameron Cawley
7488e17c0a GUI: Allow shaders to be selected for individual targets 2020-03-09 18:01:14 -05:00
Paul Gilbert
52b87e7660 ENGINES: Add an autosave flag to the extended savegame data 2020-02-16 15:44:28 -08:00
Paul Gilbert
0b81eaab7b ENGINES: Abstract autosave check into SaveStateDescriptor 2020-02-16 15:44:28 -08:00
Paul Gilbert
4f26f2c7ef ENGINES: Autosave won't save over a custom save in it's slot 2020-02-16 15:44:28 -08:00
Paul Gilbert
e8abfaf98e ENGINES: Added OSD messages for failed autosaves or savegames 2020-02-16 15:44:28 -08:00
Paul Gilbert
510818499d ENGINES: If an autosave can't be created, try again in 5 minutes 2020-02-16 15:44:28 -08:00
Paul Gilbert
a2a8229abe ENGINES: Do an autosave before loading a new game
Unfortunately, this will only apply to new engines that
use the Engine::loadGameState method. Other existing engines call
loadGameState directly and provide their own implementations,
so there's nowhere convenient to add the call that'd work for
all of them
2020-02-16 15:44:28 -08:00
Paul Gilbert
d35d91e6f6 MOHAWK: Remove autosave code 2020-02-16 15:44:28 -08:00
Paul Gilbert
30d34fa63d ENGINES: Implement autosaving in the Engine base class 2020-02-16 15:44:28 -08:00
Paul Gilbert
a00e44ba6c ENGINES: Merge saveGameState virtual methods into a single one 2020-02-16 15:44:28 -08:00
Paul Gilbert
98f9c4f254 ENGINES: Create a default debugger when needed if none is yet set 2020-02-16 13:07:19 +02:00
Paul Gilbert
7b721eaac1 ENGINES: Adding debugger to base Engine class 2020-02-16 13:07:19 +02:00
Bastien Bouclet
35e0b72c21 ENGINES: Display a GUI error message when loading / saving failed 2020-02-07 09:25:11 +02:00
Paul Gilbert
2d09358030 ENGINES: Change load/save game dialog message to OSD 2020-02-04 19:05:26 -08:00
Paul Gilbert
4b8d509cfe ENGINES: Added GUI message to save/load dialog methods if unavailable 2020-02-04 19:05:26 -08:00
Paul Gilbert
055a9effc2 ENGINES: Adding an isAutosave flag to the new saveGameStream method
This is primarily future-proofing. Many games either show a message
or do some other UI action like closing an open game menu, and
obviously that should only be done when a savegame created by the
user is done, rather than for regular autosaves. By making this a
flag, when engines override saveGameStream, they'll be able to
tell if it's an autosave, and only do UI changes if not
2020-02-04 19:05:26 -08:00
Paul Gilbert
866cc57d64 ULTIMA: Move methods for showing save/restore dialogs into Engine class 2020-02-04 19:05:26 -08:00
Paul Gilbert
6c419d7d32 ENGINES: Adding new save wrappers to better support extended saves 2020-02-04 19:05:26 -08:00
Bastien Bouclet
ee8229dc00 ENGINES: Move keymap initialization to MetaEngine
To be able to access the keymap while the engine is not running.
2020-01-26 23:09:08 +02:00
Bastien Bouclet
19de568e24 KEYMAPPER: Untangle the dependencies between Action and Keymap 2020-01-26 23:09:08 +02:00
Bastien Bouclet
d60190b12e ENGINES: Define default bindings for the existing engine keymaps 2020-01-26 19:07:53 +01:00
Bastien Bouclet
17791e2f7d KEYMAPPER: Actions can now have default mappings 2020-01-26 19:07:53 +01:00
Eugene Sandulenko
26d0931499 ENGINES: Added clarifying comment 2019-12-17 23:59:51 +01:00
Eugene Sandulenko
d17464e86b ENGINES: We must poll events in order to show the window on some platforms.
This is a regression from b86840087. The side effect of it that on Mac the
splash screen in not visible at all. I hope that this does not trigger same crash,
as it happens now only once.
2019-12-17 23:57:59 +01:00
Cameron Cawley
f2b9f7bb76 BACKENDS: Remove the Windows CE port 2019-11-17 22:33:56 +01:00
Bastien Bouclet
bb813719b5 ENGINES: Change targets to have an 'engine ID'
The engine ID identifies which engine should be used to launch the target.
Also remove the 'single ID' system. Different games from engines that used
that system now have different game IDs.

Also-By: Matthew Hoops <clone2727@gmail.com>
2019-11-03 11:43:00 +01:00