22 #ifndef __kate_font_h__
23 #define __kate_font_h__
26 #include <tqfontmetrics.h>
32 class KateFontMetrics :
public TQFontMetrics
35 KateFontMetrics(
const TQFont& f);
40 int width(TQString s) {
return TQFontMetrics::width(s); }
43 short *createRow (
short *wa, uchar row);
59 void setFont(
const TQFont & font);
62 void updateFontData ();
65 inline int width (
const TQString& text,
int col,
bool bold,
bool italic,
int tabWidth)
67 if (text[col] == TQChar(
'\t'))
68 return tabWidth * myFontMetrics.width(
' ');
72 myFontMetricsBI.charWidth(text, col) :
73 myFontMetricsBold.charWidth(text, col) ) :
75 myFontMetricsItalic.charWidth(text, col) :
76 myFontMetrics.charWidth(text, col) );
79 inline int width (
const TQChar& c,
bool bold,
bool italic,
int tabWidth)
81 if (c == TQChar(
'\t'))
82 return tabWidth * myFontMetrics.width(
' ');
86 myFontMetricsBI.width(c) :
87 myFontMetricsBold.width(c) ) :
89 myFontMetricsItalic.width(c) :
90 myFontMetrics.width(c) );
93 inline const TQFont& font(
bool bold,
bool italic)
const
96 ( (italic) ? myFontBI : myFontBold ) :
97 ( (italic) ? myFontItalic : myFont );
100 inline bool fixedPitch()
const {
return m_fixedPitch; }
103 TQFont myFont, myFontBold, myFontItalic, myFontBI;
105 KateFontMetrics myFontMetrics, myFontMetricsBold, myFontMetricsItalic, myFontMetricsBI;