summaryrefslogtreecommitdiffstats
path: root/src/gui/text/qfontengine_p.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/gui/text/qfontengine_p.h')
-rw-r--r--src/gui/text/qfontengine_p.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/gui/text/qfontengine_p.h b/src/gui/text/qfontengine_p.h
index 4741de3000..bcf763d5d9 100644
--- a/src/gui/text/qfontengine_p.h
+++ b/src/gui/text/qfontengine_p.h
@@ -225,6 +225,18 @@ 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);
+ }
virtual Type type() const = 0;