summaryrefslogtreecommitdiff
path: root/src/plugins/cpptools/cppprojectfile.cpp
diff options
context:
space:
mode:
authorEike Ziller <eike.ziller@theqtcompany.com>2015-02-04 09:32:46 +0100
committerEike Ziller <eike.ziller@theqtcompany.com>2015-02-17 13:00:07 +0000
commit5a3a940ad3b3984b308b539e7f0456ce11d4d90e (patch)
tree539ac730a9291e9630c5772d78e5de1d9d4ece1e /src/plugins/cpptools/cppprojectfile.cpp
parent365c1ddb903ebb8f183195244669499a300431d2 (diff)
downloadqt-creator-5a3a940ad3b3984b308b539e7f0456ce11d4d90e.tar.gz
Use new mime database
Change-Id: I4305872b6b11ef3e8a364280ffa5209a5a793600 Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
Diffstat (limited to 'src/plugins/cpptools/cppprojectfile.cpp')
-rw-r--r--src/plugins/cpptools/cppprojectfile.cpp31
1 files changed, 17 insertions, 14 deletions
diff --git a/src/plugins/cpptools/cppprojectfile.cpp b/src/plugins/cpptools/cppprojectfile.cpp
index 8936b2e240..56a035adc7 100644
--- a/src/plugins/cpptools/cppprojectfile.cpp
+++ b/src/plugins/cpptools/cppprojectfile.cpp
@@ -33,7 +33,8 @@
#include "cpptoolsconstants.h"
#include <coreplugin/icore.h>
-
+#include <utils/mimetypes/mimedatabase.h>
+#
#include <QDebug>
namespace CppTools {
@@ -51,11 +52,11 @@ ProjectFile::ProjectFile(const QString &file, Kind kind)
ProjectFile::Kind ProjectFile::classify(const QString &file)
{
- const QFileInfo fi(file);
- const Core::MimeType mimeType = Core::MimeDatabase::findByFile(fi);
- if (!mimeType)
+ Utils::MimeDatabase mdb;
+ const Utils::MimeType mimeType = mdb.mimeTypeForFile(file);
+ if (!mimeType.isValid())
return Unclassified;
- const QString mt = mimeType.type();
+ const QString mt = mimeType.name();
if (mt == QLatin1String(CppTools::Constants::C_SOURCE_MIMETYPE))
return CSource;
if (mt == QLatin1String(CppTools::Constants::C_HEADER_MIMETYPE))
@@ -141,20 +142,22 @@ ProjectFileAdder::~ProjectFileAdder()
bool ProjectFileAdder::maybeAdd(const QString &path)
{
- m_fileInfo.setFile(path);
- foreach (const Pair &pair, m_mapping)
- if (pair.first.matchesFile(path)) {
- m_files << ProjectFile(path, pair.second);
- return true;
- }
+ const Utils::MimeType mt = Utils::MimeDatabase::bestMatch(path, m_mimeTypes);
+ if (mt.isValid()) {
+ m_files << ProjectFile(path, m_mimeNameMapping.value(mt.name()));
+ return true;
+ }
return false;
}
void ProjectFileAdder::addMapping(const char *mimeName, ProjectFile::Kind kind)
{
- Core::MimeType mimeType = Core::MimeDatabase::findByType(QLatin1String(mimeName));
- if (!mimeType.isNull())
- m_mapping.append(Pair(mimeType, kind));
+ Utils::MimeDatabase mdb;
+ Utils::MimeType mimeType = mdb.mimeTypeForName(QLatin1String(mimeName));
+ if (mimeType.isValid()) {
+ m_mimeNameMapping.insert(mimeType.name(), kind);
+ m_mimeTypes.append(mimeType);
+ }
}
} // namespace Internal