diff options
author | Chris Warren-Smith | 2011-08-07 21:33:32 +1000 |
---|---|---|
committer | Chris Warren-Smith | 2011-08-21 16:37:06 +1000 |
commit | 59739a7a0e3e4826ba7b27d5270a8d7a26b787ef (patch) | |
tree | dcf98438157963eabd0ca4499b7794548b08f5fa /graphics | |
parent | f705a9b2865a3379b3423c7cc929086eee17a4f1 (diff) | |
download | scummvm-rg350-59739a7a0e3e4826ba7b27d5270a8d7a26b787ef.tar.gz scummvm-rg350-59739a7a0e3e4826ba7b27d5270a8d7a26b787ef.tar.bz2 scummvm-rg350-59739a7a0e3e4826ba7b27d5270a8d7a26b787ef.zip |
BADA: Initial BADA port implementation
Diffstat (limited to 'graphics')
-rw-r--r-- | graphics/fontman.cpp | 20 | ||||
-rw-r--r-- | graphics/fontman.h | 10 | ||||
-rw-r--r-- | graphics/fonts/bdf.cpp | 3 |
3 files changed, 32 insertions, 1 deletions
diff --git a/graphics/fontman.cpp b/graphics/fontman.cpp index e59e5a33c5..19f702ab30 100644 --- a/graphics/fontman.cpp +++ b/graphics/fontman.cpp @@ -79,6 +79,26 @@ bool FontManager::assignFontToName(const Common::String &name, const Font *font) return true; } +bool FontManager::assignFontToUsage(FontUsage usage, const Font *font) { + switch (usage) { + case kConsoleFont: + delete g_consolefont; + g_consolefont = (const BdfFont*)font; + break; + case kGUIFont: + delete g_sysfont; + g_sysfont = (const BdfFont*)font; + break; + case kBigGUIFont: + delete g_sysfont_big; + g_sysfont_big = (const BdfFont*)font; + break; + default: + return false; + } + return true; +} + void FontManager::removeFontName(const Common::String &name) { Common::String lowercaseName = name; lowercaseName.toLowercase(); diff --git a/graphics/fontman.h b/graphics/fontman.h index 858a733d45..7c132e613e 100644 --- a/graphics/fontman.h +++ b/graphics/fontman.h @@ -60,6 +60,16 @@ public: bool assignFontToName(const Common::String &name, const Font *font); /** + * Associates a BDF font object with an 'usage'. This is useful for platforms + * with a screen DPI much larger than a regular desktop workstation. + * + * @param name the name of the font + * @param font the font object + * @return true on success, false on failure + */ + bool assignFontToUsage(FontUsage usage, const Font *font); + + /** * Removes binding from name to font * * @param name name which should be removed diff --git a/graphics/fonts/bdf.cpp b/graphics/fonts/bdf.cpp index cf2e38d3f1..58c48ed877 100644 --- a/graphics/fonts/bdf.cpp +++ b/graphics/fonts/bdf.cpp @@ -81,7 +81,8 @@ void drawCharIntern(byte *ptr, uint pitch, const bitmap_t *src, int h, int minX, void BdfFont::drawChar(Surface *dst, byte chr, const int tx, const int ty, const uint32 color) const { assert(dst != 0); - assert(_desc.bits != 0 && _desc.maxwidth <= 16); + // asserting _desc.maxwidth <= 50: let the theme designer decide what looks best + assert(_desc.bits != 0 && _desc.maxwidth <= 50); assert(dst->format.bytesPerPixel == 1 || dst->format.bytesPerPixel == 2); // If this character is not included in the font, use the default char. |