aboutsummaryrefslogtreecommitdiff
path: root/graphics/macgui/macfontmanager.cpp
diff options
context:
space:
mode:
authorEugene Sandulenko2017-01-18 18:59:52 +0100
committerEugene Sandulenko2017-01-18 18:59:52 +0100
commit0b3d7d3e4f1c776575d295d6fef9ff971aa3790e (patch)
treec2bac59c83f379534536d278c86b331c3ac62ba0 /graphics/macgui/macfontmanager.cpp
parentcc82d8f619d2bc8ad7501b3f4db9922ee0c1cdd4 (diff)
downloadscummvm-rg350-0b3d7d3e4f1c776575d295d6fef9ff971aa3790e.tar.gz
scummvm-rg350-0b3d7d3e4f1c776575d295d6fef9ff971aa3790e.tar.bz2
scummvm-rg350-0b3d7d3e4f1c776575d295d6fef9ff971aa3790e.zip
GRAPHICS: Further work on MacFont loading
Diffstat (limited to 'graphics/macgui/macfontmanager.cpp')
-rw-r--r--graphics/macgui/macfontmanager.cpp28
1 files changed, 16 insertions, 12 deletions
diff --git a/graphics/macgui/macfontmanager.cpp b/graphics/macgui/macfontmanager.cpp
index ee91ae42a0..dfb46d1240 100644
--- a/graphics/macgui/macfontmanager.cpp
+++ b/graphics/macgui/macfontmanager.cpp
@@ -129,7 +129,7 @@ void MacFontManager::loadFontsBDF() {
}
FontMan.assignFontToName(fontName, font);
- macfont->setBdfFont(font);
+ macfont->setFont(font);
_fontRegistry.setVal(fontName, macfont);
debug(2, " %s", fontName.c_str());
@@ -177,26 +177,30 @@ void MacFontManager::loadFonts() {
debug("size: %d style: %d id: %d", (*assoc)[i]._fontSize, (*assoc)[i]._fontStyle,
(*assoc)[i]._fontID);
- Common::SeekableReadStream *fontstream = fontFile->getResource(MKTAG('N', 'F', 'N', 'T'), (*assoc)[i]._fontID);
+ Common::SeekableReadStream *fontstream;
MacFont *macfont;
Graphics::MacFONTFont *font;
Common::String fontName;
- if (fontstream) {
- font = new Graphics::MacFONTFont;
- font->loadFont(*fontstream);
-
- delete fontstream;
-
+ if ((fontstream = fontFile->getResource(MKTAG('N', 'F', 'N', 'T'), (*assoc)[i]._fontID))) {
fontName = fontFile->getResName(MKTAG('N', 'F', 'N', 'T'), (*assoc)[i]._fontID);
+ } else if ((fontstream = fontFile->getResource(MKTAG('F', 'O', 'N', 'T'), (*assoc)[i]._fontID))) {
+ fontName = fontFile->getResName(MKTAG('F', 'O', 'N', 'T'), (*assoc)[i]._fontID);
} else {
- fontstream = fontFile->getResource(MKTAG('F', 'O', 'N', 'T'), (*assoc)[i]._fontID);
+ warning("Unknown FontId: %d", (*assoc)[i]._fontID);
+
+ continue;
}
+ font = new Graphics::MacFONTFont;
+ font->loadFont(*fontstream);
+
+ delete fontstream;
+
macfont = new MacFont(_fontNames.getVal(fontName, kMacFontNonStandard), (*assoc)[i]._fontSize, (*assoc)[i]._fontStyle);
FontMan.assignFontToName(fontName, font);
- //macfont->setBdfFont(font);
+ macfont->setFont(font);
_fontRegistry.setVal(fontName, macfont);
debug(2, " %s", fontName.c_str());
@@ -347,14 +351,14 @@ void MacFontManager::generateFont(MacFont &toFont, MacFont &fromFont) {
debugN("Found font substitute for font '%s' ", getFontName(toFont));
debug("as '%s'", getFontName(fromFont));
- Graphics::BdfFont *font = Graphics::BdfFont::scaleFont(fromFont.getBdfFont(), toFont.getSize());
+ Graphics::BdfFont *font = NULL; // = Graphics::BdfFont::scaleFont(fromFont.getFont(), toFont.getSize());
if (!font) {
warning("Failed to generate font '%s'", getFontName(toFont));
}
toFont.setGenerated(true);
- toFont.setBdfFont(font);
+ toFont.setFont(font);
FontMan.assignFontToName(getFontName(toFont), font);
_fontRegistry.setVal(getFontName(toFont), new MacFont(toFont));