Index: src/gpu/GrDrawState.h |
diff --git a/src/gpu/GrDrawState.h b/src/gpu/GrDrawState.h |
index bfc15b01cd0c022d3b279d83c8705b1a82882096..f9b71da05f156eeec002b084c7dcf23e722668b1 100644 |
--- a/src/gpu/GrDrawState.h |
+++ b/src/gpu/GrDrawState.h |
@@ -22,6 +22,7 @@ |
#include "effects/GrSimpleTextureEffect.h" |
#include "SkMatrix.h" |
+#include "SkPath.h" |
#include "SkXfermode.h" |
class GrDrawState : public SkRefCnt { |
@@ -721,6 +722,19 @@ public: |
GrStencilSettings* stencil() { return &fCommon.fStencilSettings; } |
+ void setPathStencilFillType(SkPath::FillType fill) { |
+ fCommon.fPathStencilFillType = fill; |
+ } |
+ |
+ SkPath::FillType getPathStencilFillType() const { |
+ return fCommon.fPathStencilFillType; |
+ } |
+ |
+ SkPath::FillType* pathStencilFillType() { |
bsalomon
2013/09/18 14:24:22
Is this really needed? Skia very rarely returns po
|
+ return &fCommon.fPathStencilFillType; |
+ } |
+ |
+ |
/// @} |
/////////////////////////////////////////////////////////////////////////// |
@@ -913,6 +927,7 @@ private: |
fCommon.fBlendConstant = 0x0; |
fCommon.fFlagBits = 0x0; |
fCommon.fStencilSettings.setDisabled(); |
+ fCommon.fPathStencilFillType = SkPath::kWinding_FillType; |
fCommon.fCoverage = 0xffffffff; |
fCommon.fColorFilterMode = SkXfermode::kDst_Mode; |
fCommon.fColorFilterColor = 0x0; |
@@ -931,6 +946,7 @@ private: |
const GrVertexAttrib* fVAPtr; |
int fVACount; |
GrStencilSettings fStencilSettings; |
+ SkPath::FillType fPathStencilFillType; |
GrColor fCoverage; |
SkXfermode::Mode fColorFilterMode; |
GrColor fColorFilterColor; |
@@ -950,6 +966,7 @@ private: |
fVACount == other.fVACount && |
!memcmp(fVAPtr, other.fVAPtr, fVACount * sizeof(GrVertexAttrib)) && |
fStencilSettings == other.fStencilSettings && |
+ fPathStencilFillType == other.fPathStencilFillType && |
fCoverage == other.fCoverage && |
fColorFilterMode == other.fColorFilterMode && |
fColorFilterColor == other.fColorFilterColor && |