From 80547db1f24b26c440d591e7e876ee711e53f58e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stephan=20A=C3=9Fmus?= Date: Sat, 26 Mar 2005 22:09:58 +0000 Subject: [PATCH] added some support functions for string bounding box git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12051 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- .../app/drawing/Painter/font_support/AGGTextRenderer.cpp | 4 ++-- .../app/drawing/Painter/font_support/AGGTextRenderer.h | 1 + src/servers/app/drawing/Painter/font_support/TextRenderer.h | 2 +- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/servers/app/drawing/Painter/font_support/AGGTextRenderer.cpp b/src/servers/app/drawing/Painter/font_support/AGGTextRenderer.cpp index 28f90f3d0a..6cc045243c 100644 --- a/src/servers/app/drawing/Painter/font_support/AGGTextRenderer.cpp +++ b/src/servers/app/drawing/Painter/font_support/AGGTextRenderer.cpp @@ -331,7 +331,7 @@ AGGTextRenderer::RenderString(const char* string, // Bounds BRect -AGGTextRenderer::Bounds(const char* string, +AGGTextRenderer::Bounds(const char* string, uint32 length, const Transformable& transform) { fFontEngine.hinting(fHinted); @@ -342,7 +342,7 @@ AGGTextRenderer::Bounds(const char* string, // do a UTF8 -> Unicode conversion if (string) { - int32 srcLength = strlen(string); + int32 srcLength = min_c(strlen(string), length); if (srcLength > 0) { int32 dstLength = srcLength * 4; diff --git a/src/servers/app/drawing/Painter/font_support/AGGTextRenderer.h b/src/servers/app/drawing/Painter/font_support/AGGTextRenderer.h index 9fa93c5c15..f75d58009a 100644 --- a/src/servers/app/drawing/Painter/font_support/AGGTextRenderer.h +++ b/src/servers/app/drawing/Painter/font_support/AGGTextRenderer.h @@ -37,6 +37,7 @@ class AGGTextRenderer : public TextRenderer { BPoint* nextCharPos = NULL); virtual BRect Bounds(const char* utf8String, + uint32 length, const Transformable& transform); private: diff --git a/src/servers/app/drawing/Painter/font_support/TextRenderer.h b/src/servers/app/drawing/Painter/font_support/TextRenderer.h index 4be6784390..e654747f2b 100644 --- a/src/servers/app/drawing/Painter/font_support/TextRenderer.h +++ b/src/servers/app/drawing/Painter/font_support/TextRenderer.h @@ -60,7 +60,7 @@ class TextRenderer : public BArchivable { BRect constrainRect, const Transformable& transform) = 0;*/ - virtual BRect Bounds(const char* utf8String, + virtual BRect Bounds(const char* utf8String, uint32 length, const Transformable& transform) = 0; virtual void Update() {};