diff options
author | Eugene Sandulenko | 2017-01-27 10:15:54 +0100 |
---|---|---|
committer | Eugene Sandulenko | 2017-01-27 10:15:54 +0100 |
commit | 01133310c4c909333b5ebc1c0a78b701e5932312 (patch) | |
tree | edd61d7ca701a7978b010da9e085ddb244fc6835 /graphics/macgui/macfontmanager.cpp | |
parent | 399f5b9be55f61d8b7650d77af8db9fbf43bde73 (diff) | |
download | scummvm-rg350-01133310c4c909333b5ebc1c0a78b701e5932312.tar.gz scummvm-rg350-01133310c4c909333b5ebc1c0a78b701e5932312.tar.bz2 scummvm-rg350-01133310c4c909333b5ebc1c0a78b701e5932312.zip |
GRAPHICS: Overload loadFonts() method in MacResMnager
Diffstat (limited to 'graphics/macgui/macfontmanager.cpp')
-rw-r--r-- | graphics/macgui/macfontmanager.cpp | 23 |
1 files changed, 17 insertions, 6 deletions
diff --git a/graphics/macgui/macfontmanager.cpp b/graphics/macgui/macfontmanager.cpp index 9d66e495ad..1b664d53b0 100644 --- a/graphics/macgui/macfontmanager.cpp +++ b/graphics/macgui/macfontmanager.cpp @@ -158,7 +158,7 @@ void MacFontManager::loadFonts() { for (Common::ArchiveMemberList::iterator it = list.begin(); it != list.end(); ++it) { Common::SeekableReadStream *stream = dat->createReadStreamForMember((*it)->getName()); - loadFontsFromStream(stream); + loadFonts(stream); } _builtInFonts = false; @@ -166,12 +166,25 @@ void MacFontManager::loadFonts() { delete dat; } -void MacFontManager::loadFontsFromStream(Common::SeekableReadStream *stream) { - Common::MacResManager *fontFile = new Common::MacResManager(); +void MacFontManager::loadFonts(Common::SeekableReadStream *stream) { + Common::MacResManager fontFile; - if (!fontFile->loadFromMacBinary(*stream)) + if (!fontFile.loadFromMacBinary(*stream)) return; + loadFonts(&fontFile); +} + +void MacFontManager::loadFonts(const Common::String &fileName) { + Common::MacResManager fontFile; + + if (!fontFile.open(fileName)) + return; + + loadFonts(&fontFile); +} + +void MacFontManager::loadFonts(Common::MacResManager *fontFile) { Common::MacResIDArray fonds = fontFile->getResIDArray(MKTAG('F','O','N','D')); if (fonds.size() > 0) { for (Common::Array<uint16>::iterator iterator = fonds.begin(); iterator != fonds.end(); ++iterator) { @@ -222,8 +235,6 @@ void MacFontManager::loadFontsFromStream(Common::SeekableReadStream *stream) { delete fond; } } - - delete fontFile; } const Font *MacFontManager::getFont(MacFont macFont) { |