diff -r e48454f237ca -r 49c70dcc3f17 ganeswidgets/inc/hgvgquadrenderer.h --- a/ganeswidgets/inc/hgvgquadrenderer.h Mon May 03 13:32:54 2010 +0300 +++ b/ganeswidgets/inc/hgvgquadrenderer.h Fri May 14 16:57:01 2010 +0300 @@ -18,10 +18,11 @@ #ifndef HGVGQUADRENDERER_H #define HGVGQUADRENDERER_H -#include "hgquadrenderer.h" +#include "hgtransformedquadrenderer.h" #include #include #include +#include class QPoint; class QPainter; @@ -29,38 +30,40 @@ class QMatrix4x4; class HgVgQuad; class HgVgImage; -class HgImageFader; class QSize; +class HgTransformedQuad; /** * OpenVG implementation of the HgQuadRenderer. */ -class HgVgQuadRenderer: public HgQuadRenderer +class HgVgQuadRenderer: public HgTransformedQuadRenderer { public: HgVgQuadRenderer(int maxQuads); virtual ~HgVgQuadRenderer(); - virtual HgQuad* getQuadAt(const QPointF& point) const; - virtual void transformQuads(const QMatrix4x4& view, const QMatrix4x4& proj, - const QRectF& rect); - virtual void drawQuads(const QRectF& rect, QPainter* painter); - virtual bool getQuadTranformedPoints(QPolygonF& points, int index) const; + + // From HgQuadRenderer + virtual void drawQuads(QPainter* painter, const QRectF& rect, + const QMatrix4x4& viewMatrix, const QMatrix4x4& projectionMatrix, + Qt::Orientation orientation, + const QTransform& sceneTransform); virtual HgImage* createNativeImage(); - virtual QList getVisibleQuads(const QRectF& rect) const; virtual void setDefaultImage(QImage defaultImage); - + // new functions HgVgImage* defaultImage(); - QSize imageSize(bool mirror=false) const; - HgImageFader* imageFader(); +protected: + + // From HgTransformedQuadRenderer + virtual HgTransformedQuad* createNativeQuad(); + private: - QList mTransformedQuads; - - QList mSortedQuads; + QTransform qtToVgTransform(QPainter* painter, const QTransform& sceneTransform, + const QRectF& rect, Qt::Orientation orientation) const; - HgVgImage* mDefaultVgImage; - +private: + HgVgImage* mDefaultVgImage; }; #endif