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

📄 qcanvas.h

📁 motorola E680I的EZK SDK.
💻 H
📖 第 1 页 / 共 2 页
字号:
    QCanvasPixmap(const QImage& image);    QCanvasPixmap(const QPixmap&, QPoint hotspot);    ~QCanvasPixmap();    int offsetX() const	{ return hotx; }    int offsetY() const	{ return hoty; }    void setOffset(int x, int y) { hotx = x; hoty = y; }private:    void init(const QImage&);    void init(const QPixmap& pixmap, int hx, int hy);    friend class QCanvasSprite;    friend class QCanvasPixmapArray;    friend bool qt_testCollision(const QCanvasSprite* s1, const QCanvasSprite* s2);    int hotx,hoty;    QImage* collision_mask;};class Q_EXPORT QCanvasPixmapArray{public:    QCanvasPixmapArray();    QCanvasPixmapArray(const QString& datafilenamepattern, int framecount=0);    QCanvasPixmapArray(QList<QPixmap>, QList<QPoint> hotspots);    ~QCanvasPixmapArray();    bool readPixmaps(const QString& datafilenamepattern, int framecount=0);    bool readCollisionMasks(const QString& filenamepattern);    int operator!(); // Failure check.    QCanvasPixmap* image(int i) const	{ return img[i]; }    void setImage(int i, QCanvasPixmap* p);    uint count() const	{ return (uint)framecount; }private:    bool readPixmaps(const QString& datafilenamepattern, int framecount, bool maskonly);    void reset();    int framecount;    QCanvasPixmap** img;};class Q_EXPORT QCanvasSprite : public QCanvasItem{public:    QCanvasSprite(QCanvasPixmapArray* array, QCanvas* canvas);    void setSequence(QCanvasPixmapArray* seq);    virtual ~QCanvasSprite();    void move(double x, double y);    virtual void move(double x, double y, int frame);    void setFrame(int);    int frame() const	{ return frm; }    int frameCount() const	{ return images->count(); }    virtual int rtti() const;    bool collidesWith( const QCanvasItem* ) const;    QRect boundingRect() const;protected:    void draw(QPainter& painter);    int width() const;    int height() const;    int absX() const;    int absY() const;    int absX2() const;    int absY2() const;    int absX(int nx) const;    int absY(int ny) const;    int absX2(int nx) const;    int absY2(int ny) const;    QCanvasPixmap* image() const	{ return images->image(frm); }    virtual QCanvasPixmap* imageAdvanced() const;    QCanvasPixmap* image(int f) const	{ return images->image(f); }private:    void addToChunks();    void removeFromChunks();    void changeChunks();    int frm;    bool collidesWith( const QCanvasSprite*,		       const QCanvasPolygonalItem*,		       const QCanvasRectangle*,		       const QCanvasEllipse*,		       const QCanvasText* ) const;    friend bool qt_testCollision( const QCanvasSprite* s1, 				  const QCanvasSprite* s2 );    QCanvasPixmapArray* images;};class QPolygonalProcessor;class Q_EXPORT QCanvasPolygonalItem : public QCanvasItem{public:    QCanvasPolygonalItem(QCanvas* canvas);    virtual ~QCanvasPolygonalItem();    bool collidesWith( const QCanvasItem* ) const;    virtual void setPen(QPen p);    virtual void setBrush(QBrush b);    QPen pen() const	{ return pn; }    QBrush brush() const	{ return br; }    virtual QPointArray areaPoints() const=0;    virtual QPointArray areaPointsAdvanced() const;    QRect boundingRect() const;    int rtti() const;protected:    void draw(QPainter &);    virtual void drawShape(QPainter &) = 0;    bool winding() const;    void setWinding(bool);private:    void scanPolygon( const QPointArray& pa, int winding,		      QPolygonalProcessor& process ) const;    QPointArray chunks() const;    bool collidesWith( const QCanvasSprite*,		       const QCanvasPolygonalItem*,		       const QCanvasRectangle*,		       const QCanvasEllipse*,		       const QCanvasText* ) const;    QBrush br;    QPen pn;    uint wind:1;};class Q_EXPORT QCanvasRectangle : public QCanvasPolygonalItem{public:    QCanvasRectangle(QCanvas* canvas);    QCanvasRectangle(const QRect&, QCanvas* canvas);    QCanvasRectangle(int x, int y, int width, int height, QCanvas* canvas);    ~QCanvasRectangle();    int width() const;    int height() const;    void setSize(int w, int h);    QSize size() const	{ return QSize(w,h); }    QPointArray areaPoints() const;    QRect rect() const	{ return QRect(int(x()),int(y()),w,h); }    bool collidesWith( const QCanvasItem* ) const;    int rtti() const;protected:    void drawShape(QPainter &);    QPointArray chunks() const;private:    bool collidesWith(   const QCanvasSprite*,			 const QCanvasPolygonalItem*,			 const QCanvasRectangle*,			 const QCanvasEllipse*,			 const QCanvasText* ) const;    int w, h;};class Q_EXPORT QCanvasPolygon : public QCanvasPolygonalItem{public:    QCanvasPolygon(QCanvas* canvas);    ~QCanvasPolygon();    void setPoints(QPointArray);    QPointArray points() const;    void moveBy(double dx, double dy);    QPointArray areaPoints() const;    int rtti() const;protected:    void drawShape(QPainter &);    QPointArray poly;};class Q_EXPORT QCanvasLine : public QCanvasPolygonalItem{public:    QCanvasLine(QCanvas* canvas);    ~QCanvasLine();    void setPoints(int x1, int y1, int x2, int y2);    QPoint startPoint() const	{ return QPoint(x1,y1); }    QPoint endPoint() const	{ return QPoint(x2,y2); }    int rtti() const;    void setPen(QPen p);protected:    void drawShape(QPainter &);    QPointArray areaPoints() const;private:    int x1,y1,x2,y2;};class Q_EXPORT QCanvasEllipse : public QCanvasPolygonalItem{public:    QCanvasEllipse( QCanvas* canvas );    QCanvasEllipse( int width, int height, QCanvas* canvas );    QCanvasEllipse( int width, int height, int startangle, int angle,		    QCanvas* canvas );    ~QCanvasEllipse();    int width() const;    int height() const;    void setSize(int w, int h);    void setAngles(int start, int length);    int angleStart() const	{ return a1; }    int angleLength() const	{ return a2; }    QPointArray areaPoints() const;    bool collidesWith( const QCanvasItem* ) const;    int rtti() const;protected:    void drawShape(QPainter &);private:    bool collidesWith( const QCanvasSprite*,		       const QCanvasPolygonalItem*,		       const QCanvasRectangle*,		       const QCanvasEllipse*,		       const QCanvasText* ) const;    int w, h;    int a1, a2;};class QCanvasTextExtra;class Q_EXPORT QCanvasText : public QCanvasItem{public:    QCanvasText(QCanvas* canvas);    QCanvasText(const QString&, QCanvas* canvas);    QCanvasText(const QString&, QFont, QCanvas* canvas);    virtual ~QCanvasText();    void setText( const QString& );    void setFont( const QFont& );    void setColor( const QColor& );    QString text() const;    QFont font() const;    QColor color() const;    void moveBy(double dx, double dy);    int textFlags() const	{ return flags; }    void setTextFlags(int);    QRect boundingRect() const;    bool collidesWith( const QCanvasItem* ) const;    virtual int rtti() const;protected:    virtual void draw(QPainter&);private:    void addToChunks();    void removeFromChunks();    void changeChunks();    void setRect();    QRect brect;    QString txt;    int flags;    QFont fnt;    QColor col;    QCanvasTextExtra* extra;    bool collidesWith(   const QCanvasSprite*,			 const QCanvasPolygonalItem*,			 const QCanvasRectangle*,			 const QCanvasEllipse*,			 const QCanvasText* ) const;};#endif // QT_NO_CANVAS#endif // QCANVAS_H

⌨️ 快捷键说明

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