summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEike Ziller <eike.ziller@qt.io>2020-05-26 14:48:38 +0200
committerEike Ziller <eike.ziller@qt.io>2020-05-27 08:42:00 +0000
commite5bb7d1ffebbba90aa2c1098c1ff67694dd0fdaf (patch)
tree36e0de1bc7374a9fa77bec011845783f5e57036d
parent7b5481f75c968ba1eb74240609b0d5d687a30e68 (diff)
downloadqt-creator-e5bb7d1ffebbba90aa2c1098c1ff67694dd0fdaf.tar.gz
Remove unnecessary removeContextObject calls
They are removed on deletion now. Change-Id: I08461ea4938e24ab450df013a0f8f820032381da Reviewed-by: hjk <hjk@qt.io>
-rw-r--r--src/plugins/android/androidmanifesteditorwidget.cpp6
-rw-r--r--src/plugins/android/androidmanifesteditorwidget.h1
-rw-r--r--src/plugins/bookmarks/bookmarkmanager.cpp5
-rw-r--r--src/plugins/bookmarks/bookmarkmanager.h1
-rw-r--r--src/plugins/coreplugin/editormanager/editorarea.cpp1
-rw-r--r--src/plugins/coreplugin/outputpanemanager.cpp3
-rw-r--r--src/plugins/coreplugin/outputwindow.cpp15
-rw-r--r--src/plugins/coreplugin/statusbarmanager.cpp11
-rw-r--r--src/plugins/coreplugin/windowsupport.cpp1
-rw-r--r--src/plugins/designer/formeditorw.cpp6
-rw-r--r--src/plugins/diffeditor/diffeditor.cpp17
-rw-r--r--src/plugins/diffeditor/sidebysidediffeditorwidget.cpp22
-rw-r--r--src/plugins/diffeditor/sidebysidediffeditorwidget.h3
-rw-r--r--src/plugins/diffeditor/unifieddiffeditorwidget.cpp13
-rw-r--r--src/plugins/diffeditor/unifieddiffeditorwidget.h2
-rw-r--r--src/plugins/help/helpwidget.cpp1
-rw-r--r--src/plugins/projectexplorer/foldernavigationwidget.cpp13
-rw-r--r--src/plugins/projectexplorer/foldernavigationwidget.h2
-rw-r--r--src/plugins/projectexplorer/projecttreewidget.cpp15
-rw-r--r--src/plugins/projectexplorer/taskwindow.cpp1
-rw-r--r--src/plugins/qmldesigner/components/bindingeditor/bindingeditorwidget.cpp3
-rw-r--r--src/plugins/qmldesigner/qmldesignerplugin.cpp22
-rw-r--r--src/plugins/scxmleditor/scxmleditordata.cpp7
-rw-r--r--src/plugins/scxmleditor/scxmleditordata.h1
24 files changed, 46 insertions, 126 deletions
diff --git a/src/plugins/android/androidmanifesteditorwidget.cpp b/src/plugins/android/androidmanifesteditorwidget.cpp
index 3a7296b508..51827af221 100644
--- a/src/plugins/android/androidmanifesteditorwidget.cpp
+++ b/src/plugins/android/androidmanifesteditorwidget.cpp
@@ -1560,9 +1560,3 @@ AndroidManifestTextEditorWidget::AndroidManifestTextEditorWidget(AndroidManifest
m_context->setContext(Core::Context(Constants::ANDROID_MANIFEST_EDITOR_CONTEXT));
Core::ICore::addContextObject(m_context);
}
-
-AndroidManifestTextEditorWidget::~AndroidManifestTextEditorWidget()
-{
- Core::ICore::removeContextObject(m_context);
-}
-
diff --git a/src/plugins/android/androidmanifesteditorwidget.h b/src/plugins/android/androidmanifesteditorwidget.h
index 6d49cf7f42..1e8808cfc7 100644
--- a/src/plugins/android/androidmanifesteditorwidget.h
+++ b/src/plugins/android/androidmanifesteditorwidget.h
@@ -79,7 +79,6 @@ class AndroidManifestTextEditorWidget : public TextEditor::TextEditorWidget
{
public:
explicit AndroidManifestTextEditorWidget(AndroidManifestEditorWidget *parent);
- ~AndroidManifestTextEditorWidget() override;
private:
Core::IContext *m_context;
diff --git a/src/plugins/bookmarks/bookmarkmanager.cpp b/src/plugins/bookmarks/bookmarkmanager.cpp
index 7c1854ff29..2eea0235ea 100644
--- a/src/plugins/bookmarks/bookmarkmanager.cpp
+++ b/src/plugins/bookmarks/bookmarkmanager.cpp
@@ -211,11 +211,6 @@ BookmarkView::BookmarkView(BookmarkManager *manager) :
connect(this, &QAbstractItemView::activated, this, &BookmarkView::gotoBookmark);
}
-BookmarkView::~BookmarkView()
-{
- ICore::removeContextObject(m_bookmarkContext);
-}
-
QList<QToolButton *> BookmarkView::createToolBarWidgets()
{
Command *prevCmd = ActionManager::command(Constants::BOOKMARKS_PREV_ACTION);
diff --git a/src/plugins/bookmarks/bookmarkmanager.h b/src/plugins/bookmarks/bookmarkmanager.h
index 64d01350d6..2e0e573c49 100644
--- a/src/plugins/bookmarks/bookmarkmanager.h
+++ b/src/plugins/bookmarks/bookmarkmanager.h
@@ -128,7 +128,6 @@ class BookmarkView final : public Utils::ListView
public:
explicit BookmarkView(BookmarkManager *manager);
- ~BookmarkView() final;
QList<QToolButton *> createToolBarWidgets();
diff --git a/src/plugins/coreplugin/editormanager/editorarea.cpp b/src/plugins/coreplugin/editormanager/editorarea.cpp
index 3140c258f5..07caadb6d0 100644
--- a/src/plugins/coreplugin/editormanager/editorarea.cpp
+++ b/src/plugins/coreplugin/editormanager/editorarea.cpp
@@ -61,7 +61,6 @@ EditorArea::~EditorArea()
disconnect(qApp, &QApplication::focusChanged,
this, &EditorArea::focusChanged);
- ICore::removeContextObject(m_context);
delete m_context;
}
diff --git a/src/plugins/coreplugin/outputpanemanager.cpp b/src/plugins/coreplugin/outputpanemanager.cpp
index c0d96ef961..2bba196c3e 100644
--- a/src/plugins/coreplugin/outputpanemanager.cpp
+++ b/src/plugins/coreplugin/outputpanemanager.cpp
@@ -109,9 +109,6 @@ IOutputPane::IOutputPane(QObject *parent)
IOutputPane::~IOutputPane()
{
- if (m_context)
- ICore::removeContextObject(m_context);
-
const int i = Utils::indexOf(g_outputPanes, Utils::equal(&OutputPaneData::pane, this));
QTC_ASSERT(i >= 0, return);
delete g_outputPanes.at(i).button;
diff --git a/src/plugins/coreplugin/outputwindow.cpp b/src/plugins/coreplugin/outputwindow.cpp
index 344d117e4f..6b08863ea6 100644
--- a/src/plugins/coreplugin/outputwindow.cpp
+++ b/src/plugins/coreplugin/outputwindow.cpp
@@ -66,13 +66,6 @@ public:
{
}
- ~OutputWindowPrivate()
- {
- ICore::removeContextObject(outputWindowContext);
- delete outputWindowContext;
- }
-
- IContext *outputWindowContext = nullptr;
QString settingsKey;
OutputFormatter formatter;
QList<QPair<QString, OutputFormat>> queuedOutput;
@@ -116,10 +109,10 @@ OutputWindow::OutputWindow(Context context, const QString &settingsKey, QWidget
d->settingsKey = settingsKey;
- d->outputWindowContext = new IContext;
- d->outputWindowContext->setContext(context);
- d->outputWindowContext->setWidget(this);
- ICore::addContextObject(d->outputWindowContext);
+ auto outputWindowContext = new IContext(this);
+ outputWindowContext->setContext(context);
+ outputWindowContext->setWidget(this);
+ ICore::addContextObject(outputWindowContext);
auto undoAction = new QAction(this);
auto redoAction = new QAction(this);
diff --git a/src/plugins/coreplugin/statusbarmanager.cpp b/src/plugins/coreplugin/statusbarmanager.cpp
index bd9d86d5bb..5d9116379f 100644
--- a/src/plugins/coreplugin/statusbarmanager.cpp
+++ b/src/plugins/coreplugin/statusbarmanager.cpp
@@ -98,9 +98,9 @@ static void createStatusBarManager()
bar->insertPermanentWidget(1, rightCornerWidget);
m_statusBarWidgets.append(rightCornerWidget);
- auto context = new StatusBarContext(bar);
- context->setWidget(bar);
- ICore::addContextObject(context);
+ auto statusContext = new StatusBarContext(bar);
+ statusContext->setWidget(bar);
+ ICore::addContextObject(statusContext);
QObject::connect(ICore::instance(), &ICore::saveSettingsRequested, [] {
QSettings *s = ICore::settings();
@@ -109,7 +109,8 @@ static void createStatusBarManager()
s->endGroup();
});
- QObject::connect(ICore::instance(), &ICore::coreAboutToClose, [] {
+ QObject::connect(ICore::instance(), &ICore::coreAboutToClose, [statusContext] {
+ delete statusContext;
// This is the catch-all on rampdown. Individual items may
// have been removed earlier by destroyStatusBarWidget().
for (const QPointer<IContext> &context : m_contexts) {
@@ -144,8 +145,8 @@ void StatusBarManager::destroyStatusBarWidget(QWidget *widget)
QTC_ASSERT(widget, return);
for (const QPointer<IContext> &context : m_contexts) {
if (context->widget() == widget) {
- ICore::removeContextObject(context);
m_contexts.removeAll(context);
+ delete context;
break;
}
}
diff --git a/src/plugins/coreplugin/windowsupport.cpp b/src/plugins/coreplugin/windowsupport.cpp
index 26117ba12f..195d172dc4 100644
--- a/src/plugins/coreplugin/windowsupport.cpp
+++ b/src/plugins/coreplugin/windowsupport.cpp
@@ -91,7 +91,6 @@ WindowSupport::~WindowSupport()
ActionManager::unregisterAction(m_closeAction, Constants::CLOSE_WINDOW);
}
ActionManager::unregisterAction(m_toggleFullScreenAction, Constants::TOGGLE_FULLSCREEN);
- ICore::removeContextObject(m_contextObject);
m_windowList->removeWindow(m_window);
}
}
diff --git a/src/plugins/designer/formeditorw.cpp b/src/plugins/designer/formeditorw.cpp
index ad5cb8c97b..2e673033ae 100644
--- a/src/plugins/designer/formeditorw.cpp
+++ b/src/plugins/designer/formeditorw.cpp
@@ -211,7 +211,6 @@ public:
QMenu *m_previewInStyleMenu = nullptr;
QAction *m_actionAboutPlugins = nullptr;
- DesignerContext *m_context = nullptr;
Context m_contexts;
QList<Id> m_toolActionIds;
@@ -275,8 +274,6 @@ FormEditorData::FormEditorData() :
FormEditorData::~FormEditorData()
{
- if (m_context)
- ICore::removeContextObject(m_context);
if (m_initStage == FormEditorW::FullyInitialized) {
QSettings *s = ICore::settings();
s->beginGroup(settingsGroupC);
@@ -423,8 +420,7 @@ void FormEditorData::fullInit()
Context designerContexts = m_contexts;
designerContexts.add(Core::Constants::C_EDITORMANAGER);
- m_context = new DesignerContext(designerContexts, m_modeWidget, m_instance);
- ICore::addContextObject(m_context);
+ ICore::addContextObject(new DesignerContext(designerContexts, m_modeWidget, m_instance));
DesignMode::registerDesignWidget(m_modeWidget, QStringList(FORM_MIMETYPE), m_contexts);
diff --git a/src/plugins/diffeditor/diffeditor.cpp b/src/plugins/diffeditor/diffeditor.cpp
index 6c4f036e86..07aa9c39e0 100644
--- a/src/plugins/diffeditor/diffeditor.cpp
+++ b/src/plugins/diffeditor/diffeditor.cpp
@@ -77,16 +77,12 @@ class DescriptionEditorWidget : public TextEditorWidget
Q_OBJECT
public:
DescriptionEditorWidget(QWidget *parent = nullptr);
- ~DescriptionEditorWidget() override;
QSize sizeHint() const override;
protected:
void setDisplaySettings(const DisplaySettings &ds) override;
void setMarginSettings(const MarginSettings &ms) override;
-
-private:
- Core::IContext *m_context;
};
DescriptionEditorWidget::DescriptionEditorWidget(QWidget *parent)
@@ -107,19 +103,14 @@ DescriptionEditorWidget::DescriptionEditorWidget(QWidget *parent)
setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Preferred);
- m_context = new Core::IContext(this);
- m_context->setWidget(this);
- m_context->setContext(Core::Context(Constants::C_DIFF_EDITOR_DESCRIPTION));
- Core::ICore::addContextObject(m_context);
+ auto context = new Core::IContext(this);
+ context->setWidget(this);
+ context->setContext(Core::Context(Constants::C_DIFF_EDITOR_DESCRIPTION));
+ Core::ICore::addContextObject(context);
textDocument()->setSyntaxHighlighter(new SyntaxHighlighter);
}
-DescriptionEditorWidget::~DescriptionEditorWidget()
-{
- Core::ICore::removeContextObject(m_context);
-}
-
QSize DescriptionEditorWidget::sizeHint() const
{
QSize size = TextEditorWidget::sizeHint();
diff --git a/src/plugins/diffeditor/sidebysidediffeditorwidget.cpp b/src/plugins/diffeditor/sidebysidediffeditorwidget.cpp
index 6ac614aad4..584e065300 100644
--- a/src/plugins/diffeditor/sidebysidediffeditorwidget.cpp
+++ b/src/plugins/diffeditor/sidebysidediffeditorwidget.cpp
@@ -802,20 +802,14 @@ SideBySideDiffEditorWidget::SideBySideDiffEditorWidget(QWidget *parent)
l->addWidget(m_splitter);
setFocusProxy(m_leftEditor);
- m_leftContext = new IContext(this);
- m_leftContext->setWidget(m_leftEditor);
- m_leftContext->setContext(Core::Context(Core::Id(Constants::SIDE_BY_SIDE_VIEW_ID).withSuffix(1)));
- Core::ICore::addContextObject(m_leftContext);
- m_rightContext = new IContext(this);
- m_rightContext->setWidget(m_rightEditor);
- m_rightContext->setContext(Core::Context(Core::Id(Constants::SIDE_BY_SIDE_VIEW_ID).withSuffix(2)));
- Core::ICore::addContextObject(m_rightContext);
-}
-
-SideBySideDiffEditorWidget::~SideBySideDiffEditorWidget()
-{
- Core::ICore::removeContextObject(m_leftContext);
- Core::ICore::removeContextObject(m_rightContext);
+ auto leftContext = new IContext(this);
+ leftContext->setWidget(m_leftEditor);
+ leftContext->setContext(Core::Context(Core::Id(Constants::SIDE_BY_SIDE_VIEW_ID).withSuffix(1)));
+ Core::ICore::addContextObject(leftContext);
+ auto rightContext = new IContext(this);
+ rightContext->setWidget(m_rightEditor);
+ rightContext->setContext(Core::Context(Core::Id(Constants::SIDE_BY_SIDE_VIEW_ID).withSuffix(2)));
+ Core::ICore::addContextObject(rightContext);
}
TextEditorWidget *SideBySideDiffEditorWidget::leftEditorWidget() const
diff --git a/src/plugins/diffeditor/sidebysidediffeditorwidget.h b/src/plugins/diffeditor/sidebysidediffeditorwidget.h
index 14795cf085..2f635367d0 100644
--- a/src/plugins/diffeditor/sidebysidediffeditorwidget.h
+++ b/src/plugins/diffeditor/sidebysidediffeditorwidget.h
@@ -56,7 +56,6 @@ class SideBySideDiffEditorWidget : public QWidget
Q_OBJECT
public:
explicit SideBySideDiffEditorWidget(QWidget *parent = nullptr);
- ~SideBySideDiffEditorWidget() override;
TextEditor::TextEditorWidget *leftEditorWidget() const;
TextEditor::TextEditorWidget *rightEditorWidget() const;
@@ -109,8 +108,6 @@ private:
bool m_horizontalSync = false;
QTextCharFormat m_spanLineFormat;
- Core::IContext *m_leftContext = nullptr;
- Core::IContext *m_rightContext = nullptr;
};
} // namespace Internal
diff --git a/src/plugins/diffeditor/unifieddiffeditorwidget.cpp b/src/plugins/diffeditor/unifieddiffeditorwidget.cpp
index 8675c73892..c924b668eb 100644
--- a/src/plugins/diffeditor/unifieddiffeditorwidget.cpp
+++ b/src/plugins/diffeditor/unifieddiffeditorwidget.cpp
@@ -77,18 +77,13 @@ UnifiedDiffEditorWidget::UnifiedDiffEditorWidget(QWidget *parent)
connect(this, &QPlainTextEdit::cursorPositionChanged,
this, &UnifiedDiffEditorWidget::slotCursorPositionChangedInEditor);
- m_context = new Core::IContext(this);
- m_context->setWidget(this);
- m_context->setContext(Core::Context(Constants::UNIFIED_VIEW_ID));
- Core::ICore::addContextObject(m_context);
+ auto context = new Core::IContext(this);
+ context->setWidget(this);
+ context->setContext(Core::Context(Constants::UNIFIED_VIEW_ID));
+ Core::ICore::addContextObject(context);
setCodeFoldingSupported(true);
}
-UnifiedDiffEditorWidget::~UnifiedDiffEditorWidget()
-{
- Core::ICore::removeContextObject(m_context);
-}
-
void UnifiedDiffEditorWidget::setDocument(DiffEditorDocument *document)
{
m_controller.setDocument(document);
diff --git a/src/plugins/diffeditor/unifieddiffeditorwidget.h b/src/plugins/diffeditor/unifieddiffeditorwidget.h
index 8d1dbd2ad5..cea94acdaf 100644
--- a/src/plugins/diffeditor/unifieddiffeditorwidget.h
+++ b/src/plugins/diffeditor/unifieddiffeditorwidget.h
@@ -50,7 +50,6 @@ class UnifiedDiffEditorWidget : public SelectableTextEditorWidget
Q_OBJECT
public:
UnifiedDiffEditorWidget(QWidget *parent = nullptr);
- ~UnifiedDiffEditorWidget() override;
void setDocument(DiffEditorDocument *document);
DiffEditorDocument *diffDocument() const;
@@ -117,7 +116,6 @@ private:
QMap<int, QPair<int, int> > m_chunkInfo;
QByteArray m_state;
- Core::IContext *m_context = nullptr;
};
} // namespace Internal
diff --git a/src/plugins/help/helpwidget.cpp b/src/plugins/help/helpwidget.cpp
index 09e2560e10..608a4ddbb5 100644
--- a/src/plugins/help/helpwidget.cpp
+++ b/src/plugins/help/helpwidget.cpp
@@ -548,7 +548,6 @@ HelpWidget::~HelpWidget()
if (m_openPagesAction)
Core::ActionManager::unregisterAction(m_openPagesAction, Constants::HELP_OPENPAGES);
}
- Core::ICore::removeContextObject(m_context);
Core::ActionManager::unregisterAction(m_copy, Core::Constants::COPY);
Core::ActionManager::unregisterAction(m_printAction, Core::Constants::PRINT);
if (m_toggleSideBarAction)
diff --git a/src/plugins/projectexplorer/foldernavigationwidget.cpp b/src/plugins/projectexplorer/foldernavigationwidget.cpp
index 5072a54708..9ebf310681 100644
--- a/src/plugins/projectexplorer/foldernavigationwidget.cpp
+++ b/src/plugins/projectexplorer/foldernavigationwidget.cpp
@@ -299,10 +299,10 @@ FolderNavigationWidget::FolderNavigationWidget(QWidget *parent) : QWidget(parent
m_crumbContainer(new QWidget(this)),
m_crumbLabel(new DelayedFileCrumbLabel(this))
{
- m_context = new Core::IContext(this);
- m_context->setContext(Core::Context(C_FOLDERNAVIGATIONWIDGET));
- m_context->setWidget(this);
- Core::ICore::addContextObject(m_context);
+ auto context = new Core::IContext(this);
+ context->setContext(Core::Context(C_FOLDERNAVIGATIONWIDGET));
+ context->setWidget(this);
+ Core::ICore::addContextObject(context);
setBackgroundRole(QPalette::Base);
setAutoFillBackground(true);
@@ -435,11 +435,6 @@ FolderNavigationWidget::FolderNavigationWidget(QWidget *parent) : QWidget(parent
setRootAutoSynchronization(true);
}
-FolderNavigationWidget::~FolderNavigationWidget()
-{
- Core::ICore::removeContextObject(m_context);
-}
-
void FolderNavigationWidget::toggleAutoSynchronization()
{
setAutoSynchronization(!m_autoSync);
diff --git a/src/plugins/projectexplorer/foldernavigationwidget.h b/src/plugins/projectexplorer/foldernavigationwidget.h
index b6268b66d6..f871fb2aaa 100644
--- a/src/plugins/projectexplorer/foldernavigationwidget.h
+++ b/src/plugins/projectexplorer/foldernavigationwidget.h
@@ -94,7 +94,6 @@ class FolderNavigationWidget : public QWidget
Q_PROPERTY(bool autoSynchronization READ autoSynchronization WRITE setAutoSynchronization)
public:
explicit FolderNavigationWidget(QWidget *parent = nullptr);
- ~FolderNavigationWidget() override;
static QStringList projectFilesInDirectory(const QString &path);
@@ -135,7 +134,6 @@ private:
void openProjectsInDirectory(const QModelIndex &index);
void createNewFolder(const QModelIndex &parent);
- Core::IContext *m_context = nullptr;
Utils::NavigationTreeView *m_listView = nullptr;
QFileSystemModel *m_fileSystemModel = nullptr;
QSortFilterProxyModel *m_sortProxyModel = nullptr;
diff --git a/src/plugins/projectexplorer/projecttreewidget.cpp b/src/plugins/projectexplorer/projecttreewidget.cpp
index cdd24622cd..353d50716c 100644
--- a/src/plugins/projectexplorer/projecttreewidget.cpp
+++ b/src/plugins/projectexplorer/projecttreewidget.cpp
@@ -152,11 +152,11 @@ public:
setDragDropMode(QAbstractItemView::DragDrop);
viewport()->setAcceptDrops(true);
setDropIndicatorShown(true);
- m_context = new IContext(this);
- m_context->setContext(Context(ProjectExplorer::Constants::C_PROJECT_TREE));
- m_context->setWidget(this);
+ auto context = new IContext(this);
+ context->setContext(Context(ProjectExplorer::Constants::C_PROJECT_TREE));
+ context->setWidget(this);
- ICore::addContextObject(m_context);
+ ICore::addContextObject(context);
connect(this, &ProjectTreeView::expanded,
this, &ProjectTreeView::invalidateSize);
@@ -204,12 +204,6 @@ public:
NavigationTreeView::setModel(newModel);
}
- ~ProjectTreeView() override
- {
- ICore::removeContextObject(m_context);
- delete m_context;
- }
-
int sizeHintForColumn(int column) const override
{
if (m_cachedSize < 0)
@@ -220,7 +214,6 @@ public:
private:
mutable int m_cachedSize = -1;
- IContext *m_context;
};
/*!
diff --git a/src/plugins/projectexplorer/taskwindow.cpp b/src/plugins/projectexplorer/taskwindow.cpp
index 732f29c50e..c150404ccc 100644
--- a/src/plugins/projectexplorer/taskwindow.cpp
+++ b/src/plugins/projectexplorer/taskwindow.cpp
@@ -397,7 +397,6 @@ TaskWindow::TaskWindow() : d(std::make_unique<TaskWindowPrivate>())
TaskWindow::~TaskWindow()
{
- Core::ICore::removeContextObject(d->m_taskWindowContext);
delete d->m_filterWarningsButton;
delete d->m_listview;
delete d->m_filter;
diff --git a/src/plugins/qmldesigner/components/bindingeditor/bindingeditorwidget.cpp b/src/plugins/qmldesigner/components/bindingeditor/bindingeditorwidget.cpp
index 6a058cb49a..fbc656e346 100644
--- a/src/plugins/qmldesigner/components/bindingeditor/bindingeditorwidget.cpp
+++ b/src/plugins/qmldesigner/components/bindingeditor/bindingeditorwidget.cpp
@@ -68,9 +68,6 @@ BindingEditorWidget::BindingEditorWidget()
BindingEditorWidget::~BindingEditorWidget()
{
unregisterAutoCompletion();
-
- Core::ICore::removeContextObject(m_context);
- delete m_context;
}
void BindingEditorWidget::unregisterAutoCompletion()
diff --git a/src/plugins/qmldesigner/qmldesignerplugin.cpp b/src/plugins/qmldesigner/qmldesignerplugin.cpp
index 21d1ffadf2..fa2afe7e81 100644
--- a/src/plugins/qmldesigner/qmldesignerplugin.cpp
+++ b/src/plugins/qmldesigner/qmldesignerplugin.cpp
@@ -118,7 +118,6 @@ public:
SettingsPage settingsPage;
DesignModeWidget mainWidget;
DesignerSettings settings;
- DesignModeContext *context = nullptr;
QtQuickDesignerFactory m_qtQuickDesignerFactory;
bool blockEditorChange = false;
};
@@ -194,11 +193,8 @@ QmlDesignerPlugin::QmlDesignerPlugin()
QmlDesignerPlugin::~QmlDesignerPlugin()
{
- if (d) {
+ if (d)
Core::DesignMode::unregisterDesignWidget(&d->mainWidget);
- Core::ICore::removeContextObject(d->context);
- d->context = nullptr;
- }
delete d;
d = nullptr;
m_instance = nullptr;
@@ -290,18 +286,18 @@ static QString projectPath(const Utils::FilePath &fileName)
void QmlDesignerPlugin::integrateIntoQtCreator(QWidget *modeWidget)
{
- d->context = new Internal::DesignModeContext(modeWidget);
- Core::ICore::addContextObject(d->context);
+ auto context = new Internal::DesignModeContext(modeWidget);
+ Core::ICore::addContextObject(context);
Core::Context qmlDesignerMainContext(Constants::C_QMLDESIGNER);
Core::Context qmlDesignerFormEditorContext(Constants::C_QMLFORMEDITOR);
Core::Context qmlDesignerEditor3dContext(Constants::C_QMLEDITOR3D);
Core::Context qmlDesignerNavigatorContext(Constants::C_QMLNAVIGATOR);
- d->context->context().add(qmlDesignerMainContext);
- d->context->context().add(qmlDesignerFormEditorContext);
- d->context->context().add(qmlDesignerEditor3dContext);
- d->context->context().add(qmlDesignerNavigatorContext);
- d->context->context().add(ProjectExplorer::Constants::QMLJS_LANGUAGE_ID);
+ context->context().add(qmlDesignerMainContext);
+ context->context().add(qmlDesignerFormEditorContext);
+ context->context().add(qmlDesignerEditor3dContext);
+ context->context().add(qmlDesignerNavigatorContext);
+ context->context().add(ProjectExplorer::Constants::QMLJS_LANGUAGE_ID);
d->shortCutManager.registerActions(qmlDesignerMainContext, qmlDesignerFormEditorContext,
qmlDesignerEditor3dContext, qmlDesignerNavigatorContext);
@@ -309,7 +305,7 @@ void QmlDesignerPlugin::integrateIntoQtCreator(QWidget *modeWidget)
const QStringList mimeTypes = { QmlJSTools::Constants::QML_MIMETYPE,
QmlJSTools::Constants::QMLUI_MIMETYPE };
- Core::DesignMode::registerDesignWidget(modeWidget, mimeTypes, d->context->context());
+ Core::DesignMode::registerDesignWidget(modeWidget, mimeTypes, context->context());
connect(Core::DesignMode::instance(), &Core::DesignMode::actionsUpdated,
&d->shortCutManager, &ShortCutManager::updateActions);
diff --git a/src/plugins/scxmleditor/scxmleditordata.cpp b/src/plugins/scxmleditor/scxmleditordata.cpp
index 14d9c26e18..881c39af9a 100644
--- a/src/plugins/scxmleditor/scxmleditordata.cpp
+++ b/src/plugins/scxmleditor/scxmleditordata.cpp
@@ -111,9 +111,6 @@ ScxmlEditorData::ScxmlEditorData()
ScxmlEditorData::~ScxmlEditorData()
{
- if (m_context)
- ICore::removeContextObject(m_context);
-
if (m_modeWidget) {
DesignMode::unregisterDesignWidget(m_modeWidget);
delete m_modeWidget;
@@ -146,8 +143,8 @@ void ScxmlEditorData::fullInit()
Context scxmlContexts = m_contexts;
scxmlContexts.add(Core::Constants::C_EDITORMANAGER);
- m_context = new ScxmlContext(scxmlContexts, m_modeWidget, this);
- ICore::addContextObject(m_context);
+ auto context = new ScxmlContext(scxmlContexts, m_modeWidget, this);
+ ICore::addContextObject(context);
DesignMode::registerDesignWidget(m_modeWidget, QStringList(QLatin1String(ProjectExplorer::Constants::SCXML_MIMETYPE)), m_contexts);
}
diff --git a/src/plugins/scxmleditor/scxmleditordata.h b/src/plugins/scxmleditor/scxmleditordata.h
index 0cd4bf7119..f495f2fbf5 100644
--- a/src/plugins/scxmleditor/scxmleditordata.h
+++ b/src/plugins/scxmleditor/scxmleditordata.h
@@ -57,7 +57,6 @@ private:
QWidget *createModeWidget();
EditorToolBar *createMainToolBar();
- ScxmlContext *m_context = nullptr;
Context m_contexts;
QWidget *m_modeWidget = nullptr;
ScxmlEditorStack *m_widgetStack = nullptr;