summaryrefslogtreecommitdiffstats
path: root/src/mimetypes/qmimetyperegistry.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/mimetypes/qmimetyperegistry.h')
-rw-r--r--src/mimetypes/qmimetyperegistry.h126
1 files changed, 126 insertions, 0 deletions
diff --git a/src/mimetypes/qmimetyperegistry.h b/src/mimetypes/qmimetyperegistry.h
new file mode 100644
index 0000000..29f5ece
--- /dev/null
+++ b/src/mimetypes/qmimetyperegistry.h
@@ -0,0 +1,126 @@
+#ifndef MIMETYPES_H_INCLUDED
+#define MIMETYPES_H_INCLUDED
+
+#include "qmimetype.h"
+#include "qmimetypesfwd.h"
+#include "qserviceaction.h"
+
+#include <QtCore/QList>
+#include <QtCore/QPair>
+
+class QMimeTypeRegistryPrivate;
+
+class QByteArray;
+
+// ------------------------------------------------------------------------------------------------
+
+class QMimeTypeRegistry
+{
+public:
+ QMimeTypeRegistry();
+
+ ~QMimeTypeRegistry();
+
+ // --------------------------------------------------------------------------------------------
+
+ void insertMimeType (
+ const QMimeType &mimeType
+ );
+
+ QList<QMimeTypeName> mimeTypes() const;
+
+ QMimeType findMimeType (
+ const QMimeTypeName &mimeTypeName
+ ) const;
+
+ void removeMimeType (
+ const QMimeTypeName &mimeTypeName
+ );
+
+ // --------------------------------------------------------------------------------------------
+
+ QList<QString> fileExtentions() const;
+
+ QString extractFileExtention (
+ const QString &fileName
+ ) const;
+
+ QList<QMimeTypeName> findMimeTypes (
+ const QString &fileExtention
+ ) const;
+
+ // --------------------------------------------------------------------------------------------
+
+ QMimeTypeName determineMimeType (
+ const QByteArray &data
+ ) const;
+
+ // --------------------------------------------------------------------------------------------
+
+ void insertServiceAction (
+ const QServiceAction &serviceAction
+ );
+
+ QList<QServiceActionName> serviceActions() const;
+
+ QServiceAction findServiceAction (
+ const QServiceActionName &serviceActionName
+ );
+
+ void removeServiceAction (
+ const QServiceActionName &serviceActionName
+ );
+
+ // --------------------------------------------------------------------------------------------
+
+ bool userAlwaysSelectsApplication (
+ const QServiceActionName &serviceActionName,
+ const QMimeTypeName &mimeTypeName
+ ) const;
+
+ void setUserAlwaysSelectsApplication (
+ const QServiceActionName &serviceActionName,
+ const QMimeTypeName &mimeTypeName,
+ const bool newSetting
+ );
+
+ // --------------------------------------------------------------------------------------------
+
+ void registerApplication (
+ const QApplicationId &applicationId,
+ const QServiceActionName &serviceActionName,
+ const QMimeTypeName &mimeTypeName
+ );
+
+ void increaseApplicationPreference (
+ const QApplicationId &applicationId,
+ const QServiceActionName &serviceActionName,
+ const QMimeTypeName &mimeTypeName
+ );
+
+ void decreaseApplicationPreference (
+ const QApplicationId &applicationId,
+ const QServiceActionName &serviceActionName,
+ const QMimeTypeName &mimeTypeName
+ );
+
+ void unregisterApplication (
+ const QApplicationId &applicationId
+ );
+
+ QList<QPair<QApplicationId, QServiceActionName> > findApplications (
+ const QMimeTypeName &mimeTypeName
+ ) const;
+
+ QList<QApplicationId> findApplications (
+ const QServiceActionName &serviceActionName,
+ const QMimeTypeName &mimeTypeName
+ ) const;
+
+ // --------------------------------------------------------------------------------------------
+
+private:
+ QMimeTypeRegistryPrivate *d_ptr;
+};
+
+#endif