diff --git a/src/plugins/coreplugin/dialogs/shortcutsettings.cpp b/src/plugins/coreplugin/dialogs/shortcutsettings.cpp index 6797a50888e..33d83f67efb 100644 --- a/src/plugins/coreplugin/dialogs/shortcutsettings.cpp +++ b/src/plugins/coreplugin/dialogs/shortcutsettings.cpp @@ -116,8 +116,6 @@ QWidget *ShortcutSettings::createPage(QWidget *parent) commandChanged(0); - delete m_page; - return w; } @@ -131,6 +129,8 @@ void ShortcutSettings::finish() { qDeleteAll(m_scitems); m_scitems.clear(); + + delete m_page; } bool ShortcutSettings::eventFilter(QObject *o, QEvent *e) diff --git a/src/plugins/coreplugin/generalsettings.cpp b/src/plugins/coreplugin/generalsettings.cpp index b21db43fa35..f2b51c1204c 100644 --- a/src/plugins/coreplugin/generalsettings.cpp +++ b/src/plugins/coreplugin/generalsettings.cpp @@ -77,7 +77,7 @@ QWidget *GeneralSettings::createPage(QWidget *parent) this, SLOT(resetExternalEditor())); connect(m_page->helpExternalEditorButton, SIGNAL(clicked()), this, SLOT(showHelpForExternalEditor())); - delete m_page; + return w; } @@ -88,6 +88,11 @@ void GeneralSettings::apply() EditorManager::instance()->setExternalEditor(m_page->externalEditorEdit->text()); } +void GeneralSettings::finish() +{ + delete m_page; +} + void GeneralSettings::resetInterfaceColor() { m_page->colorButton->setColor(0x666666); diff --git a/src/plugins/coreplugin/generalsettings.h b/src/plugins/coreplugin/generalsettings.h index aff4d0c8809..f31edf2cfb4 100644 --- a/src/plugins/coreplugin/generalsettings.h +++ b/src/plugins/coreplugin/generalsettings.h @@ -56,7 +56,7 @@ public: QString trCategory() const; QWidget* createPage(QWidget *parent); void apply(); - void finish() { } + void finish(); private slots: void resetInterfaceColor();