From d09bd946be9c73d96fb8e1697b15e733d04ddeb6 Mon Sep 17 00:00:00 2001 From: Felix Domke Date: Thu, 24 Jan 2008 21:56:23 +0000 Subject: write text support in eCanvas --- lib/gui/ecanvas.cpp | 14 ++++++++++++++ lib/gui/ecanvas.h | 1 + 2 files changed, 15 insertions(+) (limited to 'lib/gui') diff --git a/lib/gui/ecanvas.cpp b/lib/gui/ecanvas.cpp index 3b1e6177..c9a1ec82 100644 --- a/lib/gui/ecanvas.cpp +++ b/lib/gui/ecanvas.cpp @@ -37,3 +37,17 @@ void eCanvas::fillRect(eRect rect, gRGB color) invalidate(rect); } + +void eCanvas::writeText(eRect rect, gRGB fg, gRGB bg, gFont *font, const char *string, int flags) +{ + ePtr dc = new gDC(m_pixmap); + + gPainter p(dc); + p.setFont(font); + p.resetClip(eRect(ePoint(0,0), m_pixmap->size())); + p.setForegroundColor(fg); + p.setBackgroundColor(bg); + p.renderText(rect, string, flags); + + invalidate(rect); +} diff --git a/lib/gui/ecanvas.h b/lib/gui/ecanvas.h index 629c603f..b2ad6a06 100644 --- a/lib/gui/ecanvas.h +++ b/lib/gui/ecanvas.h @@ -12,6 +12,7 @@ public: void clear(gRGB color); void fillRect(eRect rect, gRGB color); + void writeText(eRect where, gRGB fg, gRGB bg, gFont *font, const char *string, int flags); }; #endif -- cgit v1.2.3