lib

KoTextFormat Class Reference

#include <KoTextFormat.h>

List of all members.


Detailed Description

Each character (KoTextStringChar) points to a KoTextFormat that defines the formatting of that character (font, bold, italic, underline, misspelled etc.

).

Formats are stored in KoTextFormatCollection and are shared for all characters with the same format. The API rule is that a const KoTextFormat* is a temporary format (out of collection) and a KoTextFormat* is a format from the collection.

Definition at line 52 of file KoTextFormat.h.


Public Types

enum  Flags {
  NoFlags, Bold = 1, Italic = 2, Underline = 4,
  Family = 8, Size = 16, Color = 32, Misspelled = 64,
  VAlign = 128, StrikeOut = 512, TextBackgroundColor = 1024, ExtendUnderLine = 2048,
  Language = 4096, ShadowText = 8192, OffsetFromBaseLine = 16384, WordByWord = 32768,
  Attribute = 65536, Hyphenation = 131072, UnderLineWidth = 262144, Font = Bold | Italic | Underline | Family | Size,
  Format
}
enum  VerticalAlignment { AlignNormal, AlignSubScript, AlignSuperScript, AlignCustom }
enum  UnderlineType {
  U_NONE = 0, U_SIMPLE = 1, U_DOUBLE = 2, U_SIMPLE_BOLD = 3,
  U_WAVE = 4
}
enum  StrikeOutType { S_NONE = 0, S_SIMPLE = 1, S_DOUBLE = 2, S_SIMPLE_BOLD = 3 }
enum  UnderlineStyle {
  U_SOLID = 0, U_DASH = 1, U_DOT = 2, U_DASH_DOT = 3,
  U_DASH_DOT_DOT = 4
}
enum  StrikeOutStyle {
  S_SOLID = 0, S_DASH = 1, S_DOT = 2, S_DASH_DOT = 3,
  S_DASH_DOT_DOT = 4
}
enum  AttributeStyle { ATT_NONE = 0, ATT_UPPER = 1, ATT_LOWER = 2, ATT_SMALL_CAPS }

Public Member Functions

 KoTextFormat ()
 ~KoTextFormat ()
 KoTextFormat (const QFont &f, const QColor &c, const QString &_language, bool hyphenation, KoTextFormatCollection *parent=0)
 KoTextFormat (const QFont &_font, VerticalAlignment _valign, const QColor &_color, const QColor &_backGroundColor, const QColor &_underlineColor, KoTextFormat::UnderlineType _underlineType, KoTextFormat::UnderlineStyle _underlineStyle, KoTextFormat::StrikeOutType _strikeOutType, KoTextFormat::StrikeOutStyle _strikeOutStyle, KoTextFormat::AttributeStyle _fontAttribute, const QString &_language, double _relativeTextSize, int _offsetFromBaseLine, bool _wordByWord, bool _hyphenation, double _shadowDistanceX, double _shadowDistanceY, const QColor &shadowColor)
 KoTextFormat (const KoTextFormat &fm)
