summaryrefslogtreecommitdiffstats
path: root/src/gui/text/qfontengine_p.h
diff options
context:
space:
mode:
authorKonstantin Ritt <ritt.ks@gmail.com>2014-03-03 06:37:29 +0200
committerThe Qt Project <gerrit-noreply@qt-project.org>2014-03-03 11:11:27 +0100
commit2b15c9c256e5be597cfc3e8165d9b1a9047cfa7c (patch)
tree450a3727337fac5f54184a43909d4976dd8547d6 /src/gui/text/qfontengine_p.h
parentaf74201edbb9dc344419ed3f8ebc35f8e8f05617 (diff)
Introduce a generic QFontEngine::canRender() implementation
...which uses the recently introduced glyphIndex() method; get rid of re-implementations that did almost the same. Change-Id: I6d32d2cee6a31f57de6aee05ed8d120d4a1f4e9c Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Diffstat (limited to 'src/gui/text/qfontengine_p.h')
-rw-r--r--src/gui/text/qfontengine_p.h19
1 files changed, 4 insertions, 15 deletions
diff --git a/src/gui/text/qfontengine_p.h b/src/gui/text/qfontengine_p.h
index f497085ce2..f5e4ae98fa 100644
--- a/src/gui/text/qfontengine_p.h
+++ b/src/gui/text/qfontengine_p.h
@@ -227,19 +227,8 @@ public:
virtual const char *name() const = 0;
- virtual bool canRender(const QChar *string, int len) = 0;
- inline bool canRender(uint ucs4) {
- QChar utf16[2];
- int utf16len = 1;
- if (QChar::requiresSurrogates(ucs4)) {
- utf16[0] = QChar::highSurrogate(ucs4);
- utf16[1] = QChar::lowSurrogate(ucs4);
- ++utf16len;
- } else {
- utf16[0] = QChar(ucs4);
- }
- return canRender(utf16, utf16len);
- }
+ inline bool canRender(uint ucs4) const { return glyphIndex(ucs4) != 0; }
+ virtual bool canRender(const QChar *str, int len) const;
virtual bool supportsTransformation(const QTransform &transform) const;
@@ -374,7 +363,7 @@ public:
virtual const char *name() const;
- virtual bool canRender(const QChar *string, int len);
+ virtual bool canRender(const QChar *string, int len) const;
virtual Type type() const;
inline int size() const { return _size; }
@@ -421,7 +410,7 @@ public:
virtual inline Type type() const
{ return QFontEngine::Multi; }
- virtual bool canRender(const QChar *string, int len);
+ virtual bool canRender(const QChar *string, int len) const;
inline virtual const char *name() const
{ return "Multi"; }