Chromium Code Reviews| Index: include/core/SkEmptyShader.h |
| diff --git a/include/core/SkEmptyShader.h b/include/core/SkEmptyShader.h |
| index 3f7dae41a9f4911490c191d4c56463902a4ec4fb..d17b3f9b510a74491b931292197ae47048bf8286 100644 |
| --- a/include/core/SkEmptyShader.h |
| +++ b/include/core/SkEmptyShader.h |
| @@ -15,20 +15,23 @@ |
| /** |
| * \class SkEmptyShader |
| - * A Shader that always draws nothing. Its setContext always returns false, |
| - * so it never expects that its shadeSpan() methods will get called. |
| + * A Shader that always draws nothing. Its createContext always returns NULL. |
| */ |
| class SK_API SkEmptyShader : public SkShader { |
| public: |
| SkEmptyShader() {} |
| - virtual uint32_t getFlags() SK_OVERRIDE; |
| - virtual uint8_t getSpan16Alpha() const SK_OVERRIDE; |
| - virtual bool setContext(const SkBitmap&, const SkPaint&, |
| - const SkMatrix&) SK_OVERRIDE; |
| - virtual void shadeSpan(int x, int y, SkPMColor span[], int count) SK_OVERRIDE; |
| - virtual void shadeSpan16(int x, int y, uint16_t span[], int count) SK_OVERRIDE; |
| - virtual void shadeSpanAlpha(int x, int y, uint8_t alpha[], int count) SK_OVERRIDE; |
| + virtual size_t contextSize() const SK_OVERRIDE { |
| + // Even though we never create a shader for this class we have to return a value of at least |
|
scroggo
2014/03/26 23:13:09
I might say
// Even though createContext returns
Dominik Grewe
2014/03/27 14:27:20
Agreed, that's better.
|
| + // sizeof(SkShader::Context) to satisfy SkSmallAllocator. |
| + return sizeof(SkShader::Context); |
| + } |
| + |
| + virtual SkShader::Context* createContext(const SkBitmap&, const SkPaint&, |
| + const SkMatrix&, void*) const SK_OVERRIDE { |
| + // validContext returns false. |
| + return NULL; |
| + } |
| SK_DEVELOPER_TO_STRING() |
| SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(SkEmptyShader) |
| @@ -36,6 +39,8 @@ public: |
| protected: |
| SkEmptyShader(SkReadBuffer& buffer) : INHERITED(buffer) {} |
| + virtual bool validContext(const SkBitmap&, const SkPaint&, |
| + const SkMatrix&) SK_OVERRIDE { return false; } |
| private: |
| typedef SkShader INHERITED; |
| }; |