diff options
author | Liang Qi <liang.qi@theqtcompany.com> | 2015-12-30 10:44:10 +0100 |
---|---|---|
committer | Liang Qi <liang.qi@theqtcompany.com> | 2016-01-13 18:09:58 +0000 |
commit | 24d06e7ab56bd8f0262d4135207adee20befc7c1 (patch) | |
tree | 1c5d2e8a43cc6d9dba68a0d63b0743a0e80f8ee6 /src/quick/items/qquicktextcontrol.cpp | |
parent | 1a4346d11224243b39da991585738d74fd03a98f (diff) |
QQuickTextEdit: added preeditText property
Task-number: QTBUG-49503
Change-Id: I3390e72893e4125e00e8e0835a8d2fae11ea276f
Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com>
Diffstat (limited to 'src/quick/items/qquicktextcontrol.cpp')
-rw-r--r-- | src/quick/items/qquicktextcontrol.cpp | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/src/quick/items/qquicktextcontrol.cpp b/src/quick/items/qquicktextcontrol.cpp index d0678b4278..d3e858c67f 100644 --- a/src/quick/items/qquicktextcontrol.cpp +++ b/src/quick/items/qquicktextcontrol.cpp @@ -1321,8 +1321,10 @@ void QQuickTextControlPrivate::inputMethodEvent(QInputMethodEvent *e) QTextBlock block = cursor.block(); QTextLayout *layout = block.layout(); - if (isGettingInput) + if (isGettingInput) { layout->setPreeditArea(cursor.position() - block.position(), e->preeditString()); + emit q->preeditTextChanged(); + } QVector<QTextLayout::FormatRange> overrides; const int oldPreeditCursor = preeditCursor; preeditCursor = e->preeditString().length(); @@ -1756,6 +1758,19 @@ QRectF QQuickTextControl::blockBoundingRect(const QTextBlock &block) const return d->doc->documentLayout()->blockBoundingRect(block); } +QString QQuickTextControl::preeditText() const +{ +#ifndef QT_NO_IM + Q_D(const QQuickTextControl); + QTextLayout *layout = d->cursor.block().layout(); + if (!layout) + return QString(); + + return layout->preeditAreaText(); +#else + return QString(); +#endif +} QStringList QQuickTextEditMimeData::formats() const |