1
/****************************************************************************
3
** Copyright (C) 1992-2005 Trolltech AS. All rights reserved.
5
** This file is part of the painting module of the Qt Toolkit.
7
** This file may be distributed under the terms of the Q Public License
8
** as defined by Trolltech AS of Norway and appearing in the file
9
** LICENSE.QPL included in the packaging of this file.
11
** This file may be distributed and/or modified under the terms of the
12
** GNU General Public License version 2 as published by the Free Software
13
** Foundation and appearing in the file LICENSE.GPL included in the
14
** packaging of this file.
16
** See http://www.trolltech.com/pricing.html or email sales@trolltech.com for
17
** information about Qt Commercial License Agreements.
18
** See http://www.trolltech.com/qpl/ for QPL licensing information.
19
** See http://www.trolltech.com/gpl/ for GPL licensing information.
21
** Contact info@trolltech.com if any conditions of this licensing are
24
** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
25
** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
27
****************************************************************************/
29
#ifndef QPRINTENGINE_PS_P_H
30
#define QPRINTENGINE_PS_P_H
36
// This file is not part of the Qt API. It exists for the convenience
37
// of qpsprinter.cpp and qprinter_x11.cpp.
38
// This header file may change from version to version without notice,
39
// or even be removed.
44
#include "qpaintengine.h"
45
#include "qprintengine.h"
50
class QPSPrintEnginePrivate;
52
class Q_GUI_EXPORT QPSPrintEngine : public QPaintEngine, public QPrintEngine
54
Q_DECLARE_PRIVATE(QPSPrintEngine)
56
// QPrinter uses these
57
explicit QPSPrintEngine(QPrinter::PrinterMode m);
61
virtual bool begin(QPaintDevice *pdev);
64
void updateState(const QPaintEngineState &state);
66
void updatePen(const QPen &pen);
67
void updateBrush(const QBrush &brush, const QPointF &pt);
68
void updateFont(const QFont &font);
69
void updateBackground(Qt::BGMode bgmode, const QBrush &bgBrush);
70
void updateMatrix(const QMatrix &matrix);
71
void updateClipRegion(const QRegion ®ion, Qt::ClipOperation op);
73
virtual void drawLine(const QLineF &line);
74
virtual void drawLines(const QLineF *lines, int lineCount);
75
virtual void drawRect(const QRectF &r);
76
virtual void drawPoint(const QPointF &p);
77
virtual void drawEllipse(const QRectF &r);
78
virtual void drawPolygon(const QPoint *points, int pointCount, PolygonDrawMode mode);
79
virtual void drawPolygon(const QPointF *points, int pointCount, PolygonDrawMode mode);
81
virtual void drawImage(const QRectF &r, const QImage &img, const QRectF &sr, Qt::ImageConversionFlags);
82
virtual void drawPixmap(const QRectF &r, const QPixmap &pm, const QRectF &sr);
83
virtual void drawTextItem(const QPointF &p, const QTextItem &textItem);
84
virtual void drawTiledPixmap(const QRectF &r, const QPixmap &pixmap, const QPointF &s);
85
virtual void drawPath(const QPainterPath &);
87
virtual QPaintEngine::Type type() const { return QPaintEngine::PostScript; }
90
void setProperty(PrintEnginePropertyKey key, const QVariant &value);
91
QVariant property(PrintEnginePropertyKey key) const;
93
virtual bool newPage();
96
virtual int metric(QPaintDevice::PaintDeviceMetric metricType) const;
98
virtual QPrinter::PrinterState printerState() const;
100
virtual Qt::HANDLE handle() const { return 0; };
103
Q_DISABLE_COPY(QPSPrintEngine)
106
#endif // QT_NO_PRINTER
108
#endif // QPRINTENGINE_PS_P_H