diff options
author | Knud Dollereder <knud.dollereder@qt.io> | 2022-02-03 14:51:57 +0100 |
---|---|---|
committer | Knud Dollereder <knud.dollereder@qt.io> | 2022-02-08 10:05:49 +0000 |
commit | 381bfd623c4068732c889729f76e8d554af20e8c (patch) | |
tree | 19351a81edb86a4d370d31612418c0cc282ac203 /src | |
parent | 68fd73713b8cbce3894615e8c2a8999a0b4e529b (diff) | |
download | qt-creator-381bfd623c4068732c889729f76e8d554af20e8c.tar.gz |
Remove ToolBarWidgetFactoryInterface from WidgetInfo
Since it is sometimes created with new but never used,
it leaked memory.
Change-Id: I5adfb71f9c773be37c1cefc619236bad9f34aad1
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Diffstat (limited to 'src')
15 files changed, 7 insertions, 71 deletions
diff --git a/src/plugins/qmldesigner/components/connectioneditor/connectionview.cpp b/src/plugins/qmldesigner/components/connectioneditor/connectionview.cpp index 6737d66d18..9b5716da11 100644 --- a/src/plugins/qmldesigner/components/connectioneditor/connectionview.cpp +++ b/src/plugins/qmldesigner/components/connectioneditor/connectionview.cpp @@ -207,7 +207,6 @@ void ConnectionView::importsChanged(const QList<Import> & /*addedImports*/, cons WidgetInfo ConnectionView::widgetInfo() { return createWidgetInfo(m_connectionViewWidget.data(), - new WidgetInfo::ToolBarWidgetDefaultFactory<ConnectionViewWidget>(connectionViewWidget()), QLatin1String("ConnectionView"), WidgetInfo::LeftPane, 0, diff --git a/src/plugins/qmldesigner/components/curveeditor/curveeditorview.cpp b/src/plugins/qmldesigner/components/curveeditor/curveeditorview.cpp index bddb6536c7..a6c228ccbc 100644 --- a/src/plugins/qmldesigner/components/curveeditor/curveeditorview.cpp +++ b/src/plugins/qmldesigner/components/curveeditor/curveeditorview.cpp @@ -70,7 +70,7 @@ bool CurveEditorView::hasWidget() const WidgetInfo CurveEditorView::widgetInfo() { return createWidgetInfo( - m_editor, nullptr, "CurveEditorId", WidgetInfo::BottomPane, 0, tr("CurveEditor")); + m_editor, "CurveEditorId", WidgetInfo::BottomPane, 0, tr("CurveEditor")); } void CurveEditorView::modelAttached(Model *model) diff --git a/src/plugins/qmldesigner/components/debugview/debugview.cpp b/src/plugins/qmldesigner/components/debugview/debugview.cpp index 62626b89cd..cb42996b12 100644 --- a/src/plugins/qmldesigner/components/debugview/debugview.cpp +++ b/src/plugins/qmldesigner/components/debugview/debugview.cpp @@ -355,7 +355,7 @@ void DebugView::rewriterEndTransaction() WidgetInfo DebugView::widgetInfo() { - return createWidgetInfo(m_debugViewWidget.data(), nullptr, QStringLiteral("DebugView"), WidgetInfo::LeftPane, 0, tr("Debug View")); + return createWidgetInfo(m_debugViewWidget.data(), QStringLiteral("DebugView"), WidgetInfo::LeftPane, 0, tr("Debug View")); } bool DebugView::hasWidget() const diff --git a/src/plugins/qmldesigner/components/edit3d/edit3dview.cpp b/src/plugins/qmldesigner/components/edit3d/edit3dview.cpp index 8e6d75efc3..3981be8280 100644 --- a/src/plugins/qmldesigner/components/edit3d/edit3dview.cpp +++ b/src/plugins/qmldesigner/components/edit3d/edit3dview.cpp @@ -83,7 +83,7 @@ WidgetInfo Edit3DView::widgetInfo() if (!m_edit3DWidget) createEdit3DWidget(); - return createWidgetInfo(m_edit3DWidget.data(), nullptr, "Editor3D", WidgetInfo::CentralPane, 0, tr("3D Editor"), DesignerWidgetFlags::IgnoreErrors); + return createWidgetInfo(m_edit3DWidget.data(), "Editor3D", WidgetInfo::CentralPane, 0, tr("3D Editor"), DesignerWidgetFlags::IgnoreErrors); } Edit3DWidget *Edit3DView::edit3DWidget() const diff --git a/src/plugins/qmldesigner/components/formeditor/formeditorview.cpp b/src/plugins/qmldesigner/components/formeditor/formeditorview.cpp index 22fa6b8a5a..99e2013e51 100644 --- a/src/plugins/qmldesigner/components/formeditor/formeditorview.cpp +++ b/src/plugins/qmldesigner/components/formeditor/formeditorview.cpp @@ -361,7 +361,7 @@ WidgetInfo FormEditorView::widgetInfo() if (!m_formEditorWidget) createFormEditorWidget(); - return createWidgetInfo(m_formEditorWidget.data(), nullptr, "FormEditor", WidgetInfo::CentralPane, 0, tr("Form Editor"), DesignerWidgetFlags::IgnoreErrors); + return createWidgetInfo(m_formEditorWidget.data(), "FormEditor", WidgetInfo::CentralPane, 0, tr("Form Editor"), DesignerWidgetFlags::IgnoreErrors); } FormEditorWidget *FormEditorView::formEditorWidget() diff --git a/src/plugins/qmldesigner/components/itemlibrary/itemlibraryview.cpp b/src/plugins/qmldesigner/components/itemlibrary/itemlibraryview.cpp index 151be411ad..e8cdb4dcd0 100644 --- a/src/plugins/qmldesigner/components/itemlibrary/itemlibraryview.cpp +++ b/src/plugins/qmldesigner/components/itemlibrary/itemlibraryview.cpp @@ -104,7 +104,6 @@ WidgetInfo ItemLibraryView::widgetInfo() } return createWidgetInfo(m_widget.data(), - new WidgetInfo::ToolBarWidgetDefaultFactory<ItemLibraryWidget>(m_widget.data()), QStringLiteral("Library"), WidgetInfo::LeftPane, 0, diff --git a/src/plugins/qmldesigner/components/navigator/navigatorview.cpp b/src/plugins/qmldesigner/components/navigator/navigatorview.cpp index b1b12da2e0..606089f631 100644 --- a/src/plugins/qmldesigner/components/navigator/navigatorview.cpp +++ b/src/plugins/qmldesigner/components/navigator/navigatorview.cpp @@ -132,7 +132,6 @@ WidgetInfo NavigatorView::widgetInfo() setupWidget(); return createWidgetInfo(m_widget.data(), - new WidgetInfo::ToolBarWidgetDefaultFactory<NavigatorWidget>(m_widget.data()), QStringLiteral("Navigator"), WidgetInfo::LeftPane, 0, diff --git a/src/plugins/qmldesigner/components/propertyeditor/propertyeditorview.cpp b/src/plugins/qmldesigner/components/propertyeditor/propertyeditorview.cpp index 3bdfb903c8..5ea8e9ec65 100644 --- a/src/plugins/qmldesigner/components/propertyeditor/propertyeditorview.cpp +++ b/src/plugins/qmldesigner/components/propertyeditor/propertyeditorview.cpp @@ -795,7 +795,7 @@ bool PropertyEditorView::hasWidget() const WidgetInfo PropertyEditorView::widgetInfo() { - return createWidgetInfo(m_stackedWidget, nullptr, QStringLiteral("Properties"), WidgetInfo::RightPane, 0, tr("Properties")); + return createWidgetInfo(m_stackedWidget, QStringLiteral("Properties"), WidgetInfo::RightPane, 0, tr("Properties")); } void PropertyEditorView::currentStateChanged(const ModelNode &node) diff --git a/src/plugins/qmldesigner/components/stateseditor/stateseditorview.cpp b/src/plugins/qmldesigner/components/stateseditor/stateseditorview.cpp index cf1f377141..001d356516 100644 --- a/src/plugins/qmldesigner/components/stateseditor/stateseditorview.cpp +++ b/src/plugins/qmldesigner/components/stateseditor/stateseditorview.cpp @@ -77,7 +77,7 @@ WidgetInfo StatesEditorView::widgetInfo() if (!m_statesEditorWidget) m_statesEditorWidget = new StatesEditorWidget(this, m_statesEditorModel.data()); - return createWidgetInfo(m_statesEditorWidget.data(), nullptr, QLatin1String("StatesEditor"), WidgetInfo::BottomPane, 0, tr("States")); + return createWidgetInfo(m_statesEditorWidget.data(), QLatin1String("StatesEditor"), WidgetInfo::BottomPane, 0, tr("States")); } void StatesEditorView::rootNodeTypeChanged(const QString &/*type*/, int /*majorVersion*/, int /*minorVersion*/) diff --git a/src/plugins/qmldesigner/components/texteditor/texteditorview.cpp b/src/plugins/qmldesigner/components/texteditor/texteditorview.cpp index e3a870f980..30fcb8981c 100644 --- a/src/plugins/qmldesigner/components/texteditor/texteditorview.cpp +++ b/src/plugins/qmldesigner/components/texteditor/texteditorview.cpp @@ -149,7 +149,7 @@ void TextEditorView::nodeReparented(const ModelNode &/*node*/, const NodeAbstrac WidgetInfo TextEditorView::widgetInfo() { - return createWidgetInfo(m_widget, nullptr, "TextEditor", WidgetInfo::CentralPane, 0, tr("Text Editor"), DesignerWidgetFlags::IgnoreErrors); + return createWidgetInfo(m_widget, "TextEditor", WidgetInfo::CentralPane, 0, tr("Text Editor"), DesignerWidgetFlags::IgnoreErrors); } void TextEditorView::contextHelp(const Core::IContext::HelpCallback &callback) const diff --git a/src/plugins/qmldesigner/components/timelineeditor/timelineview.cpp b/src/plugins/qmldesigner/components/timelineeditor/timelineview.cpp index a8b20f8380..8c53866c1a 100644 --- a/src/plugins/qmldesigner/components/timelineeditor/timelineview.cpp +++ b/src/plugins/qmldesigner/components/timelineeditor/timelineview.cpp @@ -669,7 +669,6 @@ TimelineWidget *TimelineView::createWidget() WidgetInfo TimelineView::widgetInfo() { return createWidgetInfo(createWidget(), - nullptr, QStringLiteral("Timelines"), WidgetInfo::BottomPane, 0, diff --git a/src/plugins/qmldesigner/components/transitioneditor/transitioneditorview.cpp b/src/plugins/qmldesigner/components/transitioneditor/transitioneditorview.cpp index ccf84152b5..09eb262094 100644 --- a/src/plugins/qmldesigner/components/transitioneditor/transitioneditorview.cpp +++ b/src/plugins/qmldesigner/components/transitioneditor/transitioneditorview.cpp @@ -323,7 +323,6 @@ TransitionEditorWidget *TransitionEditorView::createWidget() WidgetInfo TransitionEditorView::widgetInfo() { return createWidgetInfo(createWidget(), - nullptr, "TransitionEditor", WidgetInfo::BottomPane, 0, diff --git a/src/plugins/qmldesigner/designercore/include/abstractview.h b/src/plugins/qmldesigner/designercore/include/abstractview.h index 3908844dea..89ccb2845f 100644 --- a/src/plugins/qmldesigner/designercore/include/abstractview.h +++ b/src/plugins/qmldesigner/designercore/include/abstractview.h @@ -70,30 +70,6 @@ enum DesignerWidgetFlags { class WidgetInfo { public: - class ToolBarWidgetFactoryInterface { - public: - ToolBarWidgetFactoryInterface() = default; - - virtual QList<QToolButton*> createToolBarWidgets() = 0; - - virtual ~ToolBarWidgetFactoryInterface() = default; - }; - - template <class T> - class ToolBarWidgetDefaultFactory : public ToolBarWidgetFactoryInterface { - public: - ToolBarWidgetDefaultFactory(T *t ) : m_t(t) - {} - - QList<QToolButton*> createToolBarWidgets() override - { - return m_t->createToolBarWidgets(); - } - - private: - T * m_t; - }; - enum PlacementHint { NoPane, LeftPane, @@ -108,7 +84,6 @@ public: QWidget *widget = nullptr; int placementPriority; PlacementHint placementHint; - ToolBarWidgetFactoryInterface *toolBarWidgetFactory = nullptr; DesignerWidgetFlags widgetFlags = DesignerWidgetFlags::DisableOnError; }; @@ -311,7 +286,6 @@ protected: void setModel(Model * model); void removeModel(); static WidgetInfo createWidgetInfo(QWidget *widget = nullptr, - WidgetInfo::ToolBarWidgetFactoryInterface *toolBarWidgetFactory = nullptr, const QString &uniqueId = QString(), WidgetInfo::PlacementHint placementHint = WidgetInfo::NoPane, int placementPriority = 0, diff --git a/src/plugins/qmldesigner/designercore/model/abstractview.cpp b/src/plugins/qmldesigner/designercore/model/abstractview.cpp index 6ef3c6d5d6..27f3298125 100644 --- a/src/plugins/qmldesigner/designercore/model/abstractview.cpp +++ b/src/plugins/qmldesigner/designercore/model/abstractview.cpp @@ -129,7 +129,6 @@ void AbstractView::removeModel() } WidgetInfo AbstractView::createWidgetInfo(QWidget *widget, - WidgetInfo::ToolBarWidgetFactoryInterface *toolBarWidgetFactory, const QString &uniqueId, WidgetInfo::PlacementHint placementHint, int placementPriority, @@ -139,7 +138,6 @@ WidgetInfo AbstractView::createWidgetInfo(QWidget *widget, WidgetInfo widgetInfo; widgetInfo.widget = widget; - widgetInfo.toolBarWidgetFactory = toolBarWidgetFactory; widgetInfo.uniqueId = uniqueId; widgetInfo.placementHint = placementHint; widgetInfo.placementPriority = placementPriority; diff --git a/src/plugins/qmldesigner/designmodewidget.cpp b/src/plugins/qmldesigner/designmodewidget.cpp index 584933494b..25de59b3c0 100644 --- a/src/plugins/qmldesigner/designmodewidget.cpp +++ b/src/plugins/qmldesigner/designmodewidget.cpp @@ -110,37 +110,6 @@ QList<QToolButton *> ItemLibrarySideBarItem::createToolBarWidgets() return qobject_cast<ItemLibraryWidget*>(widget())->createToolBarWidgets(); } -class DesignerSideBarItem : public Core::SideBarItem -{ -public: - explicit DesignerSideBarItem(QWidget *widget, WidgetInfo::ToolBarWidgetFactoryInterface *createToolBarWidgets, const QString &id); - ~DesignerSideBarItem() override; - - QList<QToolButton *> createToolBarWidgets() override; - -private: - WidgetInfo::ToolBarWidgetFactoryInterface *m_toolBarWidgetFactory; - -}; - -DesignerSideBarItem::DesignerSideBarItem(QWidget *widget, WidgetInfo::ToolBarWidgetFactoryInterface *toolBarWidgetFactory, const QString &id) - : Core::SideBarItem(widget, id) , m_toolBarWidgetFactory(toolBarWidgetFactory) -{ -} - -DesignerSideBarItem::~DesignerSideBarItem() -{ - delete m_toolBarWidgetFactory; -} - -QList<QToolButton *> DesignerSideBarItem::createToolBarWidgets() -{ - if (m_toolBarWidgetFactory) - return m_toolBarWidgetFactory->createToolBarWidgets(); - - return QList<QToolButton *>(); -} - // ---------- DesignModeWidget DesignModeWidget::DesignModeWidget() : m_toolBar(new Core::EditorToolBar(this)) |