4#ifndef QUTIMIMECONVERTER_H
5#define QUTIMIMECONVERTER_H
7#include <QtGui/qtguiglobal.h>
9#include <QtCore/qlist.h>
20 Q_DISABLE_COPY(QUtiMimeConverter)
22 enum class HandlerScopeFlag : uint8_t
27 Qt3_compatible = 0x08,
29 AllCompatible = All|Qt_compatible
31 Q_DECLARE_FLAGS(HandlerScope, HandlerScopeFlag)
34 virtual ~QUtiMimeConverter();
37 bool canConvert(
const QString &mime,
const QString &uti)
const {
return mimeForUti(uti) == mime; }
41 virtual QString
utiForMime(
const QString &mime)
const = 0;
44 virtual QString
mimeForUti(
const QString &uti)
const = 0;
45 virtual QVariant
convertToMime(
const QString &mime,
const QList<QByteArray> &data,
const QString &uti)
const = 0;
46 virtual int count(
const QMimeData *mimeData)
const;
49 friend class QMacMimeTypeName;
52 explicit QUtiMimeConverter(HandlerScope scope);
54 const HandlerScope m_scope;
56Q_DECLARE_OPERATORS_FOR_FLAGS(QUtiMimeConverter::HandlerScope)
QList< QUtiMimeConverter * > MimeList
The QUtiMimeConverter class converts between a MIME type and a \l{https://developer....
virtual QString utiForMime(const QString &mime) const =0
Returns the Mac UTI used for MIME type mime, or an empty string if this converter does not support co...
bool canConvert(const QString &mime, const QString &uti) const
Returns true if the converter can convert (both ways) between mime and uti; otherwise returns false.
virtual QString mimeForUti(const QString &uti) const =0
Returns the MIME type used for Mac UTI uti, or an empty string if this converter does not support con...
virtual QList< QByteArray > convertFromMime(const QString &mime, const QVariant &data, const QString &uti) const =0
Returns data converted from MIME type mime to Mac UTI uti.
virtual QVariant convertToMime(const QString &mime, const QList< QByteArray > &data, const QString &uti) const =0
Returns data converted from Mac UTI uti to MIME type mime.
HandlerScope scope() const
virtual int count(const QMimeData *mimeData) const
Returns the item count for the given mimeData.
void unregisterMimeConverter(QUtiMimeConverter *macMime)
void initializeMimeTypes()
const QStringList & enabledDraggedTypes()
QList< QUtiMimeConverter * > all(QUtiMimeConverter::HandlerScope scope)
QString flavorToMime(QUtiMimeConverter::HandlerScope scope, const QString &uti)
void registerDraggedTypes(const QStringList &types)
void registerMimeConverter(QUtiMimeConverter *macMime)