152 \i public.utf16-plain-text - converts to "text/plain" |
152 \i public.utf16-plain-text - converts to "text/plain" |
153 \i public.html - converts to "text/html" |
153 \i public.html - converts to "text/html" |
154 \i public.url - converts to "text/uri-list" |
154 \i public.url - converts to "text/uri-list" |
155 \i public.file-url - converts to "text/uri-list" |
155 \i public.file-url - converts to "text/uri-list" |
156 \i public.tiff - converts to "application/x-qt-image" |
156 \i public.tiff - converts to "application/x-qt-image" |
|
157 \i public.vcard - converts to "text/plain" |
157 \i com.apple.traditional-mac-plain-text - converts to "text/plain" |
158 \i com.apple.traditional-mac-plain-text - converts to "text/plain" |
158 \i com.apple.pict - converts to "application/x-qt-image" |
159 \i com.apple.pict - converts to "application/x-qt-image" |
159 \endlist |
160 \endlist |
160 |
161 |
161 When working with MIME data, Qt will interate through all instances of QMacPasteboardMime to |
162 When working with MIME data, Qt will interate through all instances of QMacPasteboardMime to |
907 ret.append(url.toEncoded()); |
908 ret.append(url.toEncoded()); |
908 } |
909 } |
909 return ret; |
910 return ret; |
910 } |
911 } |
911 |
912 |
|
913 class QMacPasteboardMimeVCard : public QMacPasteboardMime |
|
914 { |
|
915 public: |
|
916 QMacPasteboardMimeVCard() : QMacPasteboardMime(MIME_ALL){ } |
|
917 QString convertorName(); |
|
918 |
|
919 QString flavorFor(const QString &mime); |
|
920 QString mimeFor(QString flav); |
|
921 bool canConvert(const QString &mime, QString flav); |
|
922 QVariant convertToMime(const QString &mime, QList<QByteArray> data, QString flav); |
|
923 QList<QByteArray> convertFromMime(const QString &mime, QVariant data, QString flav); |
|
924 }; |
|
925 |
|
926 QString QMacPasteboardMimeVCard::convertorName() |
|
927 { |
|
928 return QString("VCard"); |
|
929 } |
|
930 |
|
931 bool QMacPasteboardMimeVCard::canConvert(const QString &mime, QString flav) |
|
932 { |
|
933 return mimeFor(flav) == mime; |
|
934 } |
|
935 |
|
936 QString QMacPasteboardMimeVCard::flavorFor(const QString &mime) |
|
937 { |
|
938 if(mime.startsWith(QLatin1String("text/plain"))) |
|
939 return QLatin1String("public.vcard"); |
|
940 return QString(); |
|
941 } |
|
942 |
|
943 QString QMacPasteboardMimeVCard::mimeFor(QString flav) |
|
944 { |
|
945 if (flav == QLatin1String("public.vcard")) |
|
946 return QLatin1String("text/plain"); |
|
947 return QString(); |
|
948 } |
|
949 |
|
950 QVariant QMacPasteboardMimeVCard::convertToMime(const QString &mime, QList<QByteArray> data, QString) |
|
951 { |
|
952 QByteArray cards; |
|
953 if (mime == QLatin1String("text/plain")) { |
|
954 for (int i=0; i<data.size(); ++i) |
|
955 cards += data[i]; |
|
956 } |
|
957 return QVariant(cards); |
|
958 } |
|
959 |
|
960 QList<QByteArray> QMacPasteboardMimeVCard::convertFromMime(const QString &mime, QVariant data, QString) |
|
961 { |
|
962 QList<QByteArray> ret; |
|
963 if (mime == QLatin1String("text/plain")) |
|
964 ret.append(data.toString().toUtf8()); |
|
965 return ret; |
|
966 } |
|
967 |
912 #ifdef QT3_SUPPORT |
968 #ifdef QT3_SUPPORT |
913 class QMacPasteboardMimeQt3Any : public QMacPasteboardMime { |
969 class QMacPasteboardMimeQt3Any : public QMacPasteboardMime { |
914 private: |
970 private: |
915 int current_max; |
971 int current_max; |
916 QFile library_file; |
972 QFile library_file; |
1114 new QMacPasteboardMimePlainText; |
1170 new QMacPasteboardMimePlainText; |
1115 new QMacPasteboardMimeHTMLText; |
1171 new QMacPasteboardMimeHTMLText; |
1116 new QMacPasteboardMimeFileUri; |
1172 new QMacPasteboardMimeFileUri; |
1117 new QMacPasteboardMimeUrl; |
1173 new QMacPasteboardMimeUrl; |
1118 new QMacPasteboardMimeTypeName; |
1174 new QMacPasteboardMimeTypeName; |
|
1175 new QMacPasteboardMimeVCard; |
1119 //make sure our "non-standard" types are always last! --Sam |
1176 //make sure our "non-standard" types are always last! --Sam |
1120 new QMacPasteboardMimeAny; |
1177 new QMacPasteboardMimeAny; |
1121 #ifdef QT3_SUPPORT |
1178 #ifdef QT3_SUPPORT |
1122 new QMacPasteboardMimeQt3Any; |
1179 new QMacPasteboardMimeQt3Any; |
1123 #endif |
1180 #endif |