aboutsummaryrefslogtreecommitdiff
path: root/backends/vkeybd
diff options
context:
space:
mode:
authorMatthew Hoops2011-06-30 08:16:19 -0400
committerJohannes Schickel2012-03-20 01:06:47 +0100
commit426c81a7a7a4d6f47b73db1a75908b548d250e4e (patch)
treed9a5be538bbf1cda43196765b7fc1204324bd47f /backends/vkeybd
parent29f7cc33fb66ded97a8261beb8d16dd951bdec59 (diff)
downloadscummvm-rg350-426c81a7a7a4d6f47b73db1a75908b548d250e4e.tar.gz
scummvm-rg350-426c81a7a7a4d6f47b73db1a75908b548d250e4e.tar.bz2
scummvm-rg350-426c81a7a7a4d6f47b73db1a75908b548d250e4e.zip
GRAPHICS: Rewrite ImageDecoder to have an improved API
The new bitmap decoder class is based off the Mohawk one, and now has 8bpp decoding capability.
Diffstat (limited to 'backends/vkeybd')
-rw-r--r--backends/vkeybd/virtual-keyboard-parser.cpp14
1 files changed, 9 insertions, 5 deletions
diff --git a/backends/vkeybd/virtual-keyboard-parser.cpp b/backends/vkeybd/virtual-keyboard-parser.cpp
index 1958113578..bb8286d1f5 100644
--- a/backends/vkeybd/virtual-keyboard-parser.cpp
+++ b/backends/vkeybd/virtual-keyboard-parser.cpp
@@ -34,7 +34,7 @@
#include "common/tokenizer.h"
#include "common/stream.h"
-#include "graphics/imagedec.h"
+#include "graphics/decoders/bmp.h"
namespace Common {
@@ -266,11 +266,15 @@ bool VirtualKeyboardParser::parserCallback_layout(ParserNode *node) {
const Graphics::PixelFormat format = g_system->getOverlayFormat();
- _mode->image = Graphics::ImageDecoder::loadFile(*file, format);
- delete file;
+ {
+ Graphics::BitmapDecoder bmp;
+ if (!bmp.loadStream(*file))
+ return parserError("Error loading bitmap '" + _mode->bitmapName + "'");
+
+ _mode->image = bmp.getSurface()->convertTo(format);
+ }
- if (!_mode->image)
- return parserError("Error loading bitmap '" + _mode->bitmapName + "'");
+ delete file;
int r, g, b;
if (node->values.contains("transparent_color")) {