From f77dfe9d23374733c2553765bcdc7037ed2b649d Mon Sep 17 00:00:00 2001 From: Filippos Karapetis Date: Sat, 23 May 2009 11:56:27 +0000 Subject: Fixed the incorrect placement of the copyright message in KQ6 on screen svn-id: r40806 --- engines/sci/engine/kgraphics.cpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'engines/sci/engine') diff --git a/engines/sci/engine/kgraphics.cpp b/engines/sci/engine/kgraphics.cpp index a05dea88cd..865ed2dcc4 100644 --- a/engines/sci/engine/kgraphics.cpp +++ b/engines/sci/engine/kgraphics.cpp @@ -3268,6 +3268,8 @@ reg_t kDisplay(EngineState *s, int funct_nr, int argc, reg_t *argv) { } } + // This code places texts incorrectly on screen +#if 0 // If the text does not fit on the screen, move it to the left and upwards until it does if (halign == ALIGN_LEFT) GFX_ASSERT(gfxop_get_text_params(s->gfx_state, font_nr, text, area.width, &area.width, &area.height, 0, NULL, NULL, NULL)); @@ -3278,6 +3280,16 @@ reg_t kDisplay(EngineState *s, int funct_nr, int argc, reg_t *argv) { if (area.y + area.height > 200) area.y += 200 - area.y - area.height; // Plus negative number = subtraction +#else + // Replaced with this instead + // If the text does not fit on the screen, clip it till it does + if (area.x + area.width > s->gfx_state->pic_port_bounds.width) + area.width = CLIP(area.width, 0, s->gfx_state->pic_port_bounds.width); + + if (area.y + area.height > s->gfx_state->pic_port_bounds.height) + area.height = CLIP(area.height, 0, s->gfx_state->pic_port_bounds.height); +#endif + if (gray) color1 = &bg_color; -- cgit v1.2.3