aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormd52011-02-26 06:13:08 +0200
committermd52011-02-26 06:13:08 +0200
commit8571083700e8bc9c81d05bb17e55b49dcd0771e7 (patch)
tree567bf3e762173d3c0d248aa0304ad33401f1bee1
parent318c51a2027b554a5c0bc8b045103026657b7073 (diff)
downloadscummvm-rg350-8571083700e8bc9c81d05bb17e55b49dcd0771e7.tar.gz
scummvm-rg350-8571083700e8bc9c81d05bb17e55b49dcd0771e7.tar.bz2
scummvm-rg350-8571083700e8bc9c81d05bb17e55b49dcd0771e7.zip
SCI2+: Mention that the actual problem with text wrapping happens because of the unimplemented kTextSize kernel call in SCI32
-rw-r--r--engines/sci/engine/kgraphics.cpp1
-rw-r--r--engines/sci/graphics/frameout.cpp6
2 files changed, 4 insertions, 3 deletions
diff --git a/engines/sci/engine/kgraphics.cpp b/engines/sci/engine/kgraphics.cpp
index 2bcf5903c0..afcc2d17c6 100644
--- a/engines/sci/engine/kgraphics.cpp
+++ b/engines/sci/engine/kgraphics.cpp
@@ -364,6 +364,7 @@ reg_t kTextSize(EngineState *s, int argc, reg_t *argv) {
if (!g_sci->_gfxText16) {
// TODO: Implement this
textWidth = 0; textHeight = 0;
+ warning("TODO: implement kTextSize for SCI32");
} else
#endif
g_sci->_gfxText16->kernelTextSize(g_sci->strSplit(text.c_str(), sep).c_str(), font_nr, maxwidth, &textWidth, &textHeight);
diff --git a/engines/sci/graphics/frameout.cpp b/engines/sci/graphics/frameout.cpp
index ab4a2c9c1a..87acfdeeb3 100644
--- a/engines/sci/graphics/frameout.cpp
+++ b/engines/sci/graphics/frameout.cpp
@@ -592,9 +592,9 @@ void GfxFrameout::kernelFrameout() {
const char *txt = text.c_str();
// HACK. The plane sometimes doesn't contain the correct width. This
// hack breaks the dialog options when speaking with Grace, but it's
- // the best we got up to now.
- // TODO: Remove this, and figure out why the plane in question isn't
- // initialized correctly (its width is 0).
+ // the best we got up to now. This happens because of the unimplemented
+ // kTextWidth function in SCI32.
+ // TODO: Remove this once kTextWidth has been implemented.
uint16 w = it->planeRect.width() >= 20 ? it->planeRect.width() : _screen->getWidth() - 10;
int16 charCount;