X-Git-Url: http://code.vuplus.com/gitweb/?p=vuplus_dvbapp;a=blobdiff_plain;f=lib%2Fgdi%2Ffont.h;h=7dd9f89a400c22ac3616f586fab5746eb3bb4768;hp=2643fda20215e7099aebbaaeb02a9b5274507d21;hb=9a23857fd9c6b3dd6a989d865974df96e9fe1828;hpb=da28efe46384a6e23a91e8cb7db726f176bed409 diff --git a/lib/gdi/font.h b/lib/gdi/font.h index 2643fda..7dd9f89 100644 --- a/lib/gdi/font.h +++ b/lib/gdi/font.h @@ -14,6 +14,7 @@ typedef FTC_ImageTypeRec FTC_Image_Desc; typedef FTC_SBitCache FTC_SBit_Cache; #endif #include +#include #include #include @@ -113,6 +114,10 @@ class eTextPara: public iObject eSize maximum; int left; glyphString glyphs; + std::list lineOffsets; + std::list lineChars; + int charCount; + bool doTopBottomReordering; int appendGlyph(Font *current_font, FT_Face current_face, FT_UInt glyphIndex, int flags, int rflags); void newLine(int flags); @@ -120,10 +125,12 @@ class eTextPara: public iObject eRect boundBox; void calc_bbox(); int bboxValid; + void clear(); public: eTextPara(eRect area, ePoint start=ePoint(-1, -1)) - : current_font(0), replacement_font(0), current_face(0), replacement_face(0), - area(area), cursor(start), maximum(0, 0), left(start.x()), bboxValid(0) + :current_font(0), replacement_font(0), current_face(0), replacement_face(0) + ,area(area), cursor(start), maximum(0, 0), left(start.x()), charCount(0) + ,doTopBottomReordering(false), bboxValid(0) { } virtual ~eTextPara(); @@ -134,7 +141,7 @@ public: void setFont(const gFont *font); int renderString(const char *string, int flags=0); - void clear(); + void blit(gDC &dc, const ePoint &offset, const gRGB &background, const gRGB &foreground);