Commit Graph
52 Commits
Author SHA1 Message Date
sluicebox 2775987cba MACGUI: Expose font families in MacFontManager
MacFontManager didn't have a mechanism to report which fonts it loaded
from an external resource. It also requires that any fonts that aren't
built-in be explicitly registered by name by the client before they can
be used. This combination meant that a client couldn't load fonts from
an external file and use them by their properties (id / size / style).

SCI contains Mac fonts in its executable along with a table that maps
each SCI font id to a Mac font id and size. The font name isn't a part
of this since the Classic Mac Toolbox API took id / size / style as
input when drawing text.

Now MacFontManager exposes the font families it has loaded along with
their names. This allows a client to see which fonts were loaded,
register them by name, and proceed to use them with the existing API.
2022-11-06 23:05:20 -08:00
Roland van Laar 034a5efe98 DIRECTOR: Fix memory leak in registered FONDs
References to FOND resource streams are stored in an array.

Font streams were registered by their family name in a hashmap.
When a second font with the same name was encoutered it would replace
the pointer to the previous font.
The only use case for the hashmap was to register the stream to be able
to later close them.
2022-09-24 16:37:27 +02:00
Eugene Sandulenko 84b03e99c7 GRAPHICS: MACGUI: Fix warning 2022-07-17 13:09:32 +02:00
Pragyansh Chaturvedi 5c17fe70b8 JANITORIAL: Fix conventions and reimplement MacFontManager::rectifyId() 2022-07-17 13:04:14 +02:00
Pragyansh Chaturvedi c4f6aa89b9 GRAPHICS: Implement assigning of windows font, check for wrong fontId while loading stxt, read name from FON files DIRECTOR 2022-07-17 13:04:14 +02:00
Pragyansh Chaturvedi 8cb2e1bb07 GRAPHICS: Add rectifyId to check for changed font IDs 2022-07-17 13:04:14 +02:00
Eugene Sandulenko abea37c9bb ALL: Update ScummVM project license to GPLv3+ 2021-12-26 18:48:43 +01:00
djsrv ad780d761c GRAPHICS: MACGUI: Handle TTF fonts with slant 2021-07-30 16:43:57 -04:00
djsrv 29197c191c GRAPHICS: MACGUI: Fix font memory leaks 2021-07-30 16:43:57 -04:00
djsrv de929228c4 GRAPHICS: MACGUI: Add Japanese mode 2021-07-12 18:02:56 -04:00
djsrv ad79812cc6 GRAPHICS: MACGUI: Introduce font aliases
Easy way of adding more font IDs and names for the same font.
2021-07-12 18:02:56 -04:00
djsrv 9fe78bc54d GRAPHICS: MACGUI: Fix unregistered font segfault 2021-07-12 01:33:16 -04:00
djsrv 2e3b08017f GRAPHICS: MACGUI: Whitespace cleanup 2021-07-12 00:38:05 -04:00
djsrv 71d4127b8a GRAPHICS: MACGUI: Store font lang and encoding 2021-07-12 00:38:05 -04:00
djsrv 50cec75fd5 GRAPHICS: MACGUI: Remove changing font ID 3 to 1
We register font ID 3 now.
2021-07-12 00:38:05 -04:00
djsrv 53f600846b GRAPHICS: MACGUI: Fix fallback of Japanese fonts to Osaka 2021-07-12 00:38:05 -04:00
djsrv b57f6d8b7f GRAPHICS: MACGUI: Allow fonts to be registered to a preferred ID 2021-07-12 00:38:05 -04:00
djsrv f39e6eaac7 GRAPHICS: MACGUI: Add Japanese font info 2021-07-12 00:38:05 -04:00
djsrv b7c40b3d37 GRAPHICS: MACGUI: Create font info dictionary 2021-07-12 00:38:05 -04:00
djsrv e9d9b9f569 DIRECTOR: Revert FXmp handling
This reverts commit 4dabee7e8b.
This reverts commit 3fda461d5f.
This reverts commit 831c014f9e.
This reverts commit b3b55e59e9.
2021-07-06 16:47:20 -04:00
djsrv 3fda461d5f GRAPHICS: MACGUI: Handle FontXPlatformMap in MacFontManager::getFont 2021-07-05 22:54:14 -04:00
djsrv 831c014f9e DIRECTOR: Make FXmp available to MacText 2021-07-05 22:53:35 -04:00
djsrv 58ab956d72 GRAPHICS: MACGUI: Don't allow font IDs to be overridden
New fonts are automatically assigned a unique ID.
2021-07-02 18:08:21 -04:00
ysj1173886760 3098ff11b4 GRAPHICS: MACGUI: parse slant directly from name when we didn't get any slants. 2021-06-20 14:33:53 +02:00
djsrv 20e29b2198 GRAPHICS: MACGUI: Load TrueType fonts 2020-06-29 22:11:13 -04:00
Eugene Sandulenko 0f3b188205 GRAPHICS: MACGUI: Fix double Geneva font ids 2020-02-16 15:53:19 +02:00
Eugene Sandulenko 96912ee3f1 GRAPHICS: MACGUI: Moved Font::setName() method implementation out of the header 2020-02-10 15:05:46 +01:00
Eugene Sandulenko 64eb072103 GRAPHICS: MACGUI: Fix default font size 2019-12-01 21:54:05 +01:00
Eugene Sandulenko 2d1dc5d1c4 GRAPHICS: MACGUI: Added default font for MacText 2019-10-19 17:43:47 +02:00
Eugene Sandulenko 6100de0b3a GRAPHICS: MACGUI: Add possibility to set WM mode right away
This lets us to not load mac fonts when the built-in mode in enforced
2019-10-17 01:42:44 +02:00
Eugene Sandulenko 94e543c5c8 GRAPHICS: MACGUI: Implement enforcing built-in fonts 2019-10-04 20:22:59 +02:00
Cameron Cawley 2097c33b57 GRAPHICS: MACGUI: Make use of Common::String::format (#1454) 2018-12-23 15:57:20 +02:00
Eugene Sandulenko 06e1445fd1 MACGUI: Fix warning 2017-07-18 00:02:45 +02:00
VelocityRa 3a2ce12288 WAGE: Fix resizing and text selection bug
Revise/Simplify old optional text rendering
Set things up a bit for selected text rendering
Add MacTextWindow::clearText and MacTextWindow::setSelection
Add MacTextWindow::appendText variant that accepts a MacFont
2017-07-17 23:45:22 +02:00
Eugene Sandulenko 1a4be95aaa GRAPHICS: Try to generate font names from slant in MacFontManager 2017-02-04 16:04:36 +01:00
Eugene Sandulenko fae09e9343 GRAPHICS: Added additional font map registering to MacFontManager 2017-01-27 19:02:37 +01:00
Eugene Sandulenko 01133310c4 GRAPHICS: Overload loadFonts() method in MacResMnager 2017-01-27 10:15:54 +01:00
Eugene Sandulenko 2991871d03 GRAPHICS: Refactor Mac font loading into per file method 2017-01-26 18:50:33 +01:00
Eugene Sandulenko b84ab35363 GRAPHICS: Plug MacFont scaler in 2017-01-24 23:33:59 +01:00
Eugene Sandulenko 0b3d7d3e4f GRAPHICS: Further work on MacFont loading 2017-01-18 18:59:52 +01:00
Eugene Sandulenko 4ede54e6b0 GRAPHICS: Rename MacFont to MacFONTFont to avoid clashed 2017-01-17 20:30:32 +01:00
stevenhoefel aecafd473c DIRECTOR: Load fonts by name if exists from map. 2017-01-14 15:02:58 +11:00
Willem Jan Palenstijn 87c57e42de GRAPHICS: Fix build 2017-01-10 14:54:14 +01:00
stevenhoefel 19b0cc784d DIRECTOR: Load Shared Cast Bitmaps (anchor point is incorrect).
More Text Cast Formatting.
2017-01-10 23:13:45 +11:00
Eugene Sandulenko e19cb15943 GRAPHICS: Declared few methods in MacFontManager public 2016-10-18 11:50:12 +02:00
Eugene Sandulenko 290ac2cc04 GRAPHICS: Added all supported Mac fonts to enum 2016-10-15 12:25:20 +02:00
Eugene Sandulenko ce89406b9a GRAPHICS: Fix BDF font referencing on font generation 2016-10-12 23:27:50 +02:00
Eugene Sandulenko 2cb0e45c63 GRAPHICS: Further work on BDF font scaling 2016-10-12 19:17:29 +02:00
Eugene Sandulenko c0b76581d8 GRAPHICS: Detect substitute for Mac fonts 2016-10-08 14:47:38 +02:00
Eugene Sandulenko 086963fd23 GRAPHICS: Search for font substitution for MacFonts 2016-10-07 19:42:55 +02:00