Remove old constructors from GrGradientEffect subclasses, and moved their declarations into source files.
Review URL: https://codereview.appspot.com/6449067
git-svn-id: http://skia.googlecode.com/svn/trunk@4870 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/src/effects/gradients/SkLinearGradient.cpp b/src/effects/gradients/SkLinearGradient.cpp
index 49e9345..9d4ee6d 100644
--- a/src/effects/gradients/SkLinearGradient.cpp
+++ b/src/effects/gradients/SkLinearGradient.cpp
@@ -312,16 +312,6 @@
return kLinear_GradientType;
}
-GrCustomStage* SkLinearGradient::asNewCustomStage(GrContext* context,
- GrSamplerState* sampler) const {
- SkASSERT(NULL != context && NULL != sampler);
- sampler->matrix()->preConcat(fPtsToUnit);
- sampler->textureParams()->setTileModeX(fTileMode);
- sampler->textureParams()->setTileModeY(kClamp_TileMode);
- sampler->textureParams()->setBilerp(true);
- return SkNEW_ARGS(GrLinearGradient, (context, *this, sampler));
-}
-
static void dither_memset16(uint16_t dst[], uint16_t value, uint16_t other,
int count) {
if (reinterpret_cast<uintptr_t>(dst) & 2) {
@@ -506,6 +496,30 @@
typedef GrGLGradientStage INHERITED;
};
+/////////////////////////////////////////////////////////////////////
+
+class GrLinearGradient : public GrGradientEffect {
+public:
+
+ GrLinearGradient(GrContext* ctx, const SkLinearGradient& shader,
+ GrSamplerState* sampler)
+ : INHERITED(ctx, shader, sampler) { }
+ virtual ~GrLinearGradient() { }
+
+ static const char* Name() { return "Linear Gradient"; }
+ const GrProgramStageFactory& getFactory() const SK_OVERRIDE {
+ return GrTProgramStageFactory<GrLinearGradient>::getInstance();
+ }
+
+ typedef GrGLLinearGradient GLProgramStage;
+
+private:
+
+ typedef GrGradientEffect INHERITED;
+};
+
+/////////////////////////////////////////////////////////////////////
+
void GrGLLinearGradient::emitFS(GrGLShaderBuilder* builder,
const char* outputColor,
const char* inputColor,
@@ -517,21 +531,13 @@
/////////////////////////////////////////////////////////////////////
-GrLinearGradient::GrLinearGradient(GrTexture* texture)
- : INHERITED(texture) {
-}
-
-GrLinearGradient::GrLinearGradient(GrContext* ctx,
- const SkLinearGradient& shader,
- GrSamplerState* sampler)
- : INHERITED(ctx, shader, sampler) {
-}
-
-GrLinearGradient::~GrLinearGradient() {
-
-}
-
-const GrProgramStageFactory& GrLinearGradient::getFactory() const {
- return GrTProgramStageFactory<GrLinearGradient>::getInstance();
+GrCustomStage* SkLinearGradient::asNewCustomStage(GrContext* context,
+ GrSamplerState* sampler) const {
+ SkASSERT(NULL != context && NULL != sampler);
+ sampler->matrix()->preConcat(fPtsToUnit);
+ sampler->textureParams()->setTileModeX(fTileMode);
+ sampler->textureParams()->setTileModeY(kClamp_TileMode);
+ sampler->textureParams()->setBilerp(true);
+ return SkNEW_ARGS(GrLinearGradient, (context, *this, sampler));
}