From eec77fa67a3c4ebe77e8d4427737088d50f80533 Mon Sep 17 00:00:00 2001 From: Eike Ziller Date: Wed, 4 May 2022 09:04:08 +0200 Subject: [PATCH] Remove leftover code for header diagnostic info bar ClangCodeModel used to show an info bar about errors in headers in the editor, but that was removed. Remove the remaining infrastructure that was used to show them. Amends b52fac7148fcd333ce410b99017b7aec52e2fee6 Change-Id: Id89f2bcb7778245f468923d29c577bf1ca68ee75 Reviewed-by: Christian Kandeler Reviewed-by: Reviewed-by: Qt CI Bot --- .../cppeditor/baseeditordocumentprocessor.h | 4 -- .../builtineditordocumentprocessor.cpp | 1 - src/plugins/cppeditor/cppeditorconstants.h | 2 - src/plugins/cppeditor/cppeditordocument.cpp | 2 - .../cppeditor/cppminimizableinfobars.cpp | 52 ------------------- .../cppeditor/cppminimizableinfobars.h | 7 --- src/plugins/cppeditor/cpptoolssettings.cpp | 23 -------- src/plugins/cppeditor/cpptoolssettings.h | 3 -- 8 files changed, 94 deletions(-) diff --git a/src/plugins/cppeditor/baseeditordocumentprocessor.h b/src/plugins/cppeditor/baseeditordocumentprocessor.h index 16ab75f915c..91689542191 100644 --- a/src/plugins/cppeditor/baseeditordocumentprocessor.h +++ b/src/plugins/cppeditor/baseeditordocumentprocessor.h @@ -89,16 +89,12 @@ public: QString filePath() const { return m_filePath; } -public: - using HeaderErrorDiagnosticWidgetCreator = std::function; - signals: // Signal interface to implement void projectPartInfoUpdated(const ProjectPartInfo &projectPartInfo); void codeWarningsUpdated(unsigned revision, const QList &selections, - const HeaderErrorDiagnosticWidgetCreator &creator, const TextEditor::RefactorMarkers &refactorMarkers); void ifdefedOutBlocksUpdated(unsigned revision, diff --git a/src/plugins/cppeditor/builtineditordocumentprocessor.cpp b/src/plugins/cppeditor/builtineditordocumentprocessor.cpp index df1100862cb..e1dd4b162ba 100644 --- a/src/plugins/cppeditor/builtineditordocumentprocessor.cpp +++ b/src/plugins/cppeditor/builtineditordocumentprocessor.cpp @@ -318,7 +318,6 @@ void BuiltinEditorDocumentProcessor::onCodeWarningsUpdated( m_codeWarningsUpdated = true; emit codeWarningsUpdated(revision(), m_codeWarnings, - HeaderErrorDiagnosticWidgetCreator(), TextEditor::RefactorMarkers()); } diff --git a/src/plugins/cppeditor/cppeditorconstants.h b/src/plugins/cppeditor/cppeditorconstants.h index d657f317e31..0586a966a52 100644 --- a/src/plugins/cppeditor/cppeditorconstants.h +++ b/src/plugins/cppeditor/cppeditorconstants.h @@ -37,7 +37,6 @@ const char CPPEDITOR_DISPLAY_NAME[] = QT_TRANSLATE_NOOP("OpenWith::Editors", "C+ const char SWITCH_DECLARATION_DEFINITION[] = "CppEditor.SwitchDeclarationDefinition"; const char OPEN_DECLARATION_DEFINITION_IN_NEXT_SPLIT[] = "CppEditor.OpenDeclarationDefinitionInNextSplit"; const char OPEN_PREPROCESSOR_DIALOG[] = "CppEditor.OpenPreprocessorDialog"; -const char ERRORS_IN_HEADER_FILES[] = "CppEditor.ErrorsInHeaderFiles"; const char MULTIPLE_PARSE_CONTEXTS_AVAILABLE[] = "CppEditor.MultipleParseContextsAvailable"; const char NO_PROJECT_CONFIGURATION[] = "CppEditor.NoProjectConfiguration"; const char M_REFACTORING_MENU_INSERTION_POINT[] = "CppEditor.RefactorGroup"; @@ -101,7 +100,6 @@ const char CPPEDITOR_SETTINGSGROUP[] = "CppTools"; const char LOWERCASE_CPPFILES_KEY[] = "LowerCaseFiles"; const bool LOWERCASE_CPPFILES_DEFAULT = true; const char CPPEDITOR_SORT_EDITOR_DOCUMENT_OUTLINE[] = "SortedMethodOverview"; -const char CPPEDITOR_SHOW_INFO_BAR_FOR_HEADER_ERRORS[] = "ShowInfoBarForHeaderErrors"; const char CPPEDITOR_SHOW_INFO_BAR_FOR_FOR_NO_PROJECT[] = "ShowInfoBarForNoProject"; const char CPPEDITOR_MODEL_MANAGER_PCH_USAGE[] = "PCHUsage"; const char CPPEDITOR_INTERPRET_AMBIGIUOUS_HEADERS_AS_C_HEADERS[] diff --git a/src/plugins/cppeditor/cppeditordocument.cpp b/src/plugins/cppeditor/cppeditordocument.cpp index 5951e8b039d..452d5da5fa1 100644 --- a/src/plugins/cppeditor/cppeditordocument.cpp +++ b/src/plugins/cppeditor/cppeditordocument.cpp @@ -427,10 +427,8 @@ BaseEditorDocumentProcessor *CppEditorDocument::processor() connect(m_processor.data(), &BaseEditorDocumentProcessor::codeWarningsUpdated, [this] (unsigned revision, const QList selections, - const std::function &creator, const TextEditor::RefactorMarkers &refactorMarkers) { emit codeWarningsUpdated(revision, selections, refactorMarkers); - m_minimizableInfoBars.processHeaderDiagnostics(creator); }); connect(m_processor.data(), &BaseEditorDocumentProcessor::ifdefedOutBlocksUpdated, this, &CppEditorDocument::ifdefedOutBlocksUpdated); diff --git a/src/plugins/cppeditor/cppminimizableinfobars.cpp b/src/plugins/cppeditor/cppminimizableinfobars.cpp index 7eb80622c0e..eabf52c2886 100644 --- a/src/plugins/cppeditor/cppminimizableinfobars.cpp +++ b/src/plugins/cppeditor/cppminimizableinfobars.cpp @@ -45,8 +45,6 @@ MinimizableInfoBars::MinimizableInfoBars(InfoBar &infoBar, QObject *parent) : QObject(parent) , m_infoBar(infoBar) { - connect(settings(), &CppToolsSettings::showHeaderErrorInfoBarChanged, - this, &MinimizableInfoBars::updateHeaderErrors); connect(settings(), &CppToolsSettings::showNoProjectInfoBarChanged, this, &MinimizableInfoBars::updateNoProjectConfiguration); } @@ -68,50 +66,15 @@ MinimizableInfoBars::Actions MinimizableInfoBars::createShowInfoBarActions( action->setVisible(!settings()->showNoProjectInfoBar()); result.insert(Constants::NO_PROJECT_CONFIGURATION, action); - // Errors in included files - button = new QToolButton(); - button->setToolTip(tr("File contains errors in included files.")); - button->setIcon(Utils::Icons::WARNING_TOOLBAR.pixmap()); - connect(button, &QAbstractButton::clicked, []() { - settings()->setShowHeaderErrorInfoBar(true); - }); - action = actionCreator(button); - action->setVisible(!settings()->showHeaderErrorInfoBar()); - result.insert(Constants::ERRORS_IN_HEADER_FILES, action); - return result; } -void MinimizableInfoBars::processHeaderDiagnostics( - const DiagnosticWidgetCreator &diagnosticWidgetCreator) -{ - m_diagnosticWidgetCreator = diagnosticWidgetCreator; - updateHeaderErrors(); -} - void MinimizableInfoBars::processHasProjectPart(bool hasProjectPart) { m_hasProjectPart = hasProjectPart; updateNoProjectConfiguration(); } -void MinimizableInfoBars::updateHeaderErrors() -{ - const Id id(Constants::ERRORS_IN_HEADER_FILES); - m_infoBar.removeInfo(id); - - bool show = false; - // Show the info entry only if there is a project configuration. - if (m_hasProjectPart && m_diagnosticWidgetCreator) { - if (settings()->showHeaderErrorInfoBar()) - addHeaderErrorEntry(id, m_diagnosticWidgetCreator); - else - show = true; - } - - emit showAction(id, show); -} - void MinimizableInfoBars::updateNoProjectConfiguration() { const Id id(Constants::NO_PROJECT_CONFIGURATION); @@ -156,20 +119,5 @@ void MinimizableInfoBars::addNoProjectConfigurationEntry(const Id &id) })); } -void MinimizableInfoBars::addHeaderErrorEntry(const Id &id, - const DiagnosticWidgetCreator &diagnosticWidgetCreator) -{ - const QString text = tr("Warning: The code model could not parse an included file, " - "which might lead to incorrect code completion and " - "highlighting, for example."); - - InfoBarEntry info = createMinimizableInfo(id, text, []() { - settings()->setShowHeaderErrorInfoBar(false); - }); - info.setDetailsWidgetCreator(diagnosticWidgetCreator); - - m_infoBar.addInfo(info); -} - } // namespace Internal } // namespace CppEditor diff --git a/src/plugins/cppeditor/cppminimizableinfobars.h b/src/plugins/cppeditor/cppminimizableinfobars.h index 8c9ef9dfd1b..59f6fc17c01 100644 --- a/src/plugins/cppeditor/cppminimizableinfobars.h +++ b/src/plugins/cppeditor/cppminimizableinfobars.h @@ -45,7 +45,6 @@ class MinimizableInfoBars : public QObject Q_OBJECT public: - using DiagnosticWidgetCreator = std::function; using ActionCreator = std::function; using Actions = QHash; @@ -54,26 +53,20 @@ public: public: explicit MinimizableInfoBars(Utils::InfoBar &infoBar, QObject *parent = nullptr); - // Expected call order: processHasProjectPart(), processHeaderDiagnostics() void processHasProjectPart(bool hasProjectPart); - void processHeaderDiagnostics(const DiagnosticWidgetCreator &diagnosticWidgetCreator); signals: void showAction(const Utils::Id &id, bool show); private: void updateNoProjectConfiguration(); - void updateHeaderErrors(); void addNoProjectConfigurationEntry(const Utils::Id &id); - void addHeaderErrorEntry(const Utils::Id &id, - const DiagnosticWidgetCreator &diagnosticWidgetCreator); private: Utils::InfoBar &m_infoBar; bool m_hasProjectPart = true; - DiagnosticWidgetCreator m_diagnosticWidgetCreator; }; } // namespace Internal diff --git a/src/plugins/cppeditor/cpptoolssettings.cpp b/src/plugins/cppeditor/cpptoolssettings.cpp index 4d77f04d61f..8a11bd9369c 100644 --- a/src/plugins/cppeditor/cpptoolssettings.cpp +++ b/src/plugins/cppeditor/cpptoolssettings.cpp @@ -44,7 +44,6 @@ static const char idKey[] = "CppGlobal"; const bool kSortEditorDocumentOutlineDefault = true; -const bool kShowHeaderErrorInfoBarDefault = true; const bool kShowNoProjectInfoBarDefault = true; using namespace Core; @@ -265,28 +264,6 @@ void CppToolsSettings::setSortedEditorDocumentOutline(bool sorted) emit editorDocumentOutlineSortingChanged(sorted); } -static QString showHeaderErrorInfoBarKey() -{ - return QLatin1String(Constants::CPPEDITOR_SETTINGSGROUP) - + QLatin1Char('/') - + QLatin1String(Constants::CPPEDITOR_SHOW_INFO_BAR_FOR_HEADER_ERRORS); -} - -bool CppToolsSettings::showHeaderErrorInfoBar() const -{ - return ICore::settings() - ->value(showHeaderErrorInfoBarKey(), kShowHeaderErrorInfoBarDefault) - .toBool(); -} - -void CppToolsSettings::setShowHeaderErrorInfoBar(bool show) -{ - ICore::settings()->setValueWithDefault(showHeaderErrorInfoBarKey(), - show, - kShowHeaderErrorInfoBarDefault); - emit showHeaderErrorInfoBarChanged(show); -} - static QString showNoProjectInfoBarKey() { return QLatin1String(Constants::CPPEDITOR_SETTINGSGROUP) diff --git a/src/plugins/cppeditor/cpptoolssettings.h b/src/plugins/cppeditor/cpptoolssettings.h index 3f31d72ff0e..2a4a08864b4 100644 --- a/src/plugins/cppeditor/cpptoolssettings.h +++ b/src/plugins/cppeditor/cpptoolssettings.h @@ -58,9 +58,6 @@ public: bool sortedEditorDocumentOutline() const; void setSortedEditorDocumentOutline(bool sorted); - bool showHeaderErrorInfoBar() const; - void setShowHeaderErrorInfoBar(bool show); - bool showNoProjectInfoBar() const; void setShowNoProjectInfoBar(bool show);