VR-Forces 4.2 Class Documentation
ttsDrawer.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 2001 MAK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************/
5 /*********************************************************************
6 ** $RCSfile: ttsDrawer.h,v $ $Revision: 1.28 $ $State: Exp $
7 *********************************************************************/
8 
11 
12 #ifndef DtTTSDrawer_H_
13 #define DtTTSDrawer_H_
14 
18 
20 #include <QtCore/QCache>
21 #include <QtCore/QSize>
22 
23 #include <QtGui/QPixmap>
24 #include <QtGui/QPainter>
25 #include <QtGui/QBrush>
26 #include <QtGui/QFont>
27 #include <QtGui/QFontMetrics>
28 
29 class QString;
30 class DtSymbol;
31 class DtTTSSymbol;
32 class DtCenterPoint;
33 
38 
42 {
43 public:
44  DtTTSDrawer();
45  DtTTSDrawer(const QString & family, int pointSize = 24 );
46  virtual ~DtTTSDrawer();
47 
48  virtual bool draw( QPainter& paint,
49  const DtSymbol * const symbol ) const;
50 
53  virtual QSize calcBBox( const DtSymbol * const symbol ) const;
54 
55  virtual void setFont( const QString & family, unsigned pointSize );
56  virtual void setFont( const QFont & font );
57  const QFont & font() const;
58 
60  virtual bool compareFamily( const QString & desiredFamily,
61  const QFont& font ) const;
62 
65  virtual QPoint calcOrigin(const DtTTSSymbol* s, bool calcBitmapOrigin = false) const;
66 
69  virtual void paintFont(QPainter& painter,
70  int left, int base,
71  const DtTTSSymbol & symbol, const QColor& ) const;
72 
73  virtual void paintFont(QPainter& painter, QRect& rect, const DtTTSSymbol& t,
74  const QColor&, int flags = 0) const;
75 
77  virtual void setCenter(bool b);
78 
79  static DtSymbolDrawer* create();
80 
81 protected:
83  virtual void setAppearance( const DtTTSSymbol & s ) const;
84 
85  virtual bool drawSymbolAsBitmap(QPainter& painter, const QPoint& origin, const DtTTSSymbol& t) const;
86 
87  virtual bool drawFont(QPainter& painter, const QPoint& origin, const DtTTSSymbol& t) const;
88  virtual QString calcKey( const DtTTSSymbol & symbol ) const;
89 
91 
92  virtual QHash<QString, QPixmap>::const_iterator insertPix( const DtTTSSymbol & symbol,
93  const QPixmap * pix ) const;
94  virtual const QPixmap * lookupPix( const DtTTSSymbol & symbol ) const;
95  virtual const QPixmap* createPix(const DtTTSSymbol *pSymbol) const;
97 
98  virtual void createFontKey();
99 
100 private:
102  DtTTSDrawer(const DtTTSDrawer& orig);
103  DtTTSDrawer& operator=(const DtTTSDrawer& orig);
105 
106 protected:
109  mutable QFont myFont;
110  mutable QFont myDefaultFont;
111  mutable QFontMetrics myFontMetrics;
112  bool myCenter;
113 
114 protected:
117  mutable QHash<QString, QPixmap> myCache;
118  QString myFontKey;
119 };
120 
121 #endif
122 

Document ID: Generated on Sun Nov 24 19:49:21 EST 2013 from SVN revision 133924
Copyright © 2005-2013 VT MÄK. All Rights Reserved (www.mak.com)