Clang: Sync ClangProjectSettingsWidget to changed settings

Change-Id: Ic123c8a3b10a18d9f9313462a682c470eb3ffdaf
Reviewed-by: Ivan Donchevskii <ivan.donchevskii@qt.io>
This commit is contained in:
Nikolai Kosjar
2019-01-29 16:12:31 +01:00
parent 9ef8ea3d7d
commit e101a629dd
2 changed files with 17 additions and 3 deletions

View File

@@ -61,8 +61,6 @@ ClangProjectSettingsWidget::ClangProjectSettingsWidget(ProjectExplorer::Project
m_ui.delayedTemplateParseCheckBox->setVisible(Utils::HostOsInfo::isWindowsHost()); m_ui.delayedTemplateParseCheckBox->setVisible(Utils::HostOsInfo::isWindowsHost());
m_ui.globalOrCustomComboBox->setCurrentIndex(m_projectSettings.useGlobalConfig() ? 0 : 1);
connect(m_ui.clangDiagnosticConfigsSelectionWidget, connect(m_ui.clangDiagnosticConfigsSelectionWidget,
&ClangDiagnosticConfigsSelectionWidget::currentConfigChanged, &ClangDiagnosticConfigsSelectionWidget::currentConfigChanged,
this, &ClangProjectSettingsWidget::onCurrentWarningConfigChanged); this, &ClangProjectSettingsWidget::onCurrentWarningConfigChanged);
@@ -75,10 +73,12 @@ ClangProjectSettingsWidget::ClangProjectSettingsWidget(ProjectExplorer::Project
connect(project, &ProjectExplorer::Project::aboutToSaveSettings, connect(project, &ProjectExplorer::Project::aboutToSaveSettings,
this, &ClangProjectSettingsWidget::onAboutToSaveProjectSettings); this, &ClangProjectSettingsWidget::onAboutToSaveProjectSettings);
connect(&m_projectSettings, &ClangProjectSettings::changed,
this, &ClangProjectSettingsWidget::syncWidgets);
connect(CppTools::codeModelSettings().data(), &CppTools::CppCodeModelSettings::changed, connect(CppTools::codeModelSettings().data(), &CppTools::CppCodeModelSettings::changed,
this, &ClangProjectSettingsWidget::syncOtherWidgetsToComboBox); this, &ClangProjectSettingsWidget::syncOtherWidgetsToComboBox);
syncOtherWidgetsToComboBox(); syncWidgets();
} }
void ClangProjectSettingsWidget::onCurrentWarningConfigChanged(const Core::Id &currentConfigId) void ClangProjectSettingsWidget::onCurrentWarningConfigChanged(const Core::Id &currentConfigId)
@@ -115,6 +115,17 @@ void ClangProjectSettingsWidget::onAboutToSaveProjectSettings()
CppTools::codeModelSettings()->toSettings(Core::ICore::settings()); CppTools::codeModelSettings()->toSettings(Core::ICore::settings());
} }
void ClangProjectSettingsWidget::syncWidgets()
{
syncGlobalCustomComboBox();
syncOtherWidgetsToComboBox();
}
void ClangProjectSettingsWidget::syncGlobalCustomComboBox()
{
m_ui.globalOrCustomComboBox->setCurrentIndex(m_projectSettings.useGlobalConfig() ? 0 : 1);
}
void ClangProjectSettingsWidget::syncOtherWidgetsToComboBox() void ClangProjectSettingsWidget::syncOtherWidgetsToComboBox()
{ {
const QStringList options = m_projectSettings.commandLineOptions(); const QStringList options = m_projectSettings.commandLineOptions();

View File

@@ -48,6 +48,9 @@ private:
void onDelayedTemplateParseClicked(bool); void onDelayedTemplateParseClicked(bool);
void onGlobalCustomChanged(int index); void onGlobalCustomChanged(int index);
void onAboutToSaveProjectSettings(); void onAboutToSaveProjectSettings();
void syncWidgets();
void syncGlobalCustomComboBox();
void syncOtherWidgetsToComboBox(); void syncOtherWidgetsToComboBox();
void refreshDiagnosticConfigsWidgetFromSettings(); void refreshDiagnosticConfigsWidgetFromSettings();