Commit Graph
64 Commits
Author SHA1 Message Date
AndywinXp 13e7c9d4d9 SCUMM: Implement basic support for v0-3 GUI 2022-11-28 23:21:45 +01:00
Walter Agazzi a21f8c574f GUI: Add "use original gui" checkbox in Loom and MI CD
Add the "use original gui" checkbox to the custom Loom EGA/VGA
and Monkey 1 CD version game options window.
Also slightly change to layout for consistency with
the other games.
2022-11-18 17:11:51 +01:00
athrxx af45365e4f SCUMM: make some vars const 2022-09-08 19:10:42 +02:00
AndywinXp eadacafd1b SCUMM: Fix warnings 2022-09-08 19:10:42 +02:00
athrxx c6e8f6494b SCUMM: (v1-3) - improve pause/restart/quit string handling
The recent PR 4204 made me aware of some things I had kind of tried to ignore when I updated these dialogs for CJK font support.

Currently, the language for the pause/restart/quit messages is tied to the GUI/launcher language and the translation manager is used to translate the. E. g., if you start the French version of MM or ZAK and have a launcher language setting of English, you will get the English pause/restart/quit messages. If you set the launcher language to French you will get it the French ones. Also, the encodings from the translation manager aren't compatible with the game string encodings (mostly solved by PR 4204, though).

This commit now gets rid of any translation manager use here. Instead, we tie the translations for these messages to the game language.

I have included all strings for the v1/v2 language variants I found in the detection table.

I am interested in having the exact original messages here. However, I have only inserted them from the English interpreters, since those are all I have. For the other languages, for the time being, I have just used the texts from the translation manager and reencoded those with codepage 850. So, if anyone has access to an original v1/v2 interpreter in French, Italian, German, Spanish, Russian or Swedish, he/she might want to extract and replace the strings here with the correct ones...
2022-08-18 02:17:42 +02:00
AndywinXp fabaeb4b83 SCUMM: COMI: Implement original GUI 2022-08-06 13:33:56 +02:00
Torbjörn Andersson 6a040e3ea2 SCUMM: Add adjustment sliders for VGA Loom (CD) and MI1 (CD)
When ripping the audio tracks from CD, you may not get quite what the
game expects, e.g. my copy of Loom has less silence at the start of the
track than the CDDA.SOU file from the Steam version. And the MI1 intro
appears to be timed with the assumption that there is no silence at all
at the start of that track.

This makes it possible to compensate for that without having to edit the
audio file. It may also be of some help with fan soundtrack replacements
for MI1, though I have little experience with that.
2022-06-03 21:03:58 +02:00
Torbjörn Andersson 608a334c22 SCUMM: Make recent Loom workarounds optional
Unfortunately that means I had to add the enhancements checkbox to the
EGA Loom settings widget, because I can't see any way to automatically
combine the static and dynamic settings widget. Oh well.
2022-03-23 16:02:49 +01:00
Torbjörn Andersson 51867690c4 SCUMM: Fix EGA Loom options in RTL mode
There is a special case for adjusting the padding in Widget::draw() that
is applied, among other things, to widgets whose name contains
"GameOptions". We want that special case to apply to the EGA Loom
options as well, so this is simply another renaming.

