⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 qprintengine_qws_p.h

📁 奇趣公司比较新的qt/emd版本
💻 H
字号:
/******************************************************************************** Copyright (C) 1992-2007 Trolltech ASA. All rights reserved.**** This file is part of the QtGui module of the Qt Toolkit.**** This file may be used under the terms of the GNU General Public** License version 2.0 as published by the Free Software Foundation** and appearing in the file LICENSE.GPL included in the packaging of** this file.  Please review the following information to ensure GNU** General Public Licensing requirements will be met:** http://trolltech.com/products/qt/licenses/licensing/opensource/**** If you are unsure which license is appropriate for your use, please** review the following information:** http://trolltech.com/products/qt/licenses/licensing/licensingoverview** or contact the sales department at sales@trolltech.com.**** In addition, as a special exception, Trolltech gives you certain** additional rights. These rights are described in the Trolltech GPL** Exception version 1.0, which can be found at** http://www.trolltech.com/products/qt/gplexception/ and in the file** GPL_EXCEPTION.txt in this package.**** In addition, as a special exception, Trolltech, as the sole copyright** holder for Qt Designer, grants users of the Qt/Eclipse Integration** plug-in the right for the Qt/Eclipse Integration to link to** functionality provided by Qt Designer and its related libraries.**** Trolltech reserves all rights not expressly granted herein.**** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.******************************************************************************/#ifndef QPRINTENGINE_QWS_P_H#define QPRINTENGINE_QWS_P_H////  W A R N I N G//  -------------//// This file is not part of the Qt API.  It exists for the convenience// of other Qt classes.  This header file may change from version to// version without notice, or even be removed.//// We mean it.//#include "QtGui/qprinter.h"#ifndef QT_NO_PRINTER#include "QtGui/qprintengine.h"#include "QtCore/qbytearray.h"#include "private/qpaintengine_p.h"class QtopiaPrintEnginePrivate;class QRasterPaintEngine;class QPrinterPrivate;class QImage;class QtopiaPrintEngine : public QPaintEngine, public QPrintEngine{    Q_DECLARE_PRIVATE(QtopiaPrintEngine)public:    QtopiaPrintEngine(QPrinter::PrinterMode mode);    // override QWSPaintEngine    bool begin(QPaintDevice *dev);    bool end();    void drawPixmap(const QRectF &r, const QPixmap &pm, const QRectF &sr);    void drawTextItem(const QPointF &p, const QTextItem &ti);    QPaintEngine::Type type() const { return QPaintEngine::X11; }    QPaintEngine *paintEngine() const;    void updateState(const QPaintEngineState &state);    QRect paperRect() const;    QRect pageRect() const;    bool newPage();    bool abort();    QPrinter::PrinterState printerState() const;    int metric(QPaintDevice::PaintDeviceMetric metricType) const;    QVariant property(PrintEnginePropertyKey key) const;    void setProperty(PrintEnginePropertyKey key, const QVariant &value);private:    friend class QPrintDialog;    friend class QPageSetupDialog;    void clearPage();    void flushPage();};class QtopiaPrintBuffer{public:    QtopiaPrintBuffer( bool bigEndian=FALSE ) { _bigEndian = bigEndian; }    ~QtopiaPrintBuffer() {}    const QByteArray& data() const { return _data; }    int size() const { return _data.size(); }    void clear() { _data.clear(); }    void append( char value ) { _data.append( value ); }    void append( short value );    void append( int value );    void append( const QByteArray& array ) { _data.append( array ); }    void patch( int posn, int value );    void pad();private:    QByteArray _data;    bool _bigEndian;};#define	QT_QWS_PRINTER_DEFAULT_DPI	   200class QtopiaPrintEnginePrivate : public QPaintEnginePrivate{    Q_DECLARE_PUBLIC(QtopiaPrintEngine)public:    QtopiaPrintEnginePrivate(QPrinter::PrinterMode m) :	mode(m),	printerState(QPrinter::Idle),	orientation(QPrinter::Portrait),	pageSize(QPrinter::A4),	pageOrder(QPrinter::FirstPageFirst),	colorMode(QPrinter::GrayScale),	paperSource(QPrinter::OnlyOne),        resolution(QT_QWS_PRINTER_DEFAULT_DPI),        paintEngine(0),	numCopies(1),        outputToFile(false),        fullPage(false),        collateCopies(false),	pageNumber(0),	pageImage(0),	partialByte(0),	partialBits(0)    {    }    ~QtopiaPrintEnginePrivate();    void initialize();    QPrinter::PrinterMode mode;    QString printerName;    QString outputFileName;    QString printProgram;    QString docName;    QString creator;    QPrinter::PrinterState printerState;    QPrinter::Orientation orientation;    QPrinter::PageSize pageSize;    QPrinter::PageOrder pageOrder;    QPrinter::ColorMode colorMode;    QPrinter::PaperSource paperSource;    int resolution;    QPaintEngine *paintEngine;    int numCopies;    bool outputToFile;    bool fullPage;    bool collateCopies;    int pageNumber;    QImage *pageImage;    QtopiaPrintBuffer buffer;    // Definitions that are only relevant to G3FAX output.    int ifdPatch;    int partialByte;    int partialBits;    void writeG3FaxHeader();    void writeG3FaxPage();    int writeG3IFDEntry( int tag, int type, int count, int value );    void writeG3Code( int code, int bits );    void writeG3WhiteRun( int len );    void writeG3BlackRun( int len );    void writeG3EOL();};#endif // QT_NO_PRINTER#endif // QPRINTENGINE_QWS_P_H

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -