summaryrefslogtreecommitdiff
path: root/src/plugins/qt4projectmanager
diff options
context:
space:
mode:
authorPawel Polanski <pawel.3.polanski@nokia.com>2010-12-21 13:22:36 +0100
committerPawel Polanski <pawel.3.polanski@nokia.com>2010-12-21 13:28:50 +0100
commitdc921cc5408fe8845c32918c1e8eab65f3e01f28 (patch)
tree3495a20d2c3b05f86d1787422fda91a2daa9180a /src/plugins/qt4projectmanager
parente414335f26986d8786a6a158e5b9c6c1bd489de0 (diff)
downloadqt-creator-dc921cc5408fe8845c32918c1e8eab65f3e01f28.tar.gz
Symbian: small change in cert's capabilities
Diffstat (limited to 'src/plugins/qt4projectmanager')
-rw-r--r--src/plugins/qt4projectmanager/qt-s60/s60certificateinfo.cpp53
1 files changed, 38 insertions, 15 deletions
diff --git a/src/plugins/qt4projectmanager/qt-s60/s60certificateinfo.cpp b/src/plugins/qt4projectmanager/qt-s60/s60certificateinfo.cpp
index 5236ba8fc3..204d5ae39e 100644
--- a/src/plugins/qt4projectmanager/qt-s60/s60certificateinfo.cpp
+++ b/src/plugins/qt4projectmanager/qt-s60/s60certificateinfo.cpp
@@ -38,6 +38,7 @@
#include <QCoreApplication>
#include <QTextStream>
#include <QHash>
+#include <QMutableHashIterator>
#include "s60symbiancertificate.h"
@@ -90,17 +91,7 @@ static const CapabilitySet capabilitySet[] =
{ "red", S60CertificateInfo::ManufacturerCapabilities }
};
-QStringList createCapabilityList(uint capabilities)
-{
- const int capabilityCount = sizeof(capability)/sizeof(capability[0]);
- QStringList capabilityList;
- for(int i = 0; i < capabilityCount; ++i)
- if (capabilities&capability[i].value)
- capabilityList << QLatin1String(capability[i].name);
- return capabilityList;
-}
-
-QStringList createHtmlCapabilityList(uint capabilities)
+QHash<int, QStringList> createCapabilityMap(uint capabilities)
{
const int capabilityCount = sizeof(capability)/sizeof(capability[0]);
const int capabilitySetCount = sizeof(capabilitySet)/sizeof(capabilitySet[0]);
@@ -110,20 +101,52 @@ QStringList createHtmlCapabilityList(uint capabilities)
if (capabilities&capability[i].value) {
for (int j = 0; j < capabilitySetCount; ++j)
if (capability[i].value&capabilitySet[j].value) {
- capabilityMap[capabilitySet[j].value]
- << QString("<font color=\"%1\">%2</font>")
- .arg(QLatin1String(capabilitySet[j].color))
- .arg(QLatin1String(capability[i].name));
+ capabilityMap[capabilitySet[j].value] << capability[i].name;
break;
}
}
+ QMutableHashIterator<int, QStringList> i(capabilityMap);
+ while (i.hasNext()) {
+ i.next();
+ i.value().sort();
+ }
+
+ return capabilityMap;
+}
+
+QStringList createCapabilityList(uint capabilities)
+{
+ QHash<int, QStringList> capabilityMap(createCapabilityMap(capabilities));
+
return capabilityMap[S60CertificateInfo::UserCapabilities]
+ capabilityMap[S60CertificateInfo::SystemCapabilities]
+ capabilityMap[S60CertificateInfo::RestrictedCapabilities]
+ capabilityMap[S60CertificateInfo::ManufacturerCapabilities];
}
+QStringList createHtmlCapabilityList(uint capabilities)
+{
+ const int capabilitySetCount = sizeof(capabilitySet)/sizeof(capabilitySet[0]);
+ QHash<int, QStringList> capabilityMap(createCapabilityMap(capabilities));
+ QStringList result;
+
+ for (int j = 0; j < capabilitySetCount; ++j) {
+ QHashIterator<int, QStringList> i(capabilityMap);
+ while (i.hasNext()) {
+ i.next();
+ if (i.key() == capabilitySet[j].value) {
+ foreach (QString capability, i.value()) {
+ result << QString("<font color=\"%1\">%2</font>")
+ .arg(capabilitySet[j].color).arg(capability);
+ }
+ break;
+ }
+ }
+ }
+ return result;
+}
+
S60CertificateInfo::S60CertificateInfo(const QString &filePath, QObject* parent)
: QObject(parent),
m_certificate(new S60SymbianCertificate(filePath)),