Chromium Code Reviews| Index: src/effects/SkArithmeticMode.cpp |
| diff --git a/src/effects/SkArithmeticMode.cpp b/src/effects/SkArithmeticMode.cpp |
| index 87af82efdbc6d51a1c014c1f8cbfdd9c37012014..0b8b2c94952c82b368b92fc5ab6fb6f2f6df61e8 100644 |
| --- a/src/effects/SkArithmeticMode.cpp |
| +++ b/src/effects/SkArithmeticMode.cpp |
| @@ -11,6 +11,7 @@ |
| #include "SkWriteBuffer.h" |
| #include "SkString.h" |
| #include "SkUnPreMultiply.h" |
| +#include "SkValueKeys.h" |
| #if SK_SUPPORT_GPU |
| #include "SkArithmeticMode_gpu.h" |
| #endif |
| @@ -37,6 +38,17 @@ public: |
| bool asXPFactory(GrXPFactory**) const override; |
| #endif |
| + SkValue represent() const override { |
|
mtklein
2016/01/14 22:58:28
I don't yet see a need for key enums to be visible
hal.canary
2016/01/14 23:43:10
done.
|
| + auto value = SkValue::Object(SkValue::ArithmeticXfermode); |
| + value.set(SkValueKeys::ArithmeticXfermode_K0, SkValue::FromF32(fK[0])); |
| + value.set(SkValueKeys::ArithmeticXfermode_K1, SkValue::FromF32(fK[1])); |
| + value.set(SkValueKeys::ArithmeticXfermode_K2, SkValue::FromF32(fK[2])); |
| + value.set(SkValueKeys::ArithmeticXfermode_K3, SkValue::FromF32(fK[3])); |
| + value.set(SkValueKeys::ArithmeticXfermode_EnforcePMColor, |
| + SkValue::FromS32(fEnforcePMColor ? 1 : 0)); |
| + return value; |
| + } |
| + |
| private: |
| SkArithmeticMode_scalar(SkScalar k1, SkScalar k2, SkScalar k3, SkScalar k4, bool enforcePMColor) { |
| fK[0] = k1; |