forked from qt-creator/qt-creator
ClangTools: Remove pointless "Disable" setting for clang-tidy
...as unchecking the root item in the tree has the same effect. Change-Id: I960ea2c09a71dad3b0ba3dfb38a19055653354cd Reviewed-by: Cristian Adam <cristian.adam@qt.io>
This commit is contained in:
@@ -258,7 +258,7 @@ QList<RunnerCreator> ClangToolRunWorker::runnerCreators()
|
||||
{
|
||||
QList<RunnerCreator> creators;
|
||||
|
||||
if (m_diagnosticConfig.clangTidyMode() != CppTools::ClangDiagnosticConfig::TidyMode::Disabled)
|
||||
if (m_diagnosticConfig.clangTidyChecks() != "-*")
|
||||
creators << [this]() { return createRunner<ClangTidyRunner>(); };
|
||||
|
||||
if (!m_diagnosticConfig.clazyChecks().isEmpty()) {
|
||||
|
||||
@@ -118,8 +118,7 @@ ClangDiagnosticConfigs importDiagnosticConfigsFromCodeModel()
|
||||
ClangDiagnosticConfigs clangOnlyConfigs;
|
||||
std::tie(tidyClazyConfigs, clangOnlyConfigs)
|
||||
= Utils::partition(configs, [](const ClangDiagnosticConfig &config) {
|
||||
return !config.clazyChecks().isEmpty()
|
||||
|| config.clangTidyMode() != ClangDiagnosticConfig::TidyMode::Disabled;
|
||||
return !config.clazyChecks().isEmpty() || config.clangTidyChecks() != "-*";
|
||||
});
|
||||
|
||||
if (!tidyClazyConfigs.isEmpty()) {
|
||||
|
||||
@@ -812,21 +812,16 @@ void DiagnosticConfigsWidget::syncClangTidyWidgets(const ClangDiagnosticConfig &
|
||||
|
||||
disconnectClangTidyItemChanged();
|
||||
|
||||
ClangDiagnosticConfig::TidyMode tidyMode = config.clangTidyMode();
|
||||
|
||||
const int newIndex = tidyMode == ClangDiagnosticConfig::TidyMode::Default
|
||||
? int(ClangDiagnosticConfig::TidyMode::ChecksPrefixList)
|
||||
: int(tidyMode);
|
||||
|
||||
m_tidyChecks->tidyMode->setCurrentIndex(newIndex);
|
||||
const ClangDiagnosticConfig::TidyMode tidyMode = config.clangTidyMode();
|
||||
switch (tidyMode) {
|
||||
case ClangDiagnosticConfig::TidyMode::Disabled:
|
||||
case ClangDiagnosticConfig::TidyMode::File:
|
||||
m_tidyChecks->tidyMode->setCurrentIndex(1);
|
||||
m_tidyChecks->plainTextEditButton->setVisible(false);
|
||||
m_tidyChecks->stackedWidget->setCurrentIndex(TidyPages::EmptyPage);
|
||||
break;
|
||||
case ClangDiagnosticConfig::TidyMode::ChecksPrefixList:
|
||||
case ClangDiagnosticConfig::TidyMode::Default:
|
||||
m_tidyChecks->tidyMode->setCurrentIndex(0);
|
||||
if (m_tidyInfo.supportedChecks.isEmpty()) {
|
||||
m_tidyChecks->plainTextEditButton->setVisible(false);
|
||||
m_tidyChecks->stackedWidget->setCurrentIndex(TidyPages::InvalidExecutablePage);
|
||||
@@ -926,8 +921,12 @@ void DiagnosticConfigsWidget::disconnectClazyItemChanged()
|
||||
|
||||
void DiagnosticConfigsWidget::onClangTidyModeChanged(int index)
|
||||
{
|
||||
const ClangDiagnosticConfig::TidyMode tidyMode
|
||||
= index == 0 ? ClangDiagnosticConfig::TidyMode::ChecksPrefixList
|
||||
: ClangDiagnosticConfig::TidyMode::File;
|
||||
|
||||
ClangDiagnosticConfig config = currentConfig();
|
||||
config.setClangTidyMode(static_cast<ClangDiagnosticConfig::TidyMode>(index));
|
||||
config.setClangTidyMode(tidyMode);
|
||||
updateConfig(config);
|
||||
syncClangTidyWidgets(config);
|
||||
}
|
||||
|
||||
@@ -30,11 +30,6 @@
|
||||
<layout class="QHBoxLayout" name="horizontalLayout">
|
||||
<item>
|
||||
<widget class="QComboBox" name="tidyMode">
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>Disable</string>
|
||||
</property>
|
||||
</item>
|
||||
<item>
|
||||
<property name="text">
|
||||
<string>Select Checks</string>
|
||||
|
||||
@@ -190,10 +190,14 @@ ClangDiagnosticConfigs diagnosticConfigsFromSettings(QSettings *s)
|
||||
config.setId(Core::Id::fromSetting(s->value(diagnosticConfigIdKey)));
|
||||
config.setDisplayName(s->value(diagnosticConfigDisplayNameKey).toString());
|
||||
config.setClangOptions(s->value(diagnosticConfigWarningsKey).toStringList());
|
||||
config.setClangTidyMode(static_cast<ClangDiagnosticConfig::TidyMode>(
|
||||
s->value(diagnosticConfigsTidyModeKey).toInt()));
|
||||
config.setClangTidyChecks(
|
||||
s->value(diagnosticConfigsTidyChecksKey).toString());
|
||||
const int tidyModeValue = s->value(diagnosticConfigsTidyModeKey).toInt();
|
||||
if (tidyModeValue == 0) { // Convert from settings of <= Qt Creator 4.10
|
||||
config.setClangTidyMode(ClangDiagnosticConfig::TidyMode::ChecksPrefixList);
|
||||
config.setClangTidyChecks("-*");
|
||||
} else {
|
||||
config.setClangTidyMode(static_cast<ClangDiagnosticConfig::TidyMode>(tidyModeValue));
|
||||
config.setClangTidyChecks(s->value(diagnosticConfigsTidyChecksKey).toString());
|
||||
}
|
||||
|
||||
config.setClazyMode(static_cast<ClangDiagnosticConfig::ClazyMode>(
|
||||
s->value(diagnosticConfigsClazyModeKey).toInt()));
|
||||
|
||||
@@ -60,8 +60,8 @@ public:
|
||||
// Clang-Tidy
|
||||
enum class TidyMode
|
||||
{
|
||||
Disabled,
|
||||
ChecksPrefixList,
|
||||
// Disabled, // Used by Qt Creator 4.10 and below.
|
||||
ChecksPrefixList = 1,
|
||||
File,
|
||||
Default,
|
||||
};
|
||||
@@ -90,7 +90,7 @@ private:
|
||||
Core::Id m_id;
|
||||
QString m_displayName;
|
||||
QStringList m_clangOptions;
|
||||
TidyMode m_clangTidyMode = TidyMode::Disabled;
|
||||
TidyMode m_clangTidyMode = TidyMode::Default;
|
||||
QString m_clangTidyChecks;
|
||||
QString m_clazyChecks;
|
||||
ClazyMode m_clazyMode = ClazyMode::Default;
|
||||
|
||||
Reference in New Issue
Block a user