diff options
author | Oswald Buddenhagen <oswald.buddenhagen@qt.io> | 2017-05-30 12:48:17 +0200 |
---|---|---|
committer | Oswald Buddenhagen <oswald.buddenhagen@qt.io> | 2017-05-30 12:48:17 +0200 |
commit | 881da28418d380042aa95a97f0cbd42560a64f7c (patch) | |
tree | a794dff3274695e99c651902dde93d934ea7a5af /Source/WebCore/platform/graphics/qt/ImageBufferDataQt.h | |
parent | 7e104c57a70fdf551bb3d22a5d637cdcbc69dbea (diff) | |
parent | 0fcedcd17cc00d3dd44c718b3cb36c1033319671 (diff) | |
download | qtwebkit-881da28418d380042aa95a97f0cbd42560a64f7c.tar.gz |
Merge 'wip/next' into dev
Change-Id: Iff9ee5e23bb326c4371ec8ed81d56f2f05d680e9
Diffstat (limited to 'Source/WebCore/platform/graphics/qt/ImageBufferDataQt.h')
-rw-r--r-- | Source/WebCore/platform/graphics/qt/ImageBufferDataQt.h | 27 |
1 files changed, 15 insertions, 12 deletions
diff --git a/Source/WebCore/platform/graphics/qt/ImageBufferDataQt.h b/Source/WebCore/platform/graphics/qt/ImageBufferDataQt.h index fcad887d3..2ead943ca 100644 --- a/Source/WebCore/platform/graphics/qt/ImageBufferDataQt.h +++ b/Source/WebCore/platform/graphics/qt/ImageBufferDataQt.h @@ -28,9 +28,11 @@ #include "Image.h" +#include "PlatformLayer.h" + #include <QImage> -#include <QPainter> #include <QPaintDevice> +#include <QPainter> #if ENABLE(ACCELERATED_2D_CANVAS) #include <QOpenGLContext> @@ -46,22 +48,22 @@ struct ImageBufferDataPrivate { virtual ~ImageBufferDataPrivate() { } virtual QPaintDevice* paintDevice() = 0; virtual QImage toQImage() const = 0; - virtual PassRefPtr<Image> image() const = 0; - virtual PassRefPtr<Image> copyImage() const = 0; + virtual RefPtr<Image> image() const = 0; + virtual RefPtr<Image> copyImage() const = 0; + virtual RefPtr<Image> takeImage() = 0; virtual bool isAccelerated() const = 0; virtual PlatformLayer* platformLayer() = 0; - virtual void draw(GraphicsContext* destContext, ColorSpace styleColorSpace, const FloatRect& destRect, - const FloatRect& srcRect, CompositeOperator op, BlendMode blendMode, bool useLowQualityScale, - bool ownContext) = 0; - virtual void drawPattern(GraphicsContext* destContext, const FloatRect& srcRect, const AffineTransform& patternTransform, - const FloatPoint& phase, ColorSpace styleColorSpace, CompositeOperator op, - const FloatRect& destRect, bool ownContext) = 0; - virtual void clip(GraphicsContext* context, const FloatRect& floatRect) const = 0; + virtual void draw(GraphicsContext& destContext, const FloatRect& destRect, + const FloatRect& srcRect, CompositeOperator, BlendMode, + bool ownContext) = 0; + virtual void drawPattern(GraphicsContext& destContext, const FloatRect& srcRect, const AffineTransform& patternTransform, + const FloatPoint& phase, const FloatSize& spacing, CompositeOperator, + const FloatRect& destRect, BlendMode, bool ownContext) = 0; + virtual void clip(GraphicsContext&, const IntRect& floatRect) const = 0; virtual void platformTransformColorSpace(const Vector<int>& lookUpTable) = 0; }; -class ImageBufferData -{ +class ImageBufferData { public: ImageBufferData(const IntSize&); #if ENABLE(ACCELERATED_2D_CANVAS) @@ -69,6 +71,7 @@ public: #endif ~ImageBufferData(); QPainter* m_painter; + std::unique_ptr<GraphicsContext> m_context; ImageBufferDataPrivate* m_impl; protected: void initPainter(); |