This function supported loading alternative bdf fonts when we were
using 8 bits encodings for the translations. Now that we are using
unicode for all language, this is no longer needed.
This was only used to be part of the name under which loaded TTF
fonts are stored in the FontMan font map. But since all the
languages now use the same charset (UTF-32), there is no longuer
a need to include the charset in the name. We still need to
differentiate between bdf fonts that can only be used for English
and TTF fonts, but this is is the case due to the font size being
included in the name. And otherwise we could just add a hardcoded
"-ttf" in the name.
We used to have different charsets depending on the language and
a different set of fonts for each one. So themes could support
some language and not others depending on the fonts it contained.
Now all languages are using UTF-32, except English. So the only
case that can fail is when not using English and the Theme does
not have TTF fonts.
This new mode is functionally identical to playback mode, however
a new recording file is used to track the actual output of ScummVM.
This feature can be used to update a suite of existing recordings after
a renderer or a timing change.
Screen update boundaries are now used as sync points.
Screenshots are now processed on a screen update boundary.
This change increments the version of the Event Recorder
file format to 2; version 1 files will still play back as
before, without synchronising to screen updates.
The assignment back to _saveList is required, because the initial read does
not assign playtime.
In case the slot is empty, querySaveMetaInfos returns an empty description
with saveSlot -1 on most engines, so _saveList[selItem] loses its slot.
Cover this by adding a check.
Reverts 0425dff824.
This revert part of a17816f1 (GUI: Warn when saving a "young" game
over an "older" one).
The issue was that when trying to save in a new slot with the list
save dialog, this was not creating the save.
This finishes to fix bug #12850
In my case I had a section where only the gameid was defined and no path.
Obviously this is not valid and I cannot start that game. But this is not
a reason to crash with an unknown "path" key error when starting ScummVM.
This was a regression introduced in fea19c69a. The code forgot to
add the margin on either side of the text when computing the width
of the dialog.
I also introduced a variable with the mergin value to clarify the
code (and also make it easy to change that margin in the future if
we want to).
Now that we can get an accurate HiDPI screen scaling from OSystem,
defaulting to using that seems to make sense. But we may still want
to use a slightly different scaling. The GUI scale option allows
that by providing a scaling (in percentage) with which to multiply
the HiDPI scaling.
I think it works better than a base resolution as it avoids having
the GUI getting bigger or smaller when we resize the window.
This commit keeps a popup widget, but this could be changed with
a slider if we want more fine grain control.