diff options
author | Eskil Abrahamsen Blomfeldt <eblomfel@trolltech.com> | 2009-08-21 14:29:44 (GMT) |
---|---|---|
committer | Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com> | 2010-01-14 13:05:08 (GMT) |
commit | bf919e06127962836a6b566bf119cf248c6a999b (patch) | |
tree | 789ca79fa342cf741513cb21e6d4d3728345a511 /src/gui/text/qstatictext_p.h | |
parent | 7fbffd29e5904151a3a249004031d0502a16f4fc (diff) | |
download | Qt-bf919e06127962836a6b566bf119cf248c6a999b.zip Qt-bf919e06127962836a6b566bf119cf248c6a999b.tar.gz Qt-bf919e06127962836a6b566bf119cf248c6a999b.tar.bz2 |
Implement drawStaticTextItem() in OpenGL paint engines
The OpenGL and OpenGL2 engines now have support for static text, as
well as the QEmulationPaintEngine.
Also contains an optimization: Instead of passing both the position and
glyph positions to drawStaticTextItem() we add the position into the
glyph position and update it only when it changes. Otherwise we would
have to do this work in all engines for every call. This means we have
to cache the position in QStaticTextPrivate as well, but it seems like
a small price to pay, since it's a per-text overhead and only 16 bytes.
Diffstat (limited to 'src/gui/text/qstatictext_p.h')
-rw-r--r-- | src/gui/text/qstatictext_p.h | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/gui/text/qstatictext_p.h b/src/gui/text/qstatictext_p.h index 2cb1262..4756773 100644 --- a/src/gui/text/qstatictext_p.h +++ b/src/gui/text/qstatictext_p.h @@ -57,7 +57,7 @@ QT_BEGIN_NAMESPACE -class Q_AUTOTEST_EXPORT QStaticTextItem +class Q_GUI_EXPORT QStaticTextItem { public: QStaticTextItem() : chars(0), numChars(0), fontEngine(0) {} @@ -91,6 +91,7 @@ public: QString text; // 4 bytes per text QFont font; // 8 bytes per text QSizeF size; // 16 bytes per text + QPointF position; // 16 bytes per text QTransform matrix; // 80 bytes per text QStaticTextItem *items; // 4 bytes per text @@ -98,7 +99,7 @@ public: glyph_t *glyphPool; // 4 bytes per text QFixedPoint *positionPool; // 4 bytes per text // ================ - // 128 bytes per text + // 144 bytes per text static QStaticTextPrivate *get(const QStaticText *q); }; |