00001
00002 #ifndef __XFont_h
00003 #define __XFont_h
00004
00005 #define Status int
00006 #include "Xft.h"
00007 #undef Status
00008 #include "LgiLinux.h"
00009 #include "xpainter.h"
00010
00011 class XFont : public XObject
00012 {
00013 class XFontPrivate *Data;
00014 friend class XFontMetrics;
00015
00016 void GetScale(double &x, double &y);
00017
00018 public:
00019 XFont();
00020 ~XFont();
00021
00022 Font GetFont();
00023 XFontStruct *GetStruct();
00024 XftFont *GetTtf();
00025 XFont &operator =(XFont &f);
00026
00027 void SetPainter(XPainter *p);
00028 void SetFamily(char *face);
00029 void SetPointSize(int height);
00030 void SetBold(bool bold);
00031 void SetItalic(bool italic);
00032 void SetUnderline(bool underline);
00033
00034 int GetAscent();
00035 int GetDescent();
00036 char *GetFamily();
00037 int GetPointSize();
00038 bool GetBold();
00039 bool GetItalic();
00040 bool GetUnderline();
00041 };
00042
00043 #endif