aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/projectexplorer/buildpropertiessettings.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/projectexplorer/buildpropertiessettings.cpp')
-rw-r--r--src/plugins/projectexplorer/buildpropertiessettings.cpp73
1 files changed, 21 insertions, 52 deletions
diff --git a/src/plugins/projectexplorer/buildpropertiessettings.cpp b/src/plugins/projectexplorer/buildpropertiessettings.cpp
index a9126551e3e..6df8fdd328e 100644
--- a/src/plugins/projectexplorer/buildpropertiessettings.cpp
+++ b/src/plugins/projectexplorer/buildpropertiessettings.cpp
@@ -16,15 +16,33 @@ namespace ProjectExplorer {
const char DEFAULT_BUILD_DIRECTORY_TEMPLATE[]
= "../%{JS: Util.asciify(\"build-%{Project:Name}-%{Kit:FileSystemName}-%{BuildConfig:Name}\")}";
-BuildPropertiesSettings::BuildTriStateAspect::BuildTriStateAspect()
- : TriStateAspect{Tr::tr("Enable"), Tr::tr("Disable"), Tr::tr("Use Project Default")}
+BuildPropertiesSettings::BuildTriStateAspect::BuildTriStateAspect(AspectContainer *container)
+ : TriStateAspect(container, Tr::tr("Enable"), Tr::tr("Disable"), Tr::tr("Use Project Default"))
{}
BuildPropertiesSettings::BuildPropertiesSettings()
{
setAutoApply(false);
- registerAspect(&buildDirectoryTemplate);
+ setId("AB.ProjectExplorer.BuildPropertiesSettingsPage");
+ setDisplayName(Tr::tr("Default Build Properties"));
+ setCategory(ProjectExplorer::Constants::BUILD_AND_RUN_SETTINGS_CATEGORY);
+ setSettings(this);
+
+ setLayouter([this] {
+ using namespace Layouting;
+
+ return Column {
+ Form {
+ buildDirectoryTemplate, br,
+ separateDebugInfo, br,
+ qmlDebugging, br,
+ qtQuickCompiler
+ },
+ st
+ };
+ });
+
buildDirectoryTemplate.setDisplayStyle(StringAspect::LineEditDisplay);
buildDirectoryTemplate.setSettingsKey("Directories/BuildDirectory.TemplateV2");
buildDirectoryTemplate.setDefaultValue(DEFAULT_BUILD_DIRECTORY_TEMPLATE);
@@ -32,19 +50,12 @@ BuildPropertiesSettings::BuildPropertiesSettings()
buildDirectoryTemplate.setUseGlobalMacroExpander();
buildDirectoryTemplate.setUseResetButton();
- registerAspect(&buildDirectoryTemplateOld); // TODO: Remove in ~4.16
- buildDirectoryTemplateOld.setSettingsKey("Directories/BuildDirectory.Template");
- buildDirectoryTemplateOld.setDefaultValue(DEFAULT_BUILD_DIRECTORY_TEMPLATE);
-
- registerAspect(&separateDebugInfo);
separateDebugInfo.setSettingsKey("ProjectExplorer/Settings/SeparateDebugInfo");
separateDebugInfo.setLabelText(Tr::tr("Separate debug info:"));
- registerAspect(&qmlDebugging);
qmlDebugging.setSettingsKey("ProjectExplorer/Settings/QmlDebugging");
qmlDebugging.setLabelText(Tr::tr("QML debugging:"));
- registerAspect(&qtQuickCompiler);
qtQuickCompiler.setSettingsKey("ProjectExplorer/Settings/QtQuickCompiler");
qtQuickCompiler.setLabelText(Tr::tr("Use qmlcachegen:"));
@@ -54,51 +65,9 @@ BuildPropertiesSettings::BuildPropertiesSettings()
&qtQuickCompiler, &BaseAspect::setVisible);
}
-void BuildPropertiesSettings::readSettings(QSettings *s)
-{
- AspectContainer::readSettings(s);
-
- // TODO: Remove in ~4.16
- QString v = buildDirectoryTemplate.value();
- if (v.isEmpty())
- v = buildDirectoryTemplateOld.value();
- if (v.isEmpty())
- v = DEFAULT_BUILD_DIRECTORY_TEMPLATE;
- v.replace("%{CurrentProject:Name}", "%{Project:Name}");
- v.replace("%{CurrentKit:FileSystemName}", "%{Kit:FileSystemName}");
- v.replace("%{CurrentBuild:Name}", "%{BuildConfig:Name}");
- buildDirectoryTemplate.setValue(v);
-}
-
QString BuildPropertiesSettings::defaultBuildDirectoryTemplate()
{
return QString(DEFAULT_BUILD_DIRECTORY_TEMPLATE);
}
-namespace Internal {
-
-BuildPropertiesSettingsPage::BuildPropertiesSettingsPage(BuildPropertiesSettings *settings)
-{
- setId("AB.ProjectExplorer.BuildPropertiesSettingsPage");
- setDisplayName(Tr::tr("Default Build Properties"));
- setCategory(ProjectExplorer::Constants::BUILD_AND_RUN_SETTINGS_CATEGORY);
- setSettings(settings);
-
- setLayouter([settings](QWidget *widget) {
- BuildPropertiesSettings &s = *settings;
- using namespace Layouting;
-
- Column {
- Form {
- s.buildDirectoryTemplate,
- s.separateDebugInfo,
- s.qmlDebugging,
- s.qtQuickCompiler
- },
- st
- }.attachTo(widget);
- });
-}
-
-} // Internal
} // ProjectExplorer