/****************************************************************************
** $Id: qmime.h,v 2.7 1999/06/02 23:35:16 ettrich Exp $
**
** Definition of mime classes
**
** Created : 981204
**
** Copyright (C) 1998-1999 Troll Tech AS. All rights reserved.
**
** This file is part of the Qt GUI Toolkit.
**
** This file may be distributed under the terms of the Q Public License
** as defined by Troll Tech AS of Norway and appearing in the file
** LICENSE.QPL included in the packaging of this file.
**
** Licensees holding valid Qt Professional Edition licenses may use this
** file in accordance with the Qt Professional Edition License Agreement
** provided with the Qt Professional Edition.
**
** See http://www.troll.no/pricing.html or email sales@troll.no for
** information about the Professional Edition licensing, or see
** http://www.troll.no/qpl/ for QPL licensing information.
**
*****************************************************************************/
#ifndef QMIME_H
#define QMIME_H
#ifndef QT_H
#include "qwindowdefs.h"
#include "qlist.h"
#endif // QT_H
class Q_EXPORT QMimeSource {
public:
virtual ~QMimeSource();
virtual const char* format( int n = 0 ) const = 0;
virtual bool provides( const char* ) const;
virtual QByteArray encodedData( const char* ) const = 0;
};
class QMimeSourceFactoryData;
class QStringList;
class Q_EXPORT QMimeSourceFactory {
public:
QMimeSourceFactory();
virtual ~QMimeSourceFactory();
static QMimeSourceFactory* defaultFactory();
static void setDefaultFactory( QMimeSourceFactory* );
virtual const QMimeSource* data(const QString& abs_name) const;
virtual QString makeAbsolute(const QString& abs_or_rel_name, const QString& context) const;
const QMimeSource* data(const QString& abs_or_rel_name, const QString& context) const;
virtual void setText( const QString& abs_name, const QString& text );
virtual void setImage( const QString& abs_name, const QImage& im );
virtual void setPixmap( const QString& abs_name, const QPixmap& pm );
virtual void setData( const QString& abs_name, QMimeSource* data );
virtual void setFilePath( const QStringList& );
virtual void setExtensionType( const QString& ext, const char* mimetype );
private:
QMimeSourceFactoryData* d;
};
#ifdef _WS_WIN_
/*
Encapsulation of conversion between MIME and Windows CLIPFORMAT.
Not need on X11, as the underlying protocol uses the MIME standard
directly.
*/
class Q_EXPORT QWindowsMime {
public:
QWindowsMime();
virtual ~QWindowsMime();
static void initialize();
static QList<QWindowsMime> all();
static QWindowsMime* convertor( const char* mime, int cf );
static const char* cfToMime(int cf);
static int registerMimeType(const char *mime);
virtual const char* convertorName()=0;
virtual int countCf()=0;
virtual int cf(int index)=0;
virtual bool canConvert( const char* mime, int cf )=0;
virtual const char* mimeFor(int cf)=0;
virtual int cfFor(const char* )=0;
virtual QByteArray convertToMime( QByteArray data, const char* mime, int cf )=0;
virtual QByteArray convertFromMime( QByteArray data, const char* mime, int cf )=0;
};
#endif
#endif // QMIME_H
| Copyright © 1999 Troll Tech | Trademarks | Qt version 2.0.2
|