Commit Graph
33 Commits
Author SHA1 Message Date
Scott Percival 5a95bb2ead DIRECTOR: Fix b_installMenu string decoding
installMenu loads a menu definition from a text cast member. In our
implementation, at load time we coerce the contents to Unicode based on
the platform encoding. Unfortunately for us, Macromedia decided to use
two non-ASCII codepoints for indicating checkmarks and code separators,
which are evaluated as the byte value instead of whatever physical
character they correspond to.

Amending this is slightly hacky, as the UTF-8 equivalent of these
codepoints is two bytes long. The text is first normalised to remove the
platform transformation. The checkmark UTF-8 sequence is replaced with
the single byte equivalent, to maintain compatibility with MacMenu.
Finally, the code separator UTF-8 sequence is used to split the line
between menu definition and script definition.

Fixes the menu system in Eastern Mind.
2022-07-24 23:38:10 +02:00
Eugene Sandulenko abea37c9bb ALL: Update ScummVM project license to GPLv3+ 2021-12-26 18:48:43 +01:00
djsrv fc25ba3af5 DIRECTOR: Keep original line endings in STXT 2021-07-15 16:31:47 -04:00
djsrv 52af0ac82e DIRECTOR: Create DirectorEngine::getPlatformEncoding 2021-07-15 16:31:47 -04:00
djsrv acf0b1fbcf DIRECTOR: Escape non-printable STXT characters before logging 2021-07-12 15:41:21 -04:00
djsrv ac5dfc64f6 DIRECTOR: Fix text formatting in The Apartment 2021-07-12 01:47:30 -04:00
djsrv f1ddc4b346 DIRECTOR: Handle STXT encoding 2021-07-12 00:38:05 -04:00
djsrv 6408f6023a DIRECTOR: Rename FontInfo to FontMapEntry 2021-07-12 00:38:05 -04:00
djsrv f64e941eef DIRECTOR: Add comment about ignored char mapings 2021-07-06 16:47:20 -04:00
djsrv a2848f5dba DIRECTOR: Handle FXmp mappings in loadFontMapV4
The previous way I handled the FXmp mappings overcomplicated MacText.
It also resulted in behavior different from the original Director.  With
the previous implementation, if a Win movie with Arial text was opened
with the platform set to Mac, the textFont of field 1 would return
Arial, while it would return the mapped font name Helvetica in the
original. This implementation's behavior should match the original.
2021-07-06 16:47:20 -04:00
djsrv 8e2c8ee2d4 DIRECTOR: Map fonts in FontStyle::read
The previous place I was mapping the font IDs didn't catch everything,
breaking text with more than one style.
2021-07-04 10:07:27 -04:00
djsrv baacf3c1ab DIRECTOR: Replace SeekableSubReadStreamEndian
Use the superclass SeekableReadStreamEndian.
2020-08-12 17:26:55 -04:00
Eugene Sandulenko e693076558 DIRECTOR: Set the cast size for bitmaps, sounds and texts 2020-07-21 18:53:28 +02:00
djsrv e4caa3d514 DIRECTOR: LINGO: Fixed shared cast patching 2020-07-20 17:13:07 -04:00
Eugene Sandulenko 8a9f5dec72 DIRECTOR: Load text formatting for CastInfo 2020-07-15 01:43:16 +02:00
Eugene Sandulenko 7a14a762df DIRECTOR: Refactor FontStyle loading 2020-07-15 01:43:16 +02:00
Eugene Sandulenko d90e2f06ec DIRECTOR: Init Stxt for D4 variant 2020-07-06 12:08:03 +02:00
Roland van Laar a86e326967 DIRECTOR: handle unk1 -> offset change in debugtext 2020-07-03 22:34:31 +02:00
Roland van Laar 1216106d8c DIRECTOR: Rename unk1 to offset
unk1 is observed to be always 12, the offset at which
the stxt text is read.
2020-07-03 22:29:58 +02:00
Roland van Laar 1b3995bd3f DIRECTOR: stxt handle stream of size 0
An stxt can have a stream size of 0, we skip handling those.
2020-07-03 22:29:58 +02:00
Eugene Sandulenko 7537528034 JANITORIAL: Whitespace fixes 2020-06-06 18:43:18 +02:00
Eugene Sandulenko af9d122b0d DIRECTOR: Initialize Stxt 2020-04-03 23:33:27 +02:00
Eugene Sandulenko cf7b86ceb9 DIRECTOR: Furhter work on header dependency decrease 2019-12-24 00:19:27 +01:00
Eugene Sandulenko 121e42b88d DIRECTOR: More work on reducing header dependency 2019-12-24 00:19:27 +01:00
Eugene Sandulenko 9a2371ddfb GRAPHICS: MACGUI: Fixed text format parsing 2019-12-14 00:37:45 +01:00
Eugene Sandulenko a35259dc0d GRAPHICS: MACGUI: Implemented non-binary version of inline text formatting 2019-12-11 21:45:55 +01:00
Eugene Sandulenko c106675294 DIRECTOR: Store original Stxt value 2019-12-11 00:45:12 +01:00
Eugene Sandulenko ff68862ecc DIRECTOR: Escape Stxt debug output 2019-12-11 00:45:12 +01:00
D G Turner b3c1ed66e4 DIRECTOR: Fix GCC Compiler Warnings. 2017-08-02 13:26:29 +01:00
Eugene Sandulenko 73c5c85210 DIRECTOR: Clarified STXT field names 2017-08-01 10:42:22 +02:00
Eugene Sandulenko bfd2b487eb DIRECTOR: Fix code formatting 2017-05-02 22:06:59 +02:00
Eugene Sandulenko c750d17b0c DIRECTOR: Fix #include paths 2017-05-02 22:04:21 +02:00
Tobia Tesan 4ae5453af8 DIRECTOR: Add stxt.cpp 2017-05-02 21:01:23 +01:00