From 31dada8d928c29eaeb64fd8b3bb67987e35b5fa3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thorbj=C3=B8rn=20Lindeijer?= Date: Tue, 26 May 2009 11:10:22 +0200 Subject: [PATCH 1/4] Renamed braces to brackets Since we're automatically inserting several kinds of brackets, but not braces ({ }). --- src/plugins/cpptools/completionsettingspage.cpp | 4 ++-- src/plugins/cpptools/completionsettingspage.ui | 4 ++-- src/plugins/cpptools/cppcodecompletion.cpp | 12 ++++++------ src/plugins/cpptools/cppcodecompletion.h | 6 +++--- src/plugins/cpptools/cpptoolsplugin.cpp | 4 ++-- 5 files changed, 15 insertions(+), 15 deletions(-) diff --git a/src/plugins/cpptools/completionsettingspage.cpp b/src/plugins/cpptools/completionsettingspage.cpp index 02638875ba4..0df3c438976 100644 --- a/src/plugins/cpptools/completionsettingspage.cpp +++ b/src/plugins/cpptools/completionsettingspage.cpp @@ -73,7 +73,7 @@ QWidget *CompletionSettingsPage::createPage(QWidget *parent) m_page->setupUi(w); m_page->caseSensitive->setChecked(m_completion->caseSensitivity() == Qt::CaseSensitive); - m_page->autoInsertBraces->setChecked(m_completion->autoInsertBraces()); + m_page->autoInsertBrackets->setChecked(m_completion->autoInsertBrackets()); m_page->partiallyComplete->setChecked(m_completion->isPartialCompletionEnabled()); return w; @@ -83,6 +83,6 @@ void CompletionSettingsPage::apply() { m_completion->setCaseSensitivity( m_page->caseSensitive->isChecked() ? Qt::CaseSensitive : Qt::CaseInsensitive); - m_completion->setAutoInsertBraces(m_page->autoInsertBraces->isChecked()); + m_completion->setAutoInsertBrackets(m_page->autoInsertBrackets->isChecked()); m_completion->setPartialCompletionEnabled(m_page->partiallyComplete->isChecked()); } diff --git a/src/plugins/cpptools/completionsettingspage.ui b/src/plugins/cpptools/completionsettingspage.ui index 8a0d8315f82..55c077532a5 100644 --- a/src/plugins/cpptools/completionsettingspage.ui +++ b/src/plugins/cpptools/completionsettingspage.ui @@ -31,12 +31,12 @@ - + Automatically insert (, ) and ; when appropriate. - &Automatically insert braces + &Automatically insert brackets true diff --git a/src/plugins/cpptools/cppcodecompletion.cpp b/src/plugins/cpptools/cppcodecompletion.cpp index fd7278cd65c..84994e78b62 100644 --- a/src/plugins/cpptools/cppcodecompletion.cpp +++ b/src/plugins/cpptools/cppcodecompletion.cpp @@ -414,7 +414,7 @@ CppCodeCompletion::CppCodeCompletion(CppModelManager *manager) : ICompletionCollector(manager), m_manager(manager), m_caseSensitivity(Qt::CaseSensitive), - m_autoInsertBraces(true), + m_autoInsertBrackets(true), m_forcedCompletion(false), m_completionOperator(T_EOF_SYMBOL) { @@ -435,14 +435,14 @@ void CppCodeCompletion::setCaseSensitivity(Qt::CaseSensitivity caseSensitivity) m_caseSensitivity = caseSensitivity; } -bool CppCodeCompletion::autoInsertBraces() const +bool CppCodeCompletion::autoInsertBrackets() const { - return m_autoInsertBraces; + return m_autoInsertBrackets; } -void CppCodeCompletion::setAutoInsertBraces(bool autoInsertBraces) +void CppCodeCompletion::setAutoInsertBrackets(bool autoInsertBrackets) { - m_autoInsertBraces = autoInsertBraces; + m_autoInsertBrackets = autoInsertBrackets; } bool CppCodeCompletion::isPartialCompletionEnabled() const @@ -1230,7 +1230,7 @@ void CppCodeCompletion::complete(const TextEditor::CompletionItem &item) //qDebug() << "current symbol:" << overview.prettyName(symbol->name()) //<< overview.prettyType(symbol->type()); - if (m_autoInsertBraces && symbol && symbol->type()) { + if (m_autoInsertBrackets && symbol && symbol->type()) { QString extraChars; if (Function *function = symbol->type()->asFunctionType()) { diff --git a/src/plugins/cpptools/cppcodecompletion.h b/src/plugins/cpptools/cppcodecompletion.h index d95b9c825c9..d32b81703f4 100644 --- a/src/plugins/cpptools/cppcodecompletion.h +++ b/src/plugins/cpptools/cppcodecompletion.h @@ -72,8 +72,8 @@ public: Qt::CaseSensitivity caseSensitivity() const; void setCaseSensitivity(Qt::CaseSensitivity caseSensitivity); - bool autoInsertBraces() const; - void setAutoInsertBraces(bool autoInsertBraces); + bool autoInsertBrackets() const; + void setAutoInsertBrackets(bool autoInsertBrackets); bool isPartialCompletionEnabled() const; void setPartialCompletionEnabled(bool partialCompletionEnabled); @@ -125,7 +125,7 @@ private: CppModelManager *m_manager; Qt::CaseSensitivity m_caseSensitivity; - bool m_autoInsertBraces; + bool m_autoInsertBrackets; bool m_partialCompletionEnabled; bool m_forcedCompletion; diff --git a/src/plugins/cpptools/cpptoolsplugin.cpp b/src/plugins/cpptools/cpptoolsplugin.cpp index 4aa16e9e23b..5ea430bf42a 100644 --- a/src/plugins/cpptools/cpptoolsplugin.cpp +++ b/src/plugins/cpptools/cpptoolsplugin.cpp @@ -119,7 +119,7 @@ bool CppToolsPlugin::initialize(const QStringList &arguments, QString *error) settings->beginGroup(QLatin1String("Completion")); const bool caseSensitive = settings->value(QLatin1String("CaseSensitive"), true).toBool(); m_completion->setCaseSensitivity(caseSensitive ? Qt::CaseSensitive : Qt::CaseInsensitive); - m_completion->setAutoInsertBraces(settings->value(QLatin1String("AutoInsertBraces"), true).toBool()); + m_completion->setAutoInsertBrackets(settings->value(QLatin1String("AutoInsertBraces"), true).toBool()); m_completion->setPartialCompletionEnabled(settings->value(QLatin1String("PartiallyComplete"), true).toBool()); settings->endGroup(); settings->endGroup(); @@ -143,7 +143,7 @@ void CppToolsPlugin::shutdown() settings->beginGroup(QLatin1String("CppTools")); settings->beginGroup(QLatin1String("Completion")); settings->setValue(QLatin1String("CaseSensitive"), m_completion->caseSensitivity() == Qt::CaseSensitive); - settings->setValue(QLatin1String("AutoInsertBraces"), m_completion->autoInsertBraces()); + settings->setValue(QLatin1String("AutoInsertBraces"), m_completion->autoInsertBrackets()); settings->setValue(QLatin1String("PartiallyComplete"), m_completion->isPartialCompletionEnabled()); settings->endGroup(); settings->endGroup(); From 5cc007e9d9e2c613eec339dc1f643e7c8ac7417d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thorbj=C3=B8rn=20Lindeijer?= Date: Tue, 26 May 2009 11:11:47 +0200 Subject: [PATCH 2/4] Moved initialization of actions --- .../texteditor/texteditoractionhandler.cpp | 63 +++++++++---------- 1 file changed, 31 insertions(+), 32 deletions(-) diff --git a/src/plugins/texteditor/texteditoractionhandler.cpp b/src/plugins/texteditor/texteditoractionhandler.cpp index 3356dc50f09..44220bfdb99 100644 --- a/src/plugins/texteditor/texteditoractionhandler.cpp +++ b/src/plugins/texteditor/texteditoractionhandler.cpp @@ -52,42 +52,41 @@ using namespace TextEditor::Internal; TextEditorActionHandler::TextEditorActionHandler(const QString &context, uint optionalActions) : QObject(Core::ICore::instance()), + m_undoAction(0), + m_redoAction(0), + m_copyAction(0), + m_cutAction(0), + m_pasteAction(0), + m_selectAllAction(0), + m_gotoAction(0), + m_printAction(0), + m_formatAction(0), + m_visualizeWhitespaceAction(0), + m_cleanWhitespaceAction(0), + m_textWrappingAction(0), + m_unCommentSelectionAction(0), + m_unCollapseAllAction(0), + m_collapseAction(0), + m_expandAction(0), + m_cutLineAction(0), + m_deleteLineAction(0), + m_selectEncodingAction(0), + m_increaseFontSizeAction(0), + m_decreaseFontSizeAction(0), + m_gotoBlockStartAction(0), + m_gotoBlockEndAction(0), + m_gotoBlockStartWithSelectionAction(0), + m_gotoBlockEndWithSelectionAction(0), + m_selectBlockUpAction(0), + m_selectBlockDownAction(0), + m_moveLineUpAction(0), + m_moveLineDownAction(0), + m_copyLineUpAction(0), + m_copyLineDownAction(0), m_optionalActions(optionalActions), m_currentEditor(0), m_initialized(false) { - m_undoAction = 0; - m_redoAction = 0; - m_copyAction = 0; - m_cutAction = 0; - m_pasteAction = 0; - m_selectAllAction = 0; - m_gotoAction = 0; - m_printAction = 0; - m_formatAction = 0; - m_visualizeWhitespaceAction = 0; - m_cleanWhitespaceAction = 0; - m_textWrappingAction = 0; - m_unCommentSelectionAction = 0; - m_unCollapseAllAction = 0; - m_collapseAction = 0; - m_expandAction = 0; - m_cutLineAction = 0; - m_deleteLineAction = 0; - m_selectEncodingAction = 0; - m_increaseFontSizeAction = 0; - m_decreaseFontSizeAction = 0; - m_gotoBlockStartAction = 0; - m_gotoBlockStartWithSelectionAction = 0; - m_gotoBlockEndAction = 0; - m_gotoBlockEndWithSelectionAction = 0; - m_selectBlockUpAction = 0; - m_selectBlockDownAction = 0; - m_moveLineUpAction = 0; - m_moveLineDownAction = 0; - m_copyLineUpAction = 0; - m_copyLineDownAction = 0; - m_contextId << Core::UniqueIDManager::instance()->uniqueIdentifier(context); connect(Core::ICore::instance()->editorManager(), SIGNAL(currentEditorChanged(Core::IEditor*)), From 5b132339a757cb7bcbd91d31fb6b7d81fc4b9130 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thorbj=C3=B8rn=20Lindeijer?= Date: Tue, 26 May 2009 11:26:36 +0200 Subject: [PATCH 3/4] Rely on lazy instantiation of text editor actions The actions are already lazily instantiated in TextEditorActionHandler::setupActions(), so there should be no need to call initializeActions() in all plugins on startup. Only the main text editor plugin will still initialize its actions, to make sure the menu items are there. --- src/plugins/cppeditor/cppplugin.cpp | 1 - src/plugins/duieditor/duieditorplugin.cpp | 1 - src/plugins/qt4projectmanager/profileeditorfactory.cpp | 5 ----- src/plugins/qt4projectmanager/profileeditorfactory.h | 2 -- src/plugins/qt4projectmanager/qt4projectmanagerplugin.cpp | 1 - src/plugins/qtscripteditor/qtscripteditorplugin.cpp | 1 - 6 files changed, 11 deletions(-) diff --git a/src/plugins/cppeditor/cppplugin.cpp b/src/plugins/cppeditor/cppplugin.cpp index 318f3f0b51a..6f829843d85 100644 --- a/src/plugins/cppeditor/cppplugin.cpp +++ b/src/plugins/cppeditor/cppplugin.cpp @@ -225,7 +225,6 @@ void CppPlugin::writeSettings() void CppPlugin::extensionsInitialized() { - m_actionHandler->initializeActions(); } void CppPlugin::shutdown() diff --git a/src/plugins/duieditor/duieditorplugin.cpp b/src/plugins/duieditor/duieditorplugin.cpp index 45216ebe846..eee134d6383 100644 --- a/src/plugins/duieditor/duieditorplugin.cpp +++ b/src/plugins/duieditor/duieditorplugin.cpp @@ -131,7 +131,6 @@ bool DuiEditorPlugin::initialize(const QStringList & /*arguments*/, QString *err void DuiEditorPlugin::extensionsInitialized() { - m_actionHandler->initializeActions(); } void DuiEditorPlugin::initializeEditor(DuiEditor::Internal::ScriptEditor *editor) diff --git a/src/plugins/qt4projectmanager/profileeditorfactory.cpp b/src/plugins/qt4projectmanager/profileeditorfactory.cpp index a5bfe022661..bddf9e68ef1 100644 --- a/src/plugins/qt4projectmanager/profileeditorfactory.cpp +++ b/src/plugins/qt4projectmanager/profileeditorfactory.cpp @@ -85,8 +85,3 @@ QStringList ProFileEditorFactory::mimeTypes() const { return m_mimeTypes; } - -void ProFileEditorFactory::initializeActions() -{ - m_actionHandler->initializeActions(); -} diff --git a/src/plugins/qt4projectmanager/profileeditorfactory.h b/src/plugins/qt4projectmanager/profileeditorfactory.h index 94b6964ecc0..824276d9aff 100644 --- a/src/plugins/qt4projectmanager/profileeditorfactory.h +++ b/src/plugins/qt4projectmanager/profileeditorfactory.h @@ -63,8 +63,6 @@ public: inline Qt4Manager *qt4ProjectManager() const { return m_manager; } - void initializeActions(); - private: const QString m_kind; const QStringList m_mimeTypes; diff --git a/src/plugins/qt4projectmanager/qt4projectmanagerplugin.cpp b/src/plugins/qt4projectmanager/qt4projectmanagerplugin.cpp index dcb565f1fe6..a8ded2f458c 100644 --- a/src/plugins/qt4projectmanager/qt4projectmanagerplugin.cpp +++ b/src/plugins/qt4projectmanager/qt4projectmanagerplugin.cpp @@ -185,7 +185,6 @@ bool Qt4ProjectManagerPlugin::initialize(const QStringList &arguments, QString * void Qt4ProjectManagerPlugin::extensionsInitialized() { m_qt4ProjectManager->init(); - m_proFileEditorFactory->initializeActions(); } void Qt4ProjectManagerPlugin::updateContextMenu(Project *project, diff --git a/src/plugins/qtscripteditor/qtscripteditorplugin.cpp b/src/plugins/qtscripteditor/qtscripteditorplugin.cpp index c37e1a5ec01..63592900f3e 100644 --- a/src/plugins/qtscripteditor/qtscripteditorplugin.cpp +++ b/src/plugins/qtscripteditor/qtscripteditorplugin.cpp @@ -128,7 +128,6 @@ bool QtScriptEditorPlugin::initialize(const QStringList & /*arguments*/, QString void QtScriptEditorPlugin::extensionsInitialized() { - m_actionHandler->initializeActions(); } void QtScriptEditorPlugin::initializeEditor(QtScriptEditor::Internal::ScriptEditor *editor) From c358a68557b421ff823a7f9ddb064691482acbe2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thorbj=C3=B8rn=20Lindeijer?= Date: Tue, 26 May 2009 12:01:57 +0200 Subject: [PATCH 4/4] Do still pass the typed character to the indenter Some indenters need this information. If the C++ indenter misbehaves based on the typed character, then that should be fixed there. This reverts part of commit 4c07de50b2347bc876c7fe60eb7e82f20d273f4b. Reviewed-by: Roberto Raggi --- src/plugins/texteditor/basetexteditor.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/plugins/texteditor/basetexteditor.cpp b/src/plugins/texteditor/basetexteditor.cpp index eac61f480a0..6dca8ee169a 100644 --- a/src/plugins/texteditor/basetexteditor.cpp +++ b/src/plugins/texteditor/basetexteditor.cpp @@ -992,7 +992,7 @@ void BaseTextEditor::keyPressEvent(QKeyEvent *e) QTextCursor cursor = textCursor(); const QString text = e->text(); cursor.insertText(text); - indent(document(), cursor, QChar::Null); + indent(document(), cursor, text.at(0)); #if 0 TextEditDocumentLayout *documentLayout = qobject_cast(document()->documentLayout()); QTC_ASSERT(documentLayout, return);