KoTextFormatoperator= (const KoTextFormat &fm)
void copyFormat (const KoTextFormat &fm, int flags)
QColor color () const
QFont font () const
int pointSize () const
bool isMisspelled () const
VerticalAlignment vAlign () const
int width (const QChar &c) const
int width (const QString &str, int pos) const
int height () const
int ascent () const
int descent () const
int offsetX () const
int offsetY () const
void setBold (bool b)
void setItalic (bool b)
void setUnderline (bool b)
void setFamily (const QString &f)
void setPointSize (int s)
void setFont (const QFont &f)
void setColor (const QColor &c)
void setMisspelled (bool b)
void setVAlign (VerticalAlignment a)
bool operator== (const KoTextFormat &f) const
KoTextFormatCollectionparent () const
void setCollection (KoTextFormatCollection *parent)
QString key () const
void addRef ()
void removeRef ()
int compare (const KoTextFormat &format) const
void setStrikeOutType (StrikeOutType _type)
StrikeOutType strikeOutType () const
void setStrikeOutStyle (StrikeOutStyle _type)
StrikeOutStyle strikeOutStyle () const
void setTextBackgroundColor (const QColor &)
QColor textBackgroundColor () const
void setTextUnderlineColor (const QColor &)
QColor textUnderlineColor () const
void setUnderlineType (UnderlineType _type)
UnderlineType underlineType () const
void setUnderlineStyle (UnderlineStyle _type)
UnderlineStyle underlineStyle () const
void setLanguage (const QString &_lang)
QString language () const
void setHyphenation (bool b)
bool hyphenation () const
void setUnderLineWidth (double ulw)
double underLineWidth () const
void setAttributeFont (KoTextFormat::AttributeStyle _att)
KoTextFormat::AttributeStyle attributeFont () const
double shadowDistanceX () const
double shadowDistanceY () const
QColor shadowColor () const
int shadowX (KoTextZoomHandler *zh) const
int shadowY (KoTextZoomHandler *zh) const
void setShadow (double shadowDistanceX, double shadowDistanceY, const QColor &shadowColor)
QString shadowAsCss () const
void parseShadowFromCss (const QString &css)
double relativeTextSize () const
void setRelativeTextSize (double _size)
int offsetFromBaseLine () const
void setOffsetFromBaseLine (int _offset)
bool wordByWord () const
void setWordByWord (bool _b)
bool doubleUnderline () const
bool waveUnderline () const
bool underline () const
bool strikeOut () const
bool doubleStrikeOut () const
bool isStrikedOrUnderlined () const
float refPointSize () const
float screenPointSize (const KoTextZoomHandler *zh) const
const QFontMetrics & refFontMetrics () const
const QFontMetrics & screenFontMetrics (const KoTextZoomHandler *zh) const
QFont refFont () const
QFont screenFont (const KoTextZoomHandler *zh) const
QFont smallCapsFont (const KoTextZoomHandler *zh, bool applyZoom) const
int charWidth (const KoTextZoomHandler *zh, bool applyZoom, const KoTextStringChar *c, const KoTextParag *parag, int i) const
int charWidthLU (const KoTextStringChar *c, const KoTextParag *parag, int i) const
void applyCharStyle (KoCharStyle *_style)
KoCharStylestyle () const
QString displayedString (const QString &c) const
void load (KoOasisContext &context)
void save (KoGenStyle &gs, KoSavingContext &context, KoTextFormat *refFormat=0) const
void printDebug ()
void zoomChanged ()

Static Public Member Functions

static QString getKey (const QFont &f, const QColor &c, bool misspelled, VerticalAlignment vAlign)
static QColor defaultTextColor (QPainter *painter)
static QString shadowAsCss (double shadowDistanceX, double shadowDistanceY, const QColor &shadowColor)
static QString underlineStyleToString (UnderlineStyle _lineType)
static QString strikeOutStyleToString (StrikeOutStyle _lineType)
static UnderlineStyle stringToUnderlineStyle (const QString &_str)
static StrikeOutStyle stringToStrikeOutStyle (const QString &_str)
static QString attributeFontToString (KoTextFormat::AttributeStyle _attr)
static AttributeStyle stringToAttributeFont (const QString &_str)
static QStringList underlineTypeList ()
static QStringList strikeOutTypeList ()
static QStringList fontAttributeList ()
static QStringList underlineStyleList ()
static QStringList strikeOutStyleList ()

Protected Member Functions

QChar displayedChar (QChar c) const
void generateKey ()

Friends

class KoTextFormatCollection

Constructor & Destructor Documentation

KoTextFormat::KoTextFormat const QFont &  f,
const QColor &  c,
const QString &  _language,
bool  hyphenation,
KoTextFormatCollection parent = 0
 

A simple text format with some default settings Only used for the default format.

Definition at line 85 of file KoTextFormat.cpp.

KoTextFormat::KoTextFormat const QFont &  _font,
VerticalAlignment  _valign,
const QColor &  _color,
const QColor &  _backGroundColor,
const QColor &  _underlineColor,
KoTextFormat::UnderlineType  _underlineType,
KoTextFormat::UnderlineStyle  _underlineStyle,
KoTextFormat::StrikeOutType  _strikeOutType,
KoTextFormat::StrikeOutStyle  _strikeOutStyle,
KoTextFormat::AttributeStyle  _fontAttribute,
const QString &  _language,
double  _relativeTextSize,
int  _offsetFromBaseLine,
bool  _wordByWord,
bool  _hyphenation,
double  _shadowDistanceX,
double  _shadowDistanceY,
const QColor &  shadowColor
 

A complete text format (used by KoFontDia).

Definition at line 130 of file KoTextFormat.cpp.


Member Function Documentation

int KoTextFormat::charWidth const KoTextZoomHandler zh,
bool  applyZoom,
const KoTextStringChar c,
const KoTextParag parag,
int  i
const
 

