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

📄 kwqpainter.h

📁 khtml在gtk上的移植版本
💻 H
字号:
/* * Copyright (C) 2003 Apple Computer, Inc.  All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright *    notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright *    notice, this list of conditions and the following disclaimer in the *    documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE COMPUTER, INC. OR * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.  */#ifndef QPAINTER_H_#define QPAINTER_H_#include "KWQNamespace.h"#include "KWQPaintDevice.h"#include "KWQColor.h"#include "KWQPen.h"#include "KWQBrush.h"#include "KWQRect.h"#include "KWQRegion.h"#include "KWQPointArray.h"#include "KWQString.h"#include "KWQFontMetrics.h"#include "WebCoreImageRendererFactory.h"class QFont;class QPixmap;class QWidget;class QPainterPrivate;typedef struct _GdkDrawable GdkDrawable;#if 0struct  CGContext;typedef CGContext* CGContextRef;#endifclass QPainter : public Qt {public:    typedef enum { RTL, LTR } TextDirection;        QPainter();    QPainter(bool forPrinting);    ~QPainter();    QPaintDevice *device() const;        const QFont &font() const;    void setFont(const QFont &);    QFontMetrics fontMetrics() const;        const QPen &pen() const;    void setPen(const QPen &);    void setPen(PenStyle);    void setPen(QRgb);        const QBrush &QPainter::brush() const;    void setBrush(const QBrush &);    void setBrush(BrushStyle);    void setBrush(QRgb);    QRect xForm(const QRect &) const;    void save();    void restore();        void drawRect(int, int, int, int);    void drawLine(int, int, int, int);    void drawLineSegments(const QPointArray &, int index=0, int nlines=-1);    void drawEllipse(int, int, int, int);    void drawArc(int, int, int, int, int, int);    void drawPolyline(const QPointArray &, int index=0, int npoints=-1);    void drawPolygon(const QPointArray &, bool winding=FALSE, int index=0, int npoints=-1);    void drawConvexPolygon(const QPointArray &);    void fillRect(int, int, int, int, const QBrush &);    void drawPixmap(const QPoint &, const QPixmap &);    void drawPixmap(const QPoint &, const QPixmap &, const QRect &);    void drawPixmap(const QPoint &, const QPixmap &, const QRect &, const QString &);     void drawPixmap( int x, int y, const QPixmap &,			    int sx=0, int sy=0, int sw=-1, int sh=-1, int compositeOperator=-1, CGContextRef context=0 );    void drawPixmap( int x, int y, int w, int h, const QPixmap &,			    int sx=0, int sy=0, int sw=-1, int sh=-1, int compositeOperator=-1, CGContextRef context=0 );    void drawTiledPixmap(int, int, int, int, const QPixmap &, int sx=0, int sy=0, CGContextRef context=0 );    void addClip(const QRect &);    RasterOp rasterOp() const;    void setRasterOp(RasterOp);    void drawText(int x, int y, int, int, int alignmentFlags, const QString &);    void drawHighlightForText(int x, int minX, int maxX, int y, int h,                   const QChar *, int length, int from, int to, int toAdd,                  const QColor& backgroundColor, QPainter::TextDirection d, bool visuallyOrdered,                  int letterSpacing, int wordSpacing, bool smallCaps);    void drawText(int x, int y, const QChar *, int length, int from, int to, int toAdd,                  const QColor& backgroundColor, QPainter::TextDirection d, bool visuallyOrdered,                  int letterSpacing, int wordSpacing, bool smallCaps);    void drawLineForText(int x, int y, int yOffset, int width);    QColor selectedTextBackgroundColor() const;    void setUsesInactiveTextBackgroundColor(bool u) { _usesInactiveTextBackgroundColor = u; }        bool paintingDisabled() const;    void setPaintingDisabled(bool);            void beginTransparencyLayer(float opacity);    void endTransparencyLayer();    void setShadow(int x, int y, int blur, const QColor& color);    void clearShadow();    void initFocusRing(int width, int offset);    void initFocusRing(int width, int offset, const QColor& color);    void addFocusRingRect(int x, int y, int width, int height);    void drawFocusRing();    void clearFocusRing();    void setDrawsFocusRing(bool flag) { _drawsFocusRing = flag; }    CGContextRef currentContext();        static int compositeOperatorFromString (QString aString);    static int getCompositeOperation(CGContextRef context);    static void setCompositeOperation (CGContextRef context, QString operation);    static void setCompositeOperation (CGContextRef context, int operation);        void setContext(CGContextRef context);    private:    // no copying or assignment    QPainter(const QPainter &);    QPainter &operator=(const QPainter &);    void _setColorFromBrush();    void _setColorFromPen();#if !KWIQ    // A fillRect designed to work around buggy behavior in NSRectFill.    void _fillRect(float x, float y, float w, float h, const QColor& color);#endif    void _drawPoints(const QPointArray &_points, bool winding, int index, int _npoints, bool fill);    void _updateRenderer();    QPainterPrivate *data;    bool _isForPrinting;    bool _usesInactiveTextBackgroundColor;    bool _drawsFocusRing;};#endif

⌨️ 快捷键说明

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