summaryrefslogtreecommitdiff
path: root/rbutil/rbutilqt/base/systeminfo.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'rbutil/rbutilqt/base/systeminfo.cpp')
-rw-r--r--rbutil/rbutilqt/base/systeminfo.cpp15
1 files changed, 11 insertions, 4 deletions
diff --git a/rbutil/rbutilqt/base/systeminfo.cpp b/rbutil/rbutilqt/base/systeminfo.cpp
index 3760901c15..ff221db63d 100644
--- a/rbutil/rbutilqt/base/systeminfo.cpp
+++ b/rbutil/rbutilqt/base/systeminfo.cpp
@@ -107,7 +107,7 @@ QVariant SystemInfo::platformValue(QString platform, enum SystemInfos info)
107 return systemInfos->value(s, d); 107 return systemInfos->value(s, d);
108} 108}
109 109
110QStringList SystemInfo::platforms() 110QStringList SystemInfo::platforms(enum SystemInfo::PlatformType type, QString variant)
111{ 111{
112 ensureSystemInfoExists(); 112 ensureSystemInfoExists();
113 113
@@ -117,10 +117,17 @@ QStringList SystemInfo::platforms()
117 systemInfos->endGroup(); 117 systemInfos->endGroup();
118 for(int i = 0; i < a.size(); i++) 118 for(int i = 0; i < a.size(); i++)
119 { 119 {
120 //only add not disabled targets
121 QString target = systemInfos->value("platforms/"+a.at(i), "null").toString(); 120 QString target = systemInfos->value("platforms/"+a.at(i), "null").toString();
122 if(systemInfos->value(target+"/status").toString() != "disabled") 121 // only add target if its not disabled
123 result.append(target); 122 if(systemInfos->value(target+"/status").toString() == "disabled")
123 continue;
124 // report only base targets when PlatformBase is requested
125 if(type == PlatformBase && target.contains('.'))
126 continue;
127 // report only matching target if PlatformVariant is requested
128 if(type == PlatformVariant && !target.startsWith(variant))
129 continue;
130 result.append(target);
124 } 131 }
125 return result; 132 return result;
126} 133}