From 1a2670629526a93b9862fc210ffaa13f184d2a16 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thomas=20G=C3=BCnther?= Date: Fri, 24 Jul 2009 23:28:27 +0200 Subject: Fixed: Text scroller is not UTF-8 aware (closes #146) --- render.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'render.c') diff --git a/render.c b/render.c index 4cce312..09e79fd 100644 --- a/render.c +++ b/render.c @@ -505,7 +505,7 @@ void cText2SkinRender::DrawMarquee(const txPoint &Pos, const txSize &Size, const else if (mNow >= state.nexttime) { uint nextin = Delay; if (state.direction > 0) { - if (Font->Width(Text.c_str() + state.offset) <= Size.w) { + if (Font->Width(Text.c_str() + Utf8SymChars(Text.c_str(), state.offset)) <= Size.w) { --state.direction; nextin = 1500; } else @@ -532,7 +532,7 @@ void cText2SkinRender::DrawMarquee(const txPoint &Pos, const txSize &Size, const if (Bg) mScreen->DrawRectangle(Pos.x, Pos.y, Pos.x + Size.w - 1, Pos.y + Size.h - 1, *Bg); - mScreen->DrawText(Pos.x, Pos.y, Text.c_str() + state.offset, Fg ? *Fg : 0, clrTransparent, Font, + mScreen->DrawText(Pos.x, Pos.y, Text.c_str() + Utf8SymChars(Text.c_str(), state.offset), Fg ? *Fg : 0, clrTransparent, Font, Size.w, Size.h, Align); } -- cgit v1.2.3