aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/perfprofiler
diff options
context:
space:
mode:
authorhjk <hjk@qt.io>2021-04-06 18:35:27 +0200
committerhjk <hjk@qt.io>2021-04-12 13:15:13 +0000
commit454e8a31e287ebccda96c467861b58dcda5f34eb (patch)
tree424e0db69fb39819c561c2d54ddca715a09e94e9 /src/plugins/perfprofiler
parent8eb74080ab387dc4c10fa222b9d73844cc5d6c3f (diff)
Analyzer: Base ISettingsAspect on Utils::AspectContainer
Change-Id: Ib4c19d0cb167911dc50d989771dd53f3569db087 Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Diffstat (limited to 'src/plugins/perfprofiler')
-rw-r--r--src/plugins/perfprofiler/perfsettings.cpp25
-rw-r--r--src/plugins/perfprofiler/perfsettings.h6
2 files changed, 8 insertions, 23 deletions
diff --git a/src/plugins/perfprofiler/perfsettings.cpp b/src/plugins/perfprofiler/perfsettings.cpp
index dc56ca7fe11..eb7ef40c7f2 100644
--- a/src/plugins/perfprofiler/perfsettings.cpp
+++ b/src/plugins/perfprofiler/perfsettings.cpp
@@ -46,19 +46,19 @@ PerfSettings::PerfSettings(ProjectExplorer::Target *target)
return widget;
});
- group.registerAspect(&period);
+ registerAspect(&period);
period.setSettingsKey("Analyzer.Perf.Frequency");
period.setRange(250, 2147483647);
period.setDefaultValue(250);
period.setLabelText(tr("Sample period:"));
- group.registerAspect(&stackSize);
+ registerAspect(&stackSize);
stackSize.setSettingsKey("Analyzer.Perf.StackSize");
stackSize.setRange(4096, 65536);
stackSize.setDefaultValue(4096);
stackSize.setLabelText(tr("Stack snapshot size (kB):"));
- group.registerAspect(&sampleMode);
+ registerAspect(&sampleMode);
sampleMode.setSettingsKey("Analyzer.Perf.SampleMode");
sampleMode.setDisplayStyle(SelectionAspect::DisplayStyle::ComboBox);
sampleMode.setLabelText(tr("Sample mode:"));
@@ -66,7 +66,7 @@ PerfSettings::PerfSettings(ProjectExplorer::Target *target)
sampleMode.addOption({tr("event count"), {}, QString("-c")});
sampleMode.setDefaultValue(0);
- group.registerAspect(&callgraphMode);
+ registerAspect(&callgraphMode);
callgraphMode.setSettingsKey("Analyzer.Perf.CallgraphMode");
callgraphMode.setDisplayStyle(SelectionAspect::DisplayStyle::ComboBox);
callgraphMode.setLabelText(tr("Call graph mode:"));
@@ -75,11 +75,11 @@ PerfSettings::PerfSettings(ProjectExplorer::Target *target)
callgraphMode.addOption({tr("last branch record"), {}, QString("lbr")});
callgraphMode.setDefaultValue(0);
- group.registerAspect(&events);
+ registerAspect(&events);
events.setSettingsKey("Analyzer.Perf.Events");
events.setDefaultValue({"cpu-cycles"});
- group.registerAspect(&extraArguments);
+ registerAspect(&extraArguments);
extraArguments.setSettingsKey("Analyzer.Perf.ExtraArguments");
extraArguments.setDisplayStyle(StringAspect::DisplayStyle::LineEditDisplay);
extraArguments.setLabelText(tr("Additional arguments:"));
@@ -89,6 +89,8 @@ PerfSettings::PerfSettings(ProjectExplorer::Target *target)
stackSize.setEnabled(index == 0);
});
+ connect(this, &AspectContainer::fromMapFinished, this, &PerfSettings::changed);
+
readGlobalSettings();
}
@@ -122,17 +124,6 @@ void PerfSettings::writeGlobalSettings() const
settings->endGroup();
}
-void PerfSettings::toMap(QVariantMap &map) const
-{
- group.toMap(map);
-}
-
-void PerfSettings::fromMap(const QVariantMap &map)
-{
- group.fromMap(map);
- emit changed();
-}
-
QStringList PerfSettings::perfRecordArguments() const
{
QString callgraphArg = callgraphMode.itemValue().toString();
diff --git a/src/plugins/perfprofiler/perfsettings.h b/src/plugins/perfprofiler/perfsettings.h
index 3c10cec8656..839f4df689e 100644
--- a/src/plugins/perfprofiler/perfsettings.h
+++ b/src/plugins/perfprofiler/perfsettings.h
@@ -56,14 +56,8 @@ public:
Utils::StringListAspect events;
Utils::StringAspect extraArguments;
- Utils::AspectContainer group;
-
signals:
void changed();
-
-protected:
- void toMap(QVariantMap &map) const final;
- void fromMap(const QVariantMap &map) final;
};
} // namespace PerfProfiler