00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef __koPictureClipart_h__
00021 #define __koPictureClipart_h__
00022
00023 #include <QString>
00024 #include <qpicture.h>
00025
00026 #include <QPixmap>
00027
00028 class QPainter;
00029 class QSize;
00030
00031
00032
00037 class KoPictureClipart : public KoPictureBase
00038 {
00039 public:
00043 KoPictureClipart();
00044
00048 virtual ~KoPictureClipart();
00049
00050 virtual KoPictureType::Type getType(void) const;
00051
00052 virtual KoPictureBase* newCopy(void) const;
00053
00054
00058 virtual bool isNull(void) const;
00059
00075 virtual void draw(QPainter& painter, int x, int y, int width, int height, int sx = 0, int sy = 0, int sw = -1, int sh = -1, bool fastMode = false);
00076
00077 virtual bool loadData(const QByteArray& array, const QString& extension);
00078
00083 virtual bool save(QIODevice* io) const;
00084
00085 virtual QSize getOriginalSize(void) const;
00086
00087 virtual QPixmap generatePixmap(const QSize& size, bool smoothScale = false);
00088
00089 virtual QString getMimeType(const QString& extension) const;
00090
00091 protected:
00092 QPixmap getPixmap(QImage& image);
00097 void drawQPicture(QPicture& clipart, QPainter& painter,
00098 int x, int y, int width, int height, int sx, int sy, int sw, int sh);
00099 protected:
00100 QPicture m_clipart;
00101 QByteArray m_rawData;
00102 };
00103
00104 #endif