diff options
author | Alexander Volkov <a.volkov@rusbitech.ru> | 2018-09-24 17:14:51 +0300 |
---|---|---|
committer | Alexander Volkov <a.volkov@rusbitech.ru> | 2018-10-09 22:03:54 +0000 |
commit | 1a9ebfabcde66e6f761e08563441acbebc47e249 (patch) | |
tree | c22b9019cc8d48e29c6755bb62dbf206f597785e /src | |
parent | 941101bd5ffcf5e176cf4123b7d673cab4f76407 (diff) |
QWidgetTextControl: Get rid of dependency on QTextEditPrivate
QWidgetTextControl is a base class for controls of text widgets
and widget-specific code should be used in derived classes, so
override loadResource() in QTextEditControl.
Change-Id: I6d829ead0837419530094d19e0ca53a964413e92
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
Diffstat (limited to 'src')
-rw-r--r-- | src/widgets/widgets/qtextedit.cpp | 8 | ||||
-rw-r--r-- | src/widgets/widgets/qwidgettextcontrol.cpp | 10 |
2 files changed, 8 insertions, 10 deletions
diff --git a/src/widgets/widgets/qtextedit.cpp b/src/widgets/widgets/qtextedit.cpp index 038d76a0fe..920133d493 100644 --- a/src/widgets/widgets/qtextedit.cpp +++ b/src/widgets/widgets/qtextedit.cpp @@ -105,6 +105,14 @@ public: else ed->insertFromMimeData(source); } + QVariant loadResource(int type, const QUrl &name) override { + auto *ed = qobject_cast<QTextEdit *>(parent()); + if (!ed) + return QWidgetTextControl::loadResource(type, name); + + QUrl resolvedName = ed->d_func()->resolveUrl(name); + return ed->loadResource(type, resolvedName); + } }; QTextEditPrivate::QTextEditPrivate() diff --git a/src/widgets/widgets/qwidgettextcontrol.cpp b/src/widgets/widgets/qwidgettextcontrol.cpp index 5f17d19872..711c4bfd2a 100644 --- a/src/widgets/widgets/qwidgettextcontrol.cpp +++ b/src/widgets/widgets/qwidgettextcontrol.cpp @@ -57,9 +57,6 @@ #include <qtimer.h> #include "private/qtextdocumentlayout_p.h" #include "private/qabstracttextdocumentlayout_p.h" -#if QT_CONFIG(textedit) -#include "private/qtextedit_p.h" -#endif #include "qtextdocument.h" #include "private/qtextdocument_p.h" #include "qtextlist.h" @@ -1365,15 +1362,8 @@ process: QVariant QWidgetTextControl::loadResource(int type, const QUrl &name) { -#if !QT_CONFIG(textedit) Q_UNUSED(type); Q_UNUSED(name); -#else - if (QTextEdit *textEdit = qobject_cast<QTextEdit *>(parent())) { - QUrl resolvedName = textEdit->d_func()->resolveUrl(name); - return textEdit->loadResource(type, resolvedName); - } -#endif return QVariant(); } |