diff -r 56cd8111b7f7 -r 41300fa6a67c tests/benchmarks/uimodels/GraphicsViewBenchmark/widgets/webview_p.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/benchmarks/uimodels/GraphicsViewBenchmark/widgets/webview_p.h Tue Feb 02 00:43:10 2010 +0200 @@ -0,0 +1,58 @@ +#ifndef WEBVIEW_P_H +#define WEBVIEW_P_H + +#include "webview.h" +#include +#include +#include +#include +#include +#include +#include +#include + +class WebViewCache; + +class WebViewPrivate { +public: + + WebViewPrivate(WebView *w); + void adjustSize(); + void _q_loadStarted(); + void _q_loadProgress(int); + void _q_loadFinished(bool); + void _q_viewportChanged(QGraphicsWidget*); + void _q_motionEnded(); + + WebView *q; + QGraphicsWebView *web; + WebViewCache *cache; + QTimer motionTimer; +}; + +class WebViewCache : public QGraphicsEffect +{ + Q_OBJECT + +public: + + WebViewCache(QGraphicsWebView *webView); + virtual ~WebViewCache(); + +public: + + void refresh(); + + void draw(QPainter * painter, QGraphicsEffectSource * source); + +private: + + QVector m_tileRects; + QVector m_tilePixmaps; + QSizeF m_itemSize; + QGraphicsWebView *m_webView; + + friend class WebViewPrivate; +}; + +#endif // WEBVIEW_P_H