aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/qmlprofiler
diff options
context:
space:
mode:
authorhjk <hjk@qt.io>2019-08-30 15:57:22 +0200
committerhjk <hjk@qt.io>2019-09-02 10:10:33 +0000
commit2399e4476b1ba6f53972cb9e8d7751a0f6ef2938 (patch)
tree2e67b715db5c5f2c0d39bf707654b610fbbe9c8e /src/plugins/qmlprofiler
parenta34d84fa4d005e02697b5395e851e086aac002d8 (diff)
QmlProfiler: Reduce code size for feature menu setup
Change-Id: Ied31be4c880f2e38935830e35afb20435d7f74b2 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
Diffstat (limited to 'src/plugins/qmlprofiler')
-rw-r--r--src/plugins/qmlprofiler/qmlprofilertool.cpp28
-rw-r--r--src/plugins/qmlprofiler/qmlprofilertool.h2
2 files changed, 8 insertions, 22 deletions
diff --git a/src/plugins/qmlprofiler/qmlprofilertool.cpp b/src/plugins/qmlprofiler/qmlprofilertool.cpp
index 9caef0885c..4964316509 100644
--- a/src/plugins/qmlprofiler/qmlprofilertool.cpp
+++ b/src/plugins/qmlprofiler/qmlprofilertool.cpp
@@ -716,25 +716,6 @@ void addFeatureToMenu(QMenu *menu, ProfileFeature feature, quint64 enabledFeatur
action->setChecked(enabledFeatures & (1ULL << (feature)));
}
-template<ProfileFeature feature>
-void QmlProfilerTool::updateFeatures(quint64 features)
-{
- if (features & (1ULL << (feature))) {
- addFeatureToMenu(d->m_recordFeaturesMenu, feature,
- d->m_profilerState->requestedFeatures());
- addFeatureToMenu(d->m_displayFeaturesMenu, feature,
- d->m_profilerModelManager->visibleFeatures());
- }
- updateFeatures<static_cast<ProfileFeature>(feature + 1)>(features);
-}
-
-template<>
-void QmlProfilerTool::updateFeatures<MaximumProfileFeature>(quint64 features)
-{
- Q_UNUSED(features)
- return;
-}
-
void QmlProfilerTool::setAvailableFeatures(quint64 features)
{
if (features != d->m_profilerState->requestedFeatures())
@@ -742,7 +723,14 @@ void QmlProfilerTool::setAvailableFeatures(quint64 features)
if (d->m_recordFeaturesMenu && d->m_displayFeaturesMenu) {
d->m_recordFeaturesMenu->clear();
d->m_displayFeaturesMenu->clear();
- updateFeatures<static_cast<ProfileFeature>(0)>(features);
+ for (int feature = 0; feature < MaximumProfileFeature; ++feature) {
+ if (features & (1ULL << feature)) {
+ addFeatureToMenu(d->m_recordFeaturesMenu, ProfileFeature(feature),
+ d->m_profilerState->requestedFeatures());
+ addFeatureToMenu(d->m_displayFeaturesMenu, ProfileFeature(feature),
+ d->m_profilerModelManager->visibleFeatures());
+ }
+ }
}
}
diff --git a/src/plugins/qmlprofiler/qmlprofilertool.h b/src/plugins/qmlprofiler/qmlprofilertool.h
index 77759cc690..f6d02bdc6c 100644
--- a/src/plugins/qmlprofiler/qmlprofilertool.h
+++ b/src/plugins/qmlprofiler/qmlprofilertool.h
@@ -102,8 +102,6 @@ private:
void updateRunActions();
void clearDisplay();
- template<ProfileFeature feature>
- void updateFeatures(quint64 features);
bool checkForUnsavedNotes();
void setButtonsEnabled(bool enable);
void createInitialTextMarks();