00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef _KOWMFPAINT_H_
00019 #define _KOWMFPAINT_H_
00020
00021 #include <qpainter.h>
00022
00023 #include "kowmfread.h"
00024
00042 class KoWmfPaint : public KoWmfRead
00043 {
00044 public:
00045 KoWmfPaint();
00046 ~KoWmfPaint() { }
00047
00054 bool play( QPaintDevice& target, bool relativeCoord=false );
00055
00056
00057 private:
00058
00059
00060 bool begin();
00061 bool end();
00062 void save();
00063 void restore();
00064
00065
00066 void setFont( const QFont& font );
00067
00068 void setPen( const QPen& pen );
00069 const QPen& pen() const;
00070 void setBrush( const QBrush& brush );
00071
00072
00073 void setBackgroundColor( const QColor& c );
00074 void setBackgroundMode( Qt::BGMode mode );
00075 void setRasterOp( Qt::RasterOp op );
00076
00083 void setWindowOrg( int left, int top );
00084 void setWindowExt( int width, int height );
00085
00086
00087
00088
00089 void setClipRegion( const QRegion &rec );
00090 QRegion clipRegion();
00091
00092
00093 void moveTo( int x, int y );
00094 void lineTo( int x, int y );
00095 void drawRect( int x, int y, int w, int h );
00096 void drawRoundRect( int x, int y, int w, int h, int = 25, int = 25 );
00097 void drawEllipse( int x, int y, int w, int h );
00098 void drawArc( int x, int y, int w, int h, int a, int alen );
00099 void drawPie( int x, int y, int w, int h, int a, int alen );
00100 void drawChord( int x, int y, int w, int h, int a, int alen );
00101 void drawPolyline( const QPointArray& pa );
00102 void drawPolygon( const QPointArray& pa, bool winding=FALSE );
00107 void drawPolyPolygon( QPtrList<QPointArray>& listPa, bool winding=FALSE );
00108 void drawImage( int x, int y, const QImage &, int sx = 0, int sy = 0, int sw = -1, int sh = -1 );
00109
00110
00111
00112
00113 void drawText( int x, int y, int w, int h, int flags, const QString &s, double rotation );
00114
00115
00116 void setWorldMatrix( const QWMatrix &, bool combine=FALSE );
00117
00118 private:
00119 QPainter mPainter;
00120 QPaintDevice *mTarget;
00121 bool mRelativeCoord;
00122
00123 QWMatrix mInternalWorldMatrix;
00124
00125 };
00126
00127 #endif