From 9876f7ac8bd3679a9ed0e617aaadad032403a88f Mon Sep 17 00:00:00 2001 From: Liang Qi Date: Wed, 13 Jan 2016 13:54:15 +0100 Subject: QQuickTextEdit: added clear() method Task-number: QTBUG-50428 Change-Id: Id618616f8d8d50c2a2eba79a2bf6969662e727b8 Reviewed-by: J-P Nurmi --- src/quick/items/qquicktextedit.cpp | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) (limited to 'src/quick/items/qquicktextedit.cpp') diff --git a/src/quick/items/qquicktextedit.cpp b/src/quick/items/qquicktextedit.cpp index 0535bc4e6b..75eab3f2fe 100644 --- a/src/quick/items/qquicktextedit.cpp +++ b/src/quick/items/qquicktextedit.cpp @@ -328,6 +328,8 @@ QString QQuickTextEdit::text() const insert() and remove() methods provide more fine-grained control and remarkably better performance for modifying especially large rich text content. + + \sa clear() */ void QQuickTextEdit::setText(const QString &text) { @@ -2197,6 +2199,13 @@ void QQuickTextEditPrivate::init() q->updateSize(); } +void QQuickTextEditPrivate::resetInputMethod() +{ + Q_Q(QQuickTextEdit); + if (!q->isReadOnly() && q->hasActiveFocus() && qGuiApp) + QGuiApplication::inputMethod()->reset(); +} + void QQuickTextEdit::q_textChanged() { Q_D(QQuickTextEdit); @@ -2952,4 +2961,22 @@ void QQuickTextEdit::resetBottomPadding() d->setBottomPadding(0, true); } +/*! + \qmlmethod QtQuick::TextEdit::clear() + \since 5.7 + + Clears the contents of the text edit + and resets partial text input from an input method. + + Use this method instead of setting the \l text property to an empty string. + + \sa QInputMethod::reset() +*/ +void QQuickTextEdit::clear() +{ + Q_D(QQuickTextEdit); + d->resetInputMethod(); + d->control->clear(); +} + QT_END_NAMESPACE -- cgit v1.2.3