| Index: Source/platform/graphics/Pattern.h
|
| diff --git a/Source/platform/graphics/Pattern.h b/Source/platform/graphics/Pattern.h
|
| index 5d533824d87433d0a2c4a30d60a539c7498ca606..a5ccc94c6019bed1254972e0545ae44b3a689212 100644
|
| --- a/Source/platform/graphics/Pattern.h
|
| +++ b/Source/platform/graphics/Pattern.h
|
| @@ -32,6 +32,7 @@
|
| #include "SkShader.h"
|
| #include "platform/PlatformExport.h"
|
| #include "platform/graphics/Image.h"
|
| +#include "platform/graphics/StaticBitmapImage.h"
|
| #include "platform/transforms/AffineTransform.h"
|
|
|
| #include "wtf/PassRefPtr.h"
|
| @@ -40,35 +41,36 @@
|
|
|
| namespace WebCore {
|
|
|
| -class AffineTransform;
|
| -
|
| class PLATFORM_EXPORT Pattern : public RefCounted<Pattern> {
|
| public:
|
| - static PassRefPtr<Pattern> create(PassRefPtr<Image> tileImage, bool repeatX, bool repeatY)
|
| - {
|
| - return adoptRef(new Pattern(tileImage, repeatX, repeatY));
|
| - }
|
| - ~Pattern();
|
| + static PassRefPtr<Pattern> create(PassRefPtr<Image> tileImage, bool repeatX, bool repeatY);
|
| +
|
| + virtual ~Pattern();
|
|
|
| SkShader* shader();
|
|
|
| void setPatternSpaceTransform(const AffineTransform& patternSpaceTransformation);
|
| - const AffineTransform& getPatternSpaceTransform() { return m_patternSpaceTransformation; };
|
| + const AffineTransform& getPatternSpaceTransform() { return m_patternSpaceTransformation; }
|
|
|
| bool repeatX() const { return m_repeatX; }
|
| bool repeatY() const { return m_repeatY; }
|
| +protected:
|
| + virtual PassRefPtr<SkShader> createShader() = 0;
|
|
|
| -private:
|
| - Pattern(PassRefPtr<Image>, bool repeatX, bool repeatY);
|
| + Pattern(bool repeatX, bool repeatY)
|
| + : m_repeatX(repeatX)
|
| + , m_repeatY(repeatY)
|
| + , m_externalMemoryAllocated(0) { }
|
|
|
| - RefPtr<NativeImageSkia> m_tileImage;
|
| bool m_repeatX;
|
| bool m_repeatY;
|
| AffineTransform m_patternSpaceTransformation;
|
| - RefPtr<SkShader> m_pattern;
|
| int m_externalMemoryAllocated;
|
| +
|
| +private:
|
| + RefPtr<SkShader> m_pattern;
|
| };
|
|
|
| -} //namespace
|
| +} // namespace
|
|
|
| #endif
|
|
|