From: reed@android.com Date: Tue, 10 Nov 2009 16:19:39 +0000 (+0000) Subject: flatten/unflatten custom fields for 2-point gradient X-Git-Tag: submit/tizen/20180928.044319~19334 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=bcfc73321db47bde7638a1077992301ee56117b1;p=platform%2Fupstream%2FlibSkiaSharp.git flatten/unflatten custom fields for 2-point gradient git-svn-id: http://skia.googlecode.com/svn/trunk@423 2bbb7eff-a529-9590-31e7-b0007b416f81 --- diff --git a/src/effects/SkGradientShader.cpp b/src/effects/SkGradientShader.cpp index a30de6a937..780ad18977 100644 --- a/src/effects/SkGradientShader.cpp +++ b/src/effects/SkGradientShader.cpp @@ -1330,8 +1330,28 @@ public: return SkNEW_ARGS(Two_Point_Radial_Gradient, (buffer)); } + virtual void flatten(SkFlattenableWriteBuffer& buffer) { + this->INHERITED::flatten(buffer); + buffer.writeScalar(fDiff.fX); + buffer.writeScalar(fDiff.fY); + buffer.writeScalar(fStartRadius); + buffer.writeScalar(fDiffRadius); + buffer.writeScalar(fSr2D2); + buffer.writeScalar(fA); + buffer.writeScalar(fOneOverTwoA); + } + protected: - Two_Point_Radial_Gradient(SkFlattenableReadBuffer& buffer) : Gradient_Shader(buffer) {}; + Two_Point_Radial_Gradient(SkFlattenableReadBuffer& buffer) + : Gradient_Shader(buffer) { + fDiff.fX = buffer.readScalar(); + fDiff.fY = buffer.readScalar(); + fStartRadius = buffer.readScalar(); + fDiffRadius = buffer.readScalar(); + fSr2D2 = buffer.readScalar(); + fA = buffer.readScalar(); + fOneOverTwoA = buffer.readScalar(); + }; virtual Factory getFactory() { return CreateProc; } virtual void onCacheReset() {}