'\" t
.TH QMacMime 3qt "2 February 2007" "Trolltech AS" \" -*- nroff -*-
.\" Copyright 1992-2007 Trolltech ASA. All rights reserved. See the
.\" license file included in the distribution for a complete license
.\" statement.
.\"
.ad l
.nh
.SH NAME
QMacMime \- Maps open-standard MIME to Mac flavors
.SH SYNOPSIS
\fC#include <ntqmime.h>\fR
.PP
.SS "Public Members"
.in +1c
.ti -1c
.BI "\fBQMacMime\fR ( char t )"
.br
.ti -1c
.BI "virtual \fB~QMacMime\fR ()"
.br
.ti -1c
.BI "virtual const char * \fBconvertorName\fR () = 0"
.br
.ti -1c
.BI "virtual int \fBcountFlavors\fR () = 0"
.br
.ti -1c
.BI "virtual int \fBflavor\fR ( int index ) = 0"
.br
.ti -1c
.BI "virtual bool \fBcanConvert\fR ( const char * mime, int flav ) = 0"
.br
.ti -1c
.BI "virtual const char * \fBmimeFor\fR ( int flav ) = 0"
.br
.ti -1c
.BI "virtual int \fBflavorFor\fR ( const char * mime ) = 0"
.br
.ti -1c
.BI "virtual QByteArray \fBconvertToMime\fR ( QValueList<QByteArray> data, const char * mime, int flav ) = 0"
.br
.ti -1c
.BI "virtual QValueList<QByteArray> \fBconvertFromMime\fR ( QByteArray data, const char * mime, int flav ) = 0"
.br
.in -1c
.SS "Static Public Members"
.in +1c
.ti -1c
.BI "QPtrList<QMacMime> \fBall\fR ( QMacMimeType t )"
.br
.ti -1c
.BI "QMacMime * \fBconvertor\fR ( QMacMimeType t, const char * mime, int flav )"
.br
.ti -1c
.BI "const char * \fBflavorToMime\fR ( QMacMimeType t, int flav )"
.br
.in -1c
.SH DESCRIPTION
The QMacMime class maps open-standard MIME to Mac flavors.
.PP
Qt's drag-and-drop and clipboard facilities use the MIME standard. On X11, this maps trivially to the Xdnd protocol, but on Mac although some applications use MIME types to describe clipboard formats, others use arbitrary non-standardized naming conventions, or unnamed built-in Mac formats.
.PP
By instantiating subclasses of QMacMime that provide conversions between Mac flavors and MIME formats, you can convert proprietary clipboard formats to MIME formats.
.PP
Qt has predefined support for the following Mac flavors:
.TP
kScrapFlavorTypeUnicode - converted to "text/plain;charset=ISO-10646-UCS-2" and supported by QTextDrag.
.TP
kScrapFlavorTypeText - converted to "text/plain;charset=system" or "text/plain" and supported by QTextDrag.
.TP
kScrapFlavorTypePicture - converted to "image/format", where format is a TQt image format, and supported by QImageDrag.
.TP
kDragFlavorTypeHFS - converted to "text/uri-list", and supported by QUriDrag.
.PP
You can check if a MIME type is convertible using canConvert() and can perform conversions with convertToMime() and convertFromMime().
.PP
See also Drag And Drop Classes, Input/Output and Networking, and Miscellaneous Classes.
.SH MEMBER FUNCTION DOCUMENTATION
.SH "QMacMime::QMacMime ( char t )"
Constructs a new conversion object of type \fIt\fR, adding it to the globally accessed list of available convertors.
.SH "QMacMime::~QMacMime ()\fC [virtual]\fR"
Destroys a conversion object, removing it from the global list of available convertors.
.SH "QPtrList<QMacMime> QMacMime::all ( QMacMimeType t )\fC [static]\fR"
Returns a list of all currently defined QMacMime objects of type \fIt\fR.
.SH "bool QMacMime::canConvert ( const char * mime, int flav )\fC [pure virtual]\fR"
Returns TRUE if the convertor can convert (both ways) between \fImime\fR and \fIflav\fR; otherwise returns FALSE.
.PP
All subclasses must reimplement this pure virtual function.
.SH "QValueList<QByteArray> QMacMime::convertFromMime ( QByteArray data, const char * mime, int flav )\fC [pure virtual]\fR"
Returns \fIdata\fR converted from MIME type \fImime\fR to Mac flavor \fIflav\fR.
.PP
Note that Mac flavors must all be self-terminating. The return value may contain trailing data.
.PP
All subclasses must reimplement this pure virtual function.
.SH "QByteArray QMacMime::convertToMime ( QValueList<QByteArray> data, const char * mime, int flav )\fC [pure virtual]\fR"
Returns \fIdata\fR converted from Mac flavor \fIflav\fR to MIME type \fImime\fR.
.PP
Note that Mac flavors must all be self-terminating. The input \fIdata\fR may contain trailing data.
.PP
All subclasses must reimplement this pure virtual function.
.SH "QMacMime * QMacMime::convertor ( QMacMimeType t, const char * mime, int flav )\fC [static]\fR"
Returns the most-recently created QMacMime of type \fIt\fR that can convert between the \fImime\fR and \fIflav\fR formats. Returns 0 if no such convertor exists.
.SH "const char * QMacMime::convertorName ()\fC [pure virtual]\fR"
Returns a name for the convertor.
.PP
All subclasses must reimplement this pure virtual function.
.SH "int QMacMime::countFlavors ()\fC [pure virtual]\fR"
Returns the number of Mac flavors supported by this convertor.
.PP
All subclasses must reimplement this pure virtual function.
.SH "int QMacMime::flavor ( int index )\fC [pure virtual]\fR"
Returns the Mac flavor supported by this convertor that is ordinarily at position \fIindex\fR. This means that flavor(0) returns the first Mac flavor supported, and flavor(countFlavors()-1) returns the last. If \fIindex\fR is out of range the return value is undefined.
.PP
All subclasses must reimplement this pure virtual function.
.SH "int QMacMime::flavorFor ( const char * mime )\fC [pure virtual]\fR"
Returns the Mac flavor used for MIME type \fImime\fR, or 0 if this convertor does not support \fImime\fR.
.PP
All subclasses must reimplement this pure virtual function.
.SH "const char * QMacMime::flavorToMime ( QMacMimeType t, int flav )\fC [static]\fR"
Returns a MIME type of type \fIt\fR for \fIflav\fR, or 0 if none exists.
.SH "const char * QMacMime::mimeFor ( int flav )\fC [pure virtual]\fR"
Returns the MIME type used for Mac flavor \fIflav\fR, or 0 if this convertor does not support \fIflav\fR.
.PP
All subclasses must reimplement this pure virtual function.
.SH "SEE ALSO"
.BR http://doc.trolltech.com/qmacmime.html
.BR http://www.trolltech.com/faq/tech.html
.SH COPYRIGHT
Copyright 1992-2007 Trolltech ASA, http://www.trolltech.com. See the
license file included in the distribution for a complete license
statement.
.SH AUTHOR
Generated automatically from the source code.
.SH BUGS
If you find a bug in Qt, please report it as described in
.BR http://doc.trolltech.com/bughowto.html .
Good bug reports help us to help you. Thank you.
.P
The definitive TQt documentation is provided in HTML format; it is
located at $TQTDIR/doc/html and can be read using TQt Assistant or with
a web browser. This man page is provided as a convenience for those
users who prefer man pages, although this format is not officially
supported by Trolltech.
.P
If you find errors in this manual page, please report them to
.BR qt-bugs@trolltech.com .
Please include the name of the manual page (tqmacmime.3qt) and the Qt
version (3.3.8).