Return the width of one char in one paragraph.

Used by KoTextFormatter twice: once for the 100% zoom pointsize (via charWidthLU), and once for the current zoom pointsize.

Definition at line 1179 of file KoTextFormat.cpp.

int KoTextFormat::charWidthLU const KoTextStringChar c,
const KoTextParag parag,
int  i
const
 

Return the width of one char in LU pixels.

Equivalent to ptToLayoutUnitPt( charWidth( 0L, false, c, parag, i ) )

Definition at line 1370 of file KoTextFormat.cpp.

int KoTextFormat::compare const KoTextFormat format  )  const
 

Return a set of flags showing the differences between this and 'format'.

Definition at line 1040 of file KoTextFormat.cpp.

QColor KoTextFormat::defaultTextColor QPainter *  painter  )  [static]
 

Call this when a text color is set to 'invalid', meaning 'whatever the default for the color scheme is'.

Definition at line 1084 of file KoTextFormat.cpp.

void KoTextFormat::load KoOasisContext context  ) 
 

Load a text format from OASIS XML.

Definition at line 375 of file KoTextFormat.cpp.

void KoTextFormat::parseShadowFromCss const QString &  css  ) 
 

Load shadow attributes from a css string, used when loading.

Definition at line 1413 of file KoTextFormat.cpp.

QFont KoTextFormat::refFont  )  const
 

Returns:
the reference font, i.e. with the size specified by the user. This is used at text layout time (e.g. kotextformatter)

Definition at line 1108 of file KoTextFormat.cpp.

const QFontMetrics & KoTextFormat::refFontMetrics  )  const
 

Returns:
the metrics for the reference font, i.e. with the size specified by the user. This is the one used during formatting, independently from the zoom level. This method takes care of superscript and subscript (smaller font).

Definition at line 1157 of file KoTextFormat.cpp.

float KoTextFormat::refPointSize  )  const
 

Returns:
the reference point size, i.e. the size specified by the user. This is the one used during formatting, independently from the zoom level. This method takes care of superscript and subscript (smaller font).

Definition at line 1100 of file KoTextFormat.cpp.

void KoTextFormat::save KoGenStyle gs,
KoSavingContext context,
KoTextFormat refFormat = 0
const
 

Save a text format to OASIS XML Only saves what differs from , if set.

Definition at line 541 of file KoTextFormat.cpp.

QFont KoTextFormat::screenFont const KoTextZoomHandler zh  )  const
 

Returns the font to be used at the zoom & resolution given by 'zh'.

Despite the name, this is probably valid for printing too. This method takes care of superscript and subscript (smaller font).

Definition at line 1123 of file KoTextFormat.cpp.

const QFontMetrics & KoTextFormat::screenFontMetrics const KoTextZoomHandler zh  )  const
 

Returns the font metrics for the font used at the zoom & resolution given by 'zh'.

Despite the name, this is probably valid for printing too. This method takes care of superscript and subscript (smaller font).

Definition at line 1144 of file KoTextFormat.cpp.

float KoTextFormat::screenPointSize const KoTextZoomHandler zh  )  const
 

Returns:
the point size to use on screen, given zh This method takes care of superscript and subscript (smaller font).

Definition at line 1091 of file KoTextFormat.cpp.

QString KoTextFormat::shadowAsCss  )  const
 

Return css string for the shadow, used when saving.

Definition at line 1408 of file KoTextFormat.cpp.

int KoTextFormat::shadowX KoTextZoomHandler zh  )  const
 

Return the amount of pixels for the horizontal shadow distance at a given zoom level.

Definition at line 1463 of file KoTextFormat.cpp.

int KoTextFormat::shadowY KoTextZoomHandler zh  )  const
 

Return the amount of pixels for the vertical shadow distance at a given zoom level.

Definition at line 1468 of file KoTextFormat.cpp.

int KoTextFormat::width const QChar &  c  )  const
 

Return the width of one char (from a string, not necessarily from a paragraph) in LU pixels.

Do not call this for custom items, or for complex glyphs. But this can still be used for ' ' (for parag counters), 'x' (for tabs) etc.

Definition at line 1377 of file KoTextFormat.cpp.

void KoTextFormat::zoomChanged  ) 
 

Called when the zoom or resolution changes.

Definition at line 48 of file KoTextFormat.cpp.


The documentation for this class was generated from the following files:
KDE Home | KDE Accessibility Home | Description of Access Keys