From 1a9ebfabcde66e6f761e08563441acbebc47e249 Mon Sep 17 00:00:00 2001 From: Alexander Volkov Date: Mon, 24 Sep 2018 17:14:51 +0300 Subject: 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 --- src/widgets/widgets/qtextedit.cpp | 8 ++++++++ src/widgets/widgets/qwidgettextcontrol.cpp | 10 ---------- 2 files changed, 8 insertions(+), 10 deletions(-) (limited to 'src') 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(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 #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(parent())) { - QUrl resolvedName = textEdit->d_func()->resolveUrl(name); - return textEdit->loadResource(type, resolvedName); - } -#endif return QVariant(); } -- cgit v1.2.3