aboutsummaryrefslogtreecommitdiffstats
path: root/src/libs/utils/mimetypes/mimedatabase.h
diff options
context:
space:
mode:
authorhjk <hjk@qt.io>2017-03-02 12:07:11 +0100
committerhjk <hjk@qt.io>2017-03-03 07:57:54 +0000
commit3f5caf4cdcb66e5187a9d33bbd2fa67d3bddd50d (patch)
tree1ad8ac1679aedae5cb84d499966819c6265b5af8 /src/libs/utils/mimetypes/mimedatabase.h
parent2cd8378148362b53a29d2166136f248281293f30 (diff)
Utils: Wrap MimeDatabase into static functions
To avoid repeating the 'MimeDatabase mdb; mdb.something(); ' mantra all over the place. Change-Id: I4bfef62e73275a991455141671d6071162788e9d Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Diffstat (limited to 'src/libs/utils/mimetypes/mimedatabase.h')
-rw-r--r--src/libs/utils/mimetypes/mimedatabase.h89
1 files changed, 31 insertions, 58 deletions
diff --git a/src/libs/utils/mimetypes/mimedatabase.h b/src/libs/utils/mimetypes/mimedatabase.h
index f962c35eb3..021accf78d 100644
--- a/src/libs/utils/mimetypes/mimedatabase.h
+++ b/src/libs/utils/mimetypes/mimedatabase.h
@@ -44,72 +44,45 @@
#include <utils/utils_global.h>
-#include <QtCore/qstringlist.h>
-
QT_BEGIN_NAMESPACE
-class QByteArray;
class QFileInfo;
-class QIODevice;
-class QUrl;
QT_END_NAMESPACE
namespace Utils {
-namespace Internal { class MimeDatabasePrivate; }
-
-class QTCREATOR_UTILS_EXPORT MimeDatabase
-{
- Q_DISABLE_COPY(MimeDatabase)
-
-public:
- MimeDatabase();
- ~MimeDatabase();
-
- MimeType mimeTypeForName(const QString &nameOrAlias) const;
-
- enum MatchMode {
- MatchDefault = 0x0,
- MatchExtension = 0x1,
- MatchContent = 0x2
- };
-
- MimeType mimeTypeForFile(const QString &fileName, MatchMode mode = MatchDefault) const;
- MimeType mimeTypeForFile(const QFileInfo &fileInfo, MatchMode mode = MatchDefault) const;
- QList<MimeType> mimeTypesForFileName(const QString &fileName) const;
-
- MimeType mimeTypeForData(const QByteArray &data) const;
- MimeType mimeTypeForData(QIODevice *device) const;
+// Wrapped QMimeDataBase functions
+QTCREATOR_UTILS_EXPORT MimeType mimeTypeForName(const QString &nameOrAlias);
- MimeType mimeTypeForUrl(const QUrl &url) const;
- MimeType mimeTypeForFileNameAndData(const QString &fileName, QIODevice *device) const;
- MimeType mimeTypeForFileNameAndData(const QString &fileName, const QByteArray &data) const;
-
- QString suffixForFileName(const QString &fileName) const;
-
- QList<MimeType> allMimeTypes() const;
-
- // Qt Creator additions
- static void addMimeTypes(const QString &id, const QByteArray &data);
- static QString allFiltersString(QString *allFilesFilter = 0);
- static QString allFilesFilterString();
- static QStringList allGlobPatterns();
- static QMap<int, QList<Internal::MimeMagicRule> > magicRulesForMimeType(const MimeType &mimeType); // priority -> rules
- static void setGlobPatternsForMimeType(const MimeType &mimeType, const QStringList &patterns);
- static void setMagicRulesForMimeType(const MimeType &mimeType,
- const QMap<int, QList<Internal::MimeMagicRule> > &rules); // priority -> rules
-
- // For debugging purposes.
- enum StartupPhase {
- BeforeInitialize,
- PluginsLoading,
- PluginsInitializing, // Register up to here.
- PluginsDelayedInitializing, // Use from here on.
- UpAndRunning
- };
- static void setStartupPhase(StartupPhase);
+enum class MimeMatchMode {
+ MatchDefault = 0x0,
+ MatchExtension = 0x1,
+ MatchContent = 0x2
+};
-private:
- Internal::MimeDatabasePrivate *d;
+QTCREATOR_UTILS_EXPORT MimeType mimeTypeForFile(const QString &fileName, MimeMatchMode mode = MimeMatchMode::MatchDefault);
+QTCREATOR_UTILS_EXPORT MimeType mimeTypeForFile(const QFileInfo &fileInfo, MimeMatchMode mode = MimeMatchMode::MatchDefault);
+QTCREATOR_UTILS_EXPORT QList<MimeType> mimeTypesForFileName(const QString &fileName);
+QTCREATOR_UTILS_EXPORT MimeType mimeTypeForData(const QByteArray &data);
+QTCREATOR_UTILS_EXPORT QList<MimeType> allMimeTypes();
+
+// Qt Creator additions
+// For debugging purposes.
+enum class MimeStartupPhase {
+ BeforeInitialize,
+ PluginsLoading,
+ PluginsInitializing, // Register up to here.
+ PluginsDelayedInitializing, // Use from here on.
+ UpAndRunning
};
+QTCREATOR_UTILS_EXPORT void setMimeStartupPhase(MimeStartupPhase);
+QTCREATOR_UTILS_EXPORT void addMimeTypes(const QString &id, const QByteArray &data);
+QTCREATOR_UTILS_EXPORT QString allFiltersString(QString *allFilesFilter = 0);
+QTCREATOR_UTILS_EXPORT QString allFilesFilterString();
+QTCREATOR_UTILS_EXPORT QStringList allGlobPatterns();
+QTCREATOR_UTILS_EXPORT QMap<int, QList<Internal::MimeMagicRule> > magicRulesForMimeType(const MimeType &mimeType); // priority -> rules
+QTCREATOR_UTILS_EXPORT void setGlobPatternsForMimeType(const MimeType &mimeType, const QStringList &patterns);
+QTCREATOR_UTILS_EXPORT void setMagicRulesForMimeType(const MimeType &mimeType,
+ const QMap<int, QList<Internal::MimeMagicRule> > &rules); // priority -> rules
+
} // Utils