At some point, it would probably be a good idea for this special case to
go away.
2022-03-09 08:53:14 +01:00
Torbjörn Andersson fe09c9ad4f SCUMM: Rename EGA Loom settings elements
Because if I constantly have to double-check which is which, even though
there are only three of them, I clearly made a mistake when I first
named them.
2022-03-09 08:35:22 +01:00
Torbjörn Andersson 1212930938 SCUMM: Rename EgaLoomOptionsiWidget to LoomEgaOptionsWidget
This is ito be more consistent with LoomTownsDifficultyDialog.
2022-03-08 18:21:04 +01:00
Torbjörn Andersson c80adc3e8b SCUMM: Add setting for the Loom Overture tempo on the Engine tab
It's hard to make this appear only on EGA Loom, so the tooltip has to
document the fact that it's only useful there. The setting is made
relative to the default tempo, which I feel is a much more sensible way
of presenting it to the user than the raw ticks value.
2022-02-08 13:31:39 +01:00
Eugene Sandulenko abea37c9bb ALL: Update ScummVM project license to GPLv3+ 2021-12-26 18:48:43 +01:00
athrxx 5b6ffeaa3d GUI: allow ingame CJK dialogs regardless of the launcher language
This allows a text widget to be expressly marked as Japanese, Korean or Chinese, so that the theme engine may use an appropriate font.
2020-10-30 21:36:23 +01:00
aryanrawlani28 86b8c23f78 SCUMM: DIALOGS: Return U32 for queryResString. 2020-08-30 14:43:41 +02:00
aryanrawlani28 12e4f871a3 GUI: U32: Improve u32 in all engine subsystems
- Common: add wordWrap function to ustr.cpp
- Bladerunner: Explicitly state we have a U32String in subs (same as Subtitles::loadOuttakeSubsText)
- Don't use translations for engine specific "put strings", because they might not support.
- SCI: Use const references for showScummVMDialog
- SCUMM:
-- Don't use translation in md5 warning. left comments with the translated version.
-- Remove some redundant headers in help.cpp
-- Don't use translation in handleSaveload when printing to console
-- Also, display success transaction correctly via u32::format
- TESTBED: Use fake constructor when setting label of button
- SKY: Correctly use translation when using SaveStateDescription
- ULTIMA: Don't use translations when display_string
- ENGINES:
-- GenerateUnknownGameReport correctly, with proper translations.
-- There was an error, where a function had been declared twice, in a header file. Correct this.
2020-08-30 14:43:41 +02:00
aryanrawlani28 bd19eaa5bf GUI: U32: More code improvements in engines and misc fixes
- Xeen's GUIError now takes in U32String
- Scumm's ValueDisplayDialog takes in U32
- Mohawk's InfoDialog & PauseDialog takes in U32
- Mohawk - in riven.cpp, Some assignment fixes
- Backends -in sdl.cpp, Remove incorrect conversion from iso8859 when setting text in clipboard
- Graphics - Add u32 strings instead of decoding each piece in format
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 bed05ea134 GUI: U32: Fix compilation errors across entire project
After the initial changes just to scummvm/gui for u32, this commit includes the whole project

- Widget creations now always have u32 descriptions, labels, or tooltips
- Message dialogs make use of default arguments instead of providing the same argument explicitly
- encode String::format properly before passing on as argument where necessary
- Modify hugo utils (yesNoBox and notify box) to use u32
- Also provide fake constructors for the above which redirect to the u32 constructor
- Convert all keymap descriptions to u32 across all engines
- showConfirmationDialog in mohawk now uses u32
- showScummVMDialog also uses u32
- Scumm engine has dialogs now which use u32
- General fixes and wrapping convertToU32String for setLabels and related functions
- Add a fake constructor to MesssageDialog which redirects to the u32 constructor
2020-08-30 14:43:41 +02:00
Bastien Bouclet 730a1ee4cc SCUMM: Add override keywords 2020-02-09 12:43:16 +01:00
Eugene Sandulenko 511457818d SCUMM: Mark methods as override 2018-03-28 12:01:38 +02:00
Bastien Bouclet 4d0bb753e4 GUI: Remove the ThemeItem draw queues
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-03-12 11:46:04 +01:00
Ori Avtalion 253e18c440 JANITORIAL: Reduce GUI header dependencies 2016-04-14 13:30:14 +03:00
Johannes Schickel 3847465163 SCUMM: Make GPL headers consistent in themselves. 2014-02-18 02:39:38 +01:00
Johannes Schickel 95cabb0ffd SCUMM: Add a difficulty selection dialog for Loom FM-Towns.
It is in spirit of the DOS version's selection dialog, but it has the
description above the buttons instead of below it.
2011-12-26 15:25:41 +01:00
strangerke 69b1485a22 GIT: Clean up: Suppress SVN tags, now useless 2011-05-12 01:16:22 +02:00
Ori Avtalion cd6ee0589d JANITORIAL: Format forward declarations to follow convention 2011-04-28 12:20:34 +03:00
Johannes Schickel 70245181f1 SCUMM: Fix for bug #3064655 "Restart with F8 key not working properly".
svn-id: r52715
2010-09-13 23:35:55 +00:00
Max Horn 947edd08c3 Replace SCUMM F5 dialog by GMM & add help button to GMM
The new "Help" button in the GMM is currently only used by SCUMM.
To use it, an engine currently needs to subclass MainMenuDialog.

svn-id: r49249
2010-05-26 19:54:50 +00:00
Max Horn 7dafef752f SCUMM: Make HelpDialog & ConfigDialog internal
svn-id: r48562
2010-04-06 09:26:04 +00:00
Travis Howell f40c466d5e Fix bug #2959947 - SPYFOX1: Saves don't work from menu.
svn-id: r48142
2010-02-27 02:49:27 +00:00
Johannes Schickel 88b4bbb952 Fix broken Scumm dialogs, which is a regression from r46947. (They used a dummy name, which didn't exist in the theme config and later on just calculated the size on their own...)
svn-id: r47057
2010-01-05 22:18:09 +00:00
Johannes Schickel b5ce08b2c6 Switch SCUMM engine to use the SaveLoadChooser from gui/ instead of implementing its own, which resulted in code duplication.
svn-id: r43552
2009-08-20 09:21:09 +00:00
Johannes Schickel 5a89bc058c Fix F5's save button in DOTT CD for me. Actually I was able to reproduce the issue before I wrote this code, after reverting it for more testing, I couldn't reproduce it anymore. Probably it was some random problem, at least this code should now assure the "Save" button's state is always matching the return value of ScummEngine::canSaveGameStateCurrently.
svn-id: r43436
2009-08-16 12:10:37 +00:00
Eugene Sandulenko 9b031982cf Fix bug #1745396: "MI: Saved game from the credits sequence fails to load".
Now we specifically disallow saves in room 0 for all v4+ games. Original
has exactly this check in all versions, and such games are impossible to load.

Still the problem is not resolved for v0-v3 and HE games.

svn-id: r42664
2009-07-22 19:25:53 +00:00
Johannes Schickel 2422ee06a2 Formatting fixes.
svn-id: r42538
2009-07-16 17:39:16 +00:00
Vicent Marti af289bdb03 Fixed bug 2820514 ("Help dialog causes crash")
svn-id: r42537
2009-07-16 17:29:31 +00:00
Max Horn 144be21bed GUI: Got rid of the WidgetSize stuff
svn-id: r35022
2008-11-12 13:14:44 +00:00
Christopher Page 09f4fd946e Merged revisions 33052-33053,33056-33058,33061-33064,33068,33070,33072,33075,33078-33079,33083,33086-33087,33089,33094-33096,33098-33099,33104,33108-33109,33114-33117,33120,33135-33146,33160,33162,33165,33167-33169 via svnmerge from
https://scummvm.svn.sourceforge.net/svnroot/scummvm/scummvm/trunk

svn-id: r33183
2008-07-21 22:46:39 +00:00
Willem Jan Palenstijn ba4ba85124 remove accidentally committed debugging code; fix shadowing warning
svn-id: r33064
2008-07-14 21:04:42 +00:00
Willem Jan Palenstijn ff5f3730c5 Don't draw scumm saveload dialog while reflowing layout, as that would use uninitialized values
svn-id: r33063
2008-07-14 21:00:39 +00:00
Christopher Page b50df858eb Changed the name of the Scumm menu dialog class MainMenuDialog to ScummMenuDialog, to avoid confusion and conflict with the Global Main Menu class
svn-id: r32937
2008-07-07 06:05:48 +00:00
Jordi Vilalta Prat 66e9d4f5e8 Removed trailing spaces.
svn-id: r30664
2008-01-27 19:47:41 +00:00
Matthew Hoops f3175861ba implement o72_debugInput (with some help from Kirben)
svn-id: r28988
2007-09-20 20:50:38 +00:00
Max Horn 2243197f50 Changed GUI system to use Common::KeyState state
svn-id: r27786
2007-06-30 12:26:59 +00:00
Max Horn 8103903935 Removed redundant code
svn-id: r27393
2007-06-13 20:41:47 +00:00
Max Horn cd6f145577 Modified version of patch #1723779: SCUMM: Improved ctrl+t subtitle cycling
svn-id: r27068
2007-06-03 17:32:42 +00:00
Max Horn f85871b1fc Make InfoDialog::setInfoText a bit more useful, by making it public & reusable
svn-id: r27050
2007-06-02 12:01:09 +00:00
Max Horn 218e132e37 Updated legal headers in source files, based on what Pidgin (the IM client formerly knowns as Gaim) does; added new (incomplete) COPYRIGHT file; updated copyright dates in a few spots
svn-id: r27024
2007-05-30 21:56:52 +00:00
Max Horn c9bee38839 Modified version of patch #1727045 INDY3: IQ Points Dialog
svn-id: r27012
2007-05-30 16:40:11 +00:00