diff options
author | Klaus Schmidinger <vdr@tvdr.de> | 2007-08-17 15:31:18 +0200 |
---|---|---|
committer | Klaus Schmidinger <vdr@tvdr.de> | 2007-08-17 15:31:18 +0200 |
commit | 48da9ba9c8f0d592f821c9a4afaca6eec7956981 (patch) | |
tree | 4a8622ce1f6d9367e853d2c102f521f20bfe1fe5 /osd.c | |
parent | 4d0297b804b47d1d14c1b97b146d6e071f41cd97 (diff) | |
download | vdr-48da9ba9c8f0d592f821c9a4afaca6eec7956981.tar.gz vdr-48da9ba9c8f0d592f821c9a4afaca6eec7956981.tar.bz2 |
Changed cBitmap::DrawText() to always draw the background unless ColorBg is clrTransparent
Diffstat (limited to 'osd.c')
-rw-r--r-- | osd.c | 16 |
1 files changed, 7 insertions, 9 deletions
@@ -4,7 +4,7 @@ * See the main source file 'vdr.c' for copyright information and * how to reach the author. * - * $Id: osd.c 1.72 2007/08/12 11:33:17 kls Exp $ + * $Id: osd.c 1.73 2007/08/17 15:23:50 kls Exp $ */ #include "osd.h" @@ -449,13 +449,13 @@ void cBitmap::DrawText(int x, int y, const char *s, tColor ColorFg, tColor Color int w = Font->Width(s); int h = Font->Height(); int limit = 0; + int cw = Width ? Width : w; + int ch = Height ? Height : h; + if (!Intersects(x, y, x + cw - 1, y + ch - 1)) + return; + if (ColorBg != clrTransparent) + DrawRectangle(x, y, x + cw - 1, y + ch - 1, ColorBg); if (Width || Height) { - int cw = Width ? Width : w; - int ch = Height ? Height : h; - if (!Intersects(x, y, x + cw - 1, y + ch - 1)) - return; - if (ColorBg != clrTransparent) - DrawRectangle(x, y, x + cw - 1, y + ch - 1, ColorBg); limit = x + cw - x0; if (Width) { if ((Alignment & taLeft) != 0) @@ -482,8 +482,6 @@ void cBitmap::DrawText(int x, int y, const char *s, tColor ColorFg, tColor Color } } } - else if (!Intersects(x, y, x + w - 1, y + h - 1)) - return; x -= x0; y -= y0; Font->DrawText(this, x, y, s, ColorFg, ColorBg, limit); |