diff --git a/src/plugins/cppeditor/cppeditor.h b/src/plugins/cppeditor/cppeditor.h index fa94f6a2e05..ae1f57e31b2 100644 --- a/src/plugins/cppeditor/cppeditor.h +++ b/src/plugins/cppeditor/cppeditor.h @@ -144,6 +144,7 @@ public Q_SLOTS: void renameSymbolUnderCursor(); void renameUsages(); void findUsages(); + void showPreProcessorWidget(); void renameUsagesNow(const QString &replacement = QString()); void semanticRehighlight(bool force = false); void highlighterStarted(QFuture *highlighter, @@ -187,8 +188,6 @@ private Q_SLOTS: void onCommentsSettingsChanged(const CppTools::CommentsSettings &settings); - void showPreProcessorWidget(); - private: void markSymbols(const QTextCursor &tc, const CppTools::SemanticInfo &info); bool sortedOutline() const; diff --git a/src/plugins/cppeditor/cppeditorconstants.h b/src/plugins/cppeditor/cppeditorconstants.h index ae87b13ead1..672c7321490 100644 --- a/src/plugins/cppeditor/cppeditorconstants.h +++ b/src/plugins/cppeditor/cppeditorconstants.h @@ -41,6 +41,7 @@ const char SWITCH_DECLARATION_DEFINITION[] = "CppEditor.SwitchDeclarationDefinit const char OPEN_DECLARATION_DEFINITION_IN_NEXT_SPLIT[] = "CppEditor.OpenDeclarationDefinitionInNextSplit"; const char RENAME_SYMBOL_UNDER_CURSOR[] = "CppEditor.RenameSymbolUnderCursor"; const char FIND_USAGES[] = "CppEditor.FindUsages"; +const char OPEN_PREPROCESSOR_DIALOG[] = "CppEditor.OpenPreprocessorDialog"; const char M_REFACTORING_MENU_INSERTION_POINT[] = "CppEditor.RefactorGroup"; const char UPDATE_CODEMODEL[] = "CppEditor.UpdateCodeModel"; diff --git a/src/plugins/cppeditor/cppeditorplugin.cpp b/src/plugins/cppeditor/cppeditorplugin.cpp index 4ffa0d93d67..e74e926d7f4 100644 --- a/src/plugins/cppeditor/cppeditorplugin.cpp +++ b/src/plugins/cppeditor/cppeditorplugin.cpp @@ -210,6 +210,13 @@ bool CppEditorPlugin::initialize(const QStringList & /*arguments*/, QString *err contextMenu->addAction(cmd); cppToolsMenu->addAction(cmd); + QAction *openPreprocessorDialog = new QAction(tr("Additional Preprocessor Directives"), this); + cmd = ActionManager::registerAction(openPreprocessorDialog, + Constants::OPEN_PREPROCESSOR_DIALOG, context); + cmd->setDefaultKeySequence(QKeySequence()); + connect(openPreprocessorDialog, SIGNAL(triggered()), this, SLOT(showPreProcessorDialog())); + cppToolsMenu->addAction(cmd); + QAction *switchDeclarationDefinition = new QAction(tr("Switch Between Function Declaration/Definition"), this); cmd = ActionManager::registerAction(switchDeclarationDefinition, Constants::SWITCH_DECLARATION_DEFINITION, context, true); @@ -354,6 +361,13 @@ void CppEditorPlugin::findUsages() editor->findUsages(); } +void CppEditorPlugin::showPreProcessorDialog() +{ + CPPEditorWidget *editor = qobject_cast(EditorManager::currentEditor()->widget()); + if (editor) + editor->showPreProcessorWidget(); +} + void CppEditorPlugin::onTaskStarted(Core::Id type) { if (type == CppTools::Constants::TASK_INDEX) { diff --git a/src/plugins/cppeditor/cppeditorplugin.h b/src/plugins/cppeditor/cppeditorplugin.h index 9dccda100e9..33e32593f4c 100644 --- a/src/plugins/cppeditor/cppeditorplugin.h +++ b/src/plugins/cppeditor/cppeditorplugin.h @@ -81,6 +81,7 @@ public slots: void openTypeHierarchy(); void openIncludeHierarchy(); void findUsages(); + void showPreProcessorDialog(); void renameSymbolUnderCursor(); void switchDeclarationDefinition();