aboutsummaryrefslogtreecommitdiffhomepage
path: root/samplecode
diff options
context:
space:
mode:
authorGravatar reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81>2011-04-22 14:10:48 +0000
committerGravatar reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81>2011-04-22 14:10:48 +0000
commitf21833999d90ad9c8c584cff3238797b39cfc00b (patch)
treea9d07155d6567708fff2796d46fae62534e7e1ff /samplecode
parent2eb595292b9624371d1698ae9da7accb4c09c26c (diff)
migrate some samples over to SampleView, for FPS measurements
git-svn-id: http://skia.googlecode.com/svn/trunk@1166 2bbb7eff-a529-9590-31e7-b0007b416f81
Diffstat (limited to 'samplecode')
-rw-r--r--samplecode/SampleApp.cpp18
-rw-r--r--samplecode/SampleBitmapRect.cpp11
-rw-r--r--samplecode/SampleCode.h8
-rw-r--r--samplecode/SampleGradients.cpp16
-rw-r--r--samplecode/SamplePoints.cpp12
-rw-r--r--samplecode/SampleShaderText.cpp16
-rw-r--r--samplecode/SampleShapes.cpp14
-rw-r--r--samplecode/SampleTextEffects.cpp162
-rw-r--r--samplecode/SampleTextOnPath.cpp35
-rw-r--r--samplecode/SampleTiling.cpp12
-rw-r--r--samplecode/SampleTypeface.cpp14
-rw-r--r--samplecode/SampleVertices.cpp14
12 files changed, 102 insertions, 230 deletions
diff --git a/samplecode/SampleApp.cpp b/samplecode/SampleApp.cpp
index 78ec56fc79..99ceb3e9b2 100644
--- a/samplecode/SampleApp.cpp
+++ b/samplecode/SampleApp.cpp
@@ -39,7 +39,7 @@ static const char view_inval_msg[] = "view-inval-msg";
static void postInvalDelay(SkEventSinkID sinkID) {
SkEvent* evt = new SkEvent(view_inval_msg);
- evt->post(sinkID, 10);
+ evt->post(sinkID, 1);
}
static bool isInvalEvent(const SkEvent& evt) {
@@ -849,16 +849,20 @@ void SampleWindow::beforeChild(SkView* child, SkCanvas* canvas) {
canvas->setDrawFilter(new FlagsDrawFilter(fLCDState, fAAState))->unref();
}
- SampleView::SetRepeatDraw(child, fMeasureFPS ? FPS_REPEAT_COUNT : 1);
if (fMeasureFPS) {
- fMeasureFPS_Time = SkTime::GetMSecs();
+ fMeasureFPS_Time = 0; // 0 means the child is not aware of repeat-draw
+ if (SampleView::SetRepeatDraw(child, FPS_REPEAT_COUNT)) {
+ fMeasureFPS_Time = SkTime::GetMSecs();
+ }
+ } else {
+ (void)SampleView::SetRepeatDraw(child, 1);
}
}
void SampleWindow::afterChild(SkView* child, SkCanvas* canvas) {
canvas->setDrawFilter(NULL);
- if (fMeasureFPS) {
+ if (fMeasureFPS && fMeasureFPS_Time) {
fMeasureFPS_Time = SkTime::GetMSecs() - fMeasureFPS_Time;
this->updateTitle();
postInvalDelay(this->getSinkID());
@@ -1314,10 +1318,10 @@ void SampleWindow::onSizeChange() {
static const char repeat_count_tag[] = "sample-set-repeat-count";
-void SampleView::SetRepeatDraw(SkView* view, int count) {
+bool SampleView::SetRepeatDraw(SkView* view, int count) {
SkEvent evt(repeat_count_tag);
evt.setFast32(count);
- (void)view->doEvent(evt);
+ return view->doEvent(evt);
}
bool SampleView::onEvent(const SkEvent& evt) {
@@ -1341,7 +1345,7 @@ void SampleView::onDraw(SkCanvas* canvas) {
}
void SampleView::onDrawBackground(SkCanvas* canvas) {
- canvas->drawColor(SK_ColorWHITE);
+ canvas->drawColor(fBGColor);
}
///////////////////////////////////////////////////////////////////////////////
diff --git a/samplecode/SampleBitmapRect.cpp b/samplecode/SampleBitmapRect.cpp
index 0c1cd7a4a6..2d56db9f00 100644
--- a/samplecode/SampleBitmapRect.cpp
+++ b/samplecode/SampleBitmapRect.cpp
@@ -33,12 +33,13 @@ static SkBitmap make_bitmap() {
return bm;
}
-class BitmapRectView : public SkView {
+class BitmapRectView : public SampleView {
public:
SkBitmap fBitmap;
BitmapRectView() {
fBitmap = make_bitmap();
+ this->setBGColor(SK_ColorGRAY);
}
protected:
@@ -51,13 +52,7 @@ protected:
return this->INHERITED::onQuery(evt);
}
- void drawBG(SkCanvas* canvas) {
- canvas->drawColor(SK_ColorGRAY);
- }
-
- virtual void onDraw(SkCanvas* canvas) {
- this->drawBG(canvas);
-
+ virtual void onDrawContent(SkCanvas* canvas) {
const SkIRect src[] = {
{ 0, 0, 32, 32 },
{ 0, 0, 80, 80 },
diff --git a/samplecode/SampleCode.h b/samplecode/SampleCode.h
index 2eb8bef262..0c706ee3d1 100644
--- a/samplecode/SampleCode.h
+++ b/samplecode/SampleCode.h
@@ -1,6 +1,7 @@
#ifndef SampleCode_DEFINED
#define SampleCode_DEFINED
+#include "SkColor.h"
#include "SkEvent.h"
#include "SkKey.h"
#include "SkView.h"
@@ -48,9 +49,11 @@ private:
class SampleView : public SkView {
public:
- SampleView() : fRepeatCount(1) {}
+ SampleView() : fRepeatCount(1), fBGColor(SK_ColorWHITE) {}
- static void SetRepeatDraw(SkView*, int count);
+ void setBGColor(SkColor color) { fBGColor = color; }
+
+ static bool SetRepeatDraw(SkView*, int count);
protected:
virtual void onDrawBackground(SkCanvas*);
@@ -63,6 +66,7 @@ protected:
private:
int fRepeatCount;
+ SkColor fBGColor;
typedef SkView INHERITED;
};
diff --git a/samplecode/SampleGradients.cpp b/samplecode/SampleGradients.cpp
index 385062d377..902b0bd6e0 100644
--- a/samplecode/SampleGradients.cpp
+++ b/samplecode/SampleGradients.cpp
@@ -113,9 +113,11 @@ static const GradMaker gGradMakers[] = {
///////////////////////////////////////////////////////////////////////////////
-class GradientsView : public SkView {
+class GradientsView : public SampleView {
public:
- GradientsView() {}
+ GradientsView() {
+ this->setBGColor(0xFFDDDDDD);
+ }
protected:
// overrides from SkEventSink
@@ -127,13 +129,7 @@ protected:
return this->INHERITED::onQuery(evt);
}
- void drawBG(SkCanvas* canvas) {
- canvas->drawColor(0xFFDDDDDD);
- }
-
- virtual void onDraw(SkCanvas* canvas) {
- this->drawBG(canvas);
-
+ virtual void onDrawContent(SkCanvas* canvas) {
SkPoint pts[2] = {
{ 0, 0 },
{ SkIntToScalar(100), SkIntToScalar(100) }
@@ -170,7 +166,7 @@ protected:
}
private:
- typedef SkView INHERITED;
+ typedef SampleView INHERITED;
};
///////////////////////////////////////////////////////////////////////////////
diff --git a/samplecode/SamplePoints.cpp b/samplecode/SamplePoints.cpp
index 416dc8d1e3..a2804b42b1 100644
--- a/samplecode/SamplePoints.cpp
+++ b/samplecode/SamplePoints.cpp
@@ -20,7 +20,7 @@
#include "SkStream.h"
#include "SkXMLParser.h"
-class PointsView : public SkView {
+class PointsView : public SampleView {
public:
PointsView() {}
@@ -34,18 +34,12 @@ protected:
return this->INHERITED::onQuery(evt);
}
- void drawBG(SkCanvas* canvas) {
- canvas->drawColor(SK_ColorWHITE);
- }
-
static void fill_pts(SkPoint pts[], size_t n, SkRandom* rand) {
for (size_t i = 0; i < n; i++)
pts[i].set(rand->nextUScalar1() * 640, rand->nextUScalar1() * 480);
}
- virtual void onDraw(SkCanvas* canvas) {
- this->drawBG(canvas);
-
+ virtual void onDrawContent(SkCanvas* canvas) {
canvas->translate(SK_Scalar1, SK_Scalar1);
SkRandom rand;
@@ -74,7 +68,7 @@ protected:
private:
- typedef SkView INHERITED;
+ typedef SampleView INHERITED;
};
//////////////////////////////////////////////////////////////////////////////
diff --git a/samplecode/SampleShaderText.cpp b/samplecode/SampleShaderText.cpp
index a3cb6808ad..47ee7eee7a 100644
--- a/samplecode/SampleShaderText.cpp
+++ b/samplecode/SampleShaderText.cpp
@@ -99,9 +99,11 @@ static const GradMaker gGradMakers[] = {
///////////////////////////////////////////////////////////////////////////////
-class ShaderTextView : public SkView {
+class ShaderTextView : public SampleView {
public:
- ShaderTextView() {}
+ ShaderTextView() {
+ this->setBGColor(0xFFDDDDDD);
+ }
protected:
// overrides from SkEventSink
@@ -113,13 +115,7 @@ protected:
return this->INHERITED::onQuery(evt);
}
- void drawBG(SkCanvas* canvas) {
- canvas->drawColor(0xFFDDDDDD);
- }
-
- virtual void onDraw(SkCanvas* canvas) {
- this->drawBG(canvas);
-
+ virtual void onDrawContent(SkCanvas* canvas) {
const char text[] = "Shaded Text";
const int textLen = SK_ARRAY_COUNT(text) - 1;
static int pointSize = 48;
@@ -189,7 +185,7 @@ protected:
}
private:
- typedef SkView INHERITED;
+ typedef SampleView INHERITED;
};
///////////////////////////////////////////////////////////////////////////////
diff --git a/samplecode/SampleShapes.cpp b/samplecode/SampleShapes.cpp
index a175af640a..dc10f1a454 100644
--- a/samplecode/SampleShapes.cpp
+++ b/samplecode/SampleShapes.cpp
@@ -46,7 +46,7 @@ static SkShape* make_shape2() {
///////////////////////////////////////////////////////////////////////////////
-class ShapesView : public SkView {
+class ShapesView : public SampleView {
SkGroupShape fGroup;
SkMatrixRef* fMatrixRefs[4];
public:
@@ -65,6 +65,8 @@ public:
for (size_t i = 0; i < SK_ARRAY_COUNT(fMatrixRefs); i++) {
SkSafeRef(fMatrixRefs[i] = fGroup.getShapeMatrixRef(i));
}
+
+ this->setBGColor(0xFFDDDDDD);
}
virtual ~ShapesView() {
@@ -83,10 +85,6 @@ protected:
return this->INHERITED::onQuery(evt);
}
- void drawBG(SkCanvas* canvas) {
- canvas->drawColor(0xFFDDDDDD);
- }
-
void drawpicture(SkCanvas* canvas, SkPicture& pict) {
#if 0
SkDynamicMemoryWStream ostream;
@@ -101,9 +99,7 @@ protected:
#endif
}
- virtual void onDraw(SkCanvas* canvas) {
- this->drawBG(canvas);
-
+ virtual void onDrawContent(SkCanvas* canvas) {
SkScalar angle = SampleCode::GetAnimScalar(SkIntToScalar(180),
SkIntToScalar(360));
@@ -154,7 +150,7 @@ protected:
}
private:
- typedef SkView INHERITED;
+ typedef SampleView INHERITED;
};
///////////////////////////////////////////////////////////////////////////////
diff --git a/samplecode/SampleTextEffects.cpp b/samplecode/SampleTextEffects.cpp
index bd134d0d23..733dd31c24 100644
--- a/samplecode/SampleTextEffects.cpp
+++ b/samplecode/SampleTextEffects.cpp
@@ -11,8 +11,7 @@
#include "SkTypeface.h"
#include "SkAvoidXfermode.h"
-static inline SkPMColor rgb2gray(SkPMColor c)
-{
+static inline SkPMColor rgb2gray(SkPMColor c) {
unsigned r = SkGetPackedR32(c);
unsigned g = SkGetPackedG32(c);
unsigned b = SkGetPackedB32(c);
@@ -24,25 +23,26 @@ static inline SkPMColor rgb2gray(SkPMColor c)
class SkGrayScaleColorFilter : public SkColorFilter {
public:
- virtual void filterSpan(const SkPMColor src[], int count, SkPMColor result[])
- {
- for (int i = 0; i < count; i++)
+ virtual void filterSpan(const SkPMColor src[], int count,
+ SkPMColor result[]) {
+ for (int i = 0; i < count; i++) {
result[i] = rgb2gray(src[i]);
+ }
}
};
class SkChannelMaskColorFilter : public SkColorFilter {
public:
- SkChannelMaskColorFilter(U8CPU redMask, U8CPU greenMask, U8CPU blueMask)
- {
+ SkChannelMaskColorFilter(U8CPU redMask, U8CPU greenMask, U8CPU blueMask) {
fMask = SkPackARGB32(0xFF, redMask, greenMask, blueMask);
}
- virtual void filterSpan(const SkPMColor src[], int count, SkPMColor result[])
- {
+ virtual void filterSpan(const SkPMColor src[], int count,
+ SkPMColor result[]) {
SkPMColor mask = fMask;
- for (int i = 0; i < count; i++)
+ for (int i = 0; i < count; i++) {
result[i] = src[i] & mask;
+ }
}
private:
@@ -55,8 +55,7 @@ private:
#include "SkLayerRasterizer.h"
#include "SkBlurMaskFilter.h"
-static void r0(SkLayerRasterizer* rast, SkPaint& p)
-{
+static void r0(SkLayerRasterizer* rast, SkPaint& p) {
p.setMaskFilter(SkBlurMaskFilter::Create(SkIntToScalar(3),
SkBlurMaskFilter::kNormal_BlurStyle))->unref();
rast->addLayer(p, SkIntToScalar(3), SkIntToScalar(3));
@@ -72,8 +71,7 @@ static void r0(SkLayerRasterizer* rast, SkPaint& p)
rast->addLayer(p);
}
-static void r1(SkLayerRasterizer* rast, SkPaint& p)
-{
+static void r1(SkLayerRasterizer* rast, SkPaint& p) {
rast->addLayer(p);
p.setAlpha(0x40);
@@ -83,8 +81,7 @@ static void r1(SkLayerRasterizer* rast, SkPaint& p)
rast->addLayer(p);
}
-static void r2(SkLayerRasterizer* rast, SkPaint& p)
-{
+static void r2(SkLayerRasterizer* rast, SkPaint& p) {
p.setStyle(SkPaint::kStrokeAndFill_Style);
p.setStrokeWidth(SK_Scalar1*4);
rast->addLayer(p);
@@ -95,8 +92,7 @@ static void r2(SkLayerRasterizer* rast, SkPaint& p)
rast->addLayer(p);
}
-static void r3(SkLayerRasterizer* rast, SkPaint& p)
-{
+static void r3(SkLayerRasterizer* rast, SkPaint& p) {
p.setStyle(SkPaint::kStroke_Style);
p.setStrokeWidth(SK_Scalar1*3);
rast->addLayer(p);
@@ -107,8 +103,7 @@ static void r3(SkLayerRasterizer* rast, SkPaint& p)
rast->addLayer(p);
}
-static void r4(SkLayerRasterizer* rast, SkPaint& p)
-{
+static void r4(SkLayerRasterizer* rast, SkPaint& p) {
p.setAlpha(0x60);
rast->addLayer(p, SkIntToScalar(3), SkIntToScalar(3));
@@ -122,8 +117,7 @@ static void r4(SkLayerRasterizer* rast, SkPaint& p)
#include "SkDiscretePathEffect.h"
-static void r5(SkLayerRasterizer* rast, SkPaint& p)
-{
+static void r5(SkLayerRasterizer* rast, SkPaint& p) {
rast->addLayer(p);
p.setPathEffect(new SkDiscretePathEffect(SK_Scalar1*4, SK_Scalar1*3))->unref();
@@ -131,8 +125,7 @@ static void r5(SkLayerRasterizer* rast, SkPaint& p)
rast->addLayer(p);
}
-static void r6(SkLayerRasterizer* rast, SkPaint& p)
-{
+static void r6(SkLayerRasterizer* rast, SkPaint& p) {
rast->addLayer(p);
p.setAntiAlias(false);
@@ -150,8 +143,7 @@ public:
Dot2DPathEffect(SkScalar radius, const SkMatrix& matrix)
: Sk2DPathEffect(matrix), fRadius(radius) {}
- virtual void flatten(SkFlattenableWriteBuffer& buffer)
- {
+ virtual void flatten(SkFlattenableWriteBuffer& buffer) {
this->INHERITED::flatten(buffer);
buffer.writeScalar(fRadius);
@@ -159,28 +151,24 @@ public:
virtual Factory getFactory() { return CreateProc; }
protected:
- virtual void next(const SkPoint& loc, int u, int v, SkPath* dst)
- {
+ virtual void next(const SkPoint& loc, int u, int v, SkPath* dst) {
dst->addCircle(loc.fX, loc.fY, fRadius);
}
- Dot2DPathEffect(SkFlattenableReadBuffer& buffer) : Sk2DPathEffect(buffer)
- {
+ Dot2DPathEffect(SkFlattenableReadBuffer& buffer) : Sk2DPathEffect(buffer) {
fRadius = buffer.readScalar();
}
private:
SkScalar fRadius;
- static SkFlattenable* CreateProc(SkFlattenableReadBuffer& buffer)
- {
+ static SkFlattenable* CreateProc(SkFlattenableReadBuffer& buffer) {
return new Dot2DPathEffect(buffer);
}
typedef Sk2DPathEffect INHERITED;
};
-static void r7(SkLayerRasterizer* rast, SkPaint& p)
-{
+static void r7(SkLayerRasterizer* rast, SkPaint& p) {
SkMatrix lattice;
lattice.setScale(SK_Scalar1*6, SK_Scalar1*6, 0, 0);
lattice.postSkew(SK_Scalar1/3, 0, 0, 0);
@@ -188,8 +176,7 @@ static void r7(SkLayerRasterizer* rast, SkPaint& p)
rast->addLayer(p);
}
-static void r8(SkLayerRasterizer* rast, SkPaint& p)
-{
+static void r8(SkLayerRasterizer* rast, SkPaint& p) {
rast->addLayer(p);
SkMatrix lattice;
@@ -211,10 +198,8 @@ public:
Line2DPathEffect(SkScalar width, const SkMatrix& matrix)
: Sk2DPathEffect(matrix), fWidth(width) {}
- virtual bool filterPath(SkPath* dst, const SkPath& src, SkScalar* width)
- {
- if (this->INHERITED::filterPath(dst, src, width))
- {
+ virtual bool filterPath(SkPath* dst, const SkPath& src, SkScalar* width) {
+ if (this->INHERITED::filterPath(dst, src, width)) {
*width = fWidth;
return true;
}
@@ -222,16 +207,14 @@ public:
}
virtual Factory getFactory() { return CreateProc; }
- virtual void flatten(SkFlattenableWriteBuffer& buffer)
- {
+ virtual void flatten(SkFlattenableWriteBuffer& buffer) {
this->INHERITED::flatten(buffer);
buffer.writeScalar(fWidth);
}
+
protected:
- virtual void nextSpan(int u, int v, int ucount, SkPath* dst)
- {
- if (ucount > 1)
- {
+ virtual void nextSpan(int u, int v, int ucount, SkPath* dst) {
+ if (ucount > 1) {
SkPoint src[2], dstP[2];
src[0].set(SkIntToScalar(u) + SK_ScalarHalf,
@@ -245,24 +228,21 @@ protected:
}
}
- Line2DPathEffect(SkFlattenableReadBuffer& buffer) : Sk2DPathEffect(buffer)
- {
+ Line2DPathEffect(SkFlattenableReadBuffer& buffer) : Sk2DPathEffect(buffer) {
fWidth = buffer.readScalar();
}
private:
SkScalar fWidth;
- static SkFlattenable* CreateProc(SkFlattenableReadBuffer& buffer)
- {
+ static SkFlattenable* CreateProc(SkFlattenableReadBuffer& buffer) {
return new Line2DPathEffect(buffer);
}
typedef Sk2DPathEffect INHERITED;
};
-static void r9(SkLayerRasterizer* rast, SkPaint& p)
-{
+static void r9(SkLayerRasterizer* rast, SkPaint& p) {
rast->addLayer(p);
SkMatrix lattice;
@@ -297,8 +277,7 @@ static const struct {
#include "SkXfermode.h"
-static unsigned color_dist16(uint16_t a, uint16_t b)
-{
+static unsigned color_dist16(uint16_t a, uint16_t b) {
unsigned dr = SkAbs32(SkPacked16ToR32(a) - SkPacked16ToR32(b));
unsigned dg = SkAbs32(SkPacked16ToG32(a) - SkPacked16ToG32(b));
unsigned db = SkAbs32(SkPacked16ToB32(a) - SkPacked16ToB32(b));
@@ -306,8 +285,7 @@ static unsigned color_dist16(uint16_t a, uint16_t b)
return SkMax32(dr, SkMax32(dg, db));
}
-static unsigned scale_dist(unsigned dist, unsigned scale)
-{
+static unsigned scale_dist(unsigned dist, unsigned scale) {
dist >>= 6;
dist = (dist << 2) | dist;
dist = (dist << 4) | dist;
@@ -316,8 +294,7 @@ static unsigned scale_dist(unsigned dist, unsigned scale)
// return SkAlphaMul(dist, scale);
}
-static void apply_shader(SkPaint* paint, int index)
-{
+static void apply_shader(SkPaint* paint, int index) {
raster_proc proc = gRastProcs[index];
if (proc)
{
@@ -338,41 +315,28 @@ static void apply_shader(SkPaint* paint, int index)
static int gRastIndex;
-class TextEffectView : public SkView {
+class TextEffectView : public SampleView {
SkTypeface* fFace;
public:
- TextEffectView()
- {
+ TextEffectView() {
fFace = SkTypeface::CreateFromFile("/Users/reed/Downloads/p052024l.pfb");
}
- virtual ~TextEffectView()
- {
+ virtual ~TextEffectView() {
SkSafeUnref(fFace);
}
protected:
// overrides from SkEventSink
- virtual bool onQuery(SkEvent* evt)
- {
- if (SampleCode::TitleQ(*evt))
- {
+ virtual bool onQuery(SkEvent* evt) {
+ if (SampleCode::TitleQ(*evt)) {
SampleCode::TitleR(evt, "Text Effects");
return true;
}
return this->INHERITED::onQuery(evt);
}
- void drawBG(SkCanvas* canvas)
- {
-// canvas->drawColor(0xFFDDDDDD);
- canvas->drawColor(SK_ColorWHITE);
- }
-
- virtual void onDraw(SkCanvas* canvas)
- {
- this->drawBG(canvas);
-
+ virtual void onDrawContent(SkCanvas* canvas) {
canvas->save();
// canvas->scale(SK_Scalar1*2, SK_Scalar1*2, 0, 0);
@@ -390,14 +354,13 @@ protected:
paint.setTypeface(fFace);
- for (int i = 0; i < SK_ARRAY_COUNT(gRastProcs); i++)
- {
+ for (int i = 0; i < SK_ARRAY_COUNT(gRastProcs); i++) {
apply_shader(&paint, i);
// paint.setMaskFilter(NULL);
// paint.setColor(SK_ColorBLACK);
-#if 0
+#if 1
int index = i % SK_ARRAY_COUNT(gLightingColors);
paint.setColorFilter(SkColorFilter::CreateLightingFilter(
gLightingColors[index].fMul,
@@ -406,58 +369,25 @@ protected:
canvas->drawText(str.c_str(), str.size(), x, y, paint);
- if (0)
- {
- SkPath path;
- paint.getTextPath(str.c_str(), str.size(), x + SkIntToScalar(260), y, &path);
- canvas->drawPath(path, paint);
- }
-
y += paint.getFontSpacing();
}
canvas->restore();
-
- if (0)
- {
- SkPoint pts[] = { 0, 0, 0, SkIntToScalar(150) };
- SkColor colors[] = { 0xFFE6E6E6, 0xFFFFFFFF };
- SkShader* s = SkGradientShader::CreateLinear(pts, colors, NULL, 2, SkShader::kClamp_TileMode);
-
- paint.reset();
- paint.setShader(s);
- canvas->drawRectCoords(0, 0, SkIntToScalar(120), SkIntToScalar(150), paint);
- }
-
- if (0)
- {
- SkAvoidXfermode mode(SK_ColorWHITE, 0xFF,
- SkAvoidXfermode::kTargetColor_Mode);
- SkPaint paint;
- x += SkIntToScalar(20);
- SkRect r = { x, 0, x + SkIntToScalar(360), SkIntToScalar(700) };
- paint.setXfermode(&mode);
- paint.setColor(SK_ColorGREEN);
- paint.setAntiAlias(true);
- canvas->drawOval(r, paint);
- }
}
- virtual SkView::Click* onFindClickHandler(SkScalar x, SkScalar y)
- {
+ virtual SkView::Click* onFindClickHandler(SkScalar x, SkScalar y) {
gRastIndex = (gRastIndex + 1) % SK_ARRAY_COUNT(gRastProcs);
this->inval(NULL);
return this->INHERITED::onFindClickHandler(x, y);
}
- virtual bool onClick(Click* click)
- {
+ virtual bool onClick(Click* click) {
return this->INHERITED::onClick(click);
}
private:
- typedef SkView INHERITED;
+ typedef SampleView INHERITED;
};
//////////////////////////////////////////////////////////////////////////////
diff --git a/samplecode/SampleTextOnPath.cpp b/samplecode/SampleTextOnPath.cpp
index 6657d5e71d..96e8c9a9f7 100644
--- a/samplecode/SampleTextOnPath.cpp
+++ b/samplecode/SampleTextOnPath.cpp
@@ -201,7 +201,7 @@ static void test_textpathmatrix(SkCanvas* canvas) {
canvas->drawTextOnPath(text, len, path, &matrix, paint);
}
-class TextOnPathView : public SkView {
+class TextOnPathView : public SampleView {
public:
SkPath fPath;
SkScalar fHOffset;
@@ -226,36 +226,7 @@ protected:
return this->INHERITED::onQuery(evt);
}
- void drawBG(SkCanvas* canvas) {
- canvas->drawColor(SK_ColorWHITE);
-#if 0
- SkRect r;
- SkPaint p;
- SkRandom rand;
- p.setAntiAlias(true);
-
- for (int i = 0; i < 100; i++) {
- SkScalar x = rand.nextUScalar1() * 300 + SkIntToScalar(50);
- SkScalar y = rand.nextUScalar1() * 200 + SkIntToScalar(50);
- SkScalar w = rand.nextUScalar1() * 10;
- SkScalar h = rand.nextUScalar1() * 10;
- r.set(x, y, x + w, y + h);
- canvas->drawRect(r, p);
- }
-
- test_textBounds(canvas);
-// return;
-
- SkBitmap bm;
- if (SkImageDecoder::DecodeFile("/loading_tile.png",
- &bm, SkBitmap::kRGB_565_Config, true))
- canvas->drawBitmap(bm, 0, 0);
-#endif
- }
-
- virtual void onDraw(SkCanvas* canvas) {
- this->drawBG(canvas);
-
+ virtual void onDrawContent(SkCanvas* canvas) {
SkPaint paint;
paint.setAntiAlias(true);
@@ -300,7 +271,7 @@ protected:
private:
int fHints;
- typedef SkView INHERITED;
+ typedef SampleView INHERITED;
};
//////////////////////////////////////////////////////////////////////////////
diff --git a/samplecode/SampleTiling.cpp b/samplecode/SampleTiling.cpp
index 87aeae4941..025049e191 100644
--- a/samplecode/SampleTiling.cpp
+++ b/samplecode/SampleTiling.cpp
@@ -55,7 +55,7 @@ static const SkBitmap::Config gConfigs[] = {
static const int gWidth = 32;
static const int gHeight = 32;
-class TilingView : public SkView {
+class TilingView : public SampleView {
SkPicture fTextPicture;
SkBlurDrawLooper fLooper;
public:
@@ -79,13 +79,7 @@ protected:
return this->INHERITED::onQuery(evt);
}
- void drawBG(SkCanvas* canvas) {
- canvas->drawColor(SK_ColorWHITE);
- }
-
- virtual void onDraw(SkCanvas* canvas) {
- this->drawBG(canvas);
-
+ virtual void onDrawContent(SkCanvas* canvas) {
SkRect r = { 0, 0, SkIntToScalar(gWidth*2), SkIntToScalar(gHeight*2) };
static const char* gConfigNames[] = { "8888", "565", "4444" };
@@ -167,7 +161,7 @@ protected:
}
private:
- typedef SkView INHERITED;
+ typedef SampleView INHERITED;
};
//////////////////////////////////////////////////////////////////////////////
diff --git a/samplecode/SampleTypeface.cpp b/samplecode/SampleTypeface.cpp
index b9426b0ef6..5442e5fd46 100644
--- a/samplecode/SampleTypeface.cpp
+++ b/samplecode/SampleTypeface.cpp
@@ -64,7 +64,7 @@ static const struct {
static const int gFaceCount = SK_ARRAY_COUNT(gFaces);
-class TypefaceView : public SkView {
+class TypefaceView : public SampleView {
SkTypeface* fFaces[gFaceCount];
public:
@@ -74,6 +74,8 @@ public:
fFaces[i] = SkTypeface::CreateFromName(gFaces[i].fName,
gFaces[i].fStyle);
}
+
+ this->setBGColor(0xFFDDDDDD);
}
virtual ~TypefaceView() {
@@ -92,13 +94,7 @@ protected:
return this->INHERITED::onQuery(evt);
}
- void drawBG(SkCanvas* canvas) {
- canvas->drawColor(0xFFDDDDDD);
- }
-
- virtual void onDraw(SkCanvas* canvas) {
- this->drawBG(canvas);
-
+ virtual void onDrawContent(SkCanvas* canvas) {
SkPaint paint;
paint.setAntiAlias(true);
paint.setTextSize(SkIntToScalar(30));
@@ -162,7 +158,7 @@ protected:
}
private:
- typedef SkView INHERITED;
+ typedef SampleView INHERITED;
};
//////////////////////////////////////////////////////////////////////////////
diff --git a/samplecode/SampleVertices.cpp b/samplecode/SampleVertices.cpp
index 7f5aa9665b..f260e1af25 100644
--- a/samplecode/SampleVertices.cpp
+++ b/samplecode/SampleVertices.cpp
@@ -35,7 +35,7 @@ static SkShader* make_shader1(const SkIPoint& size) {
SK_ARRAY_COUNT(colors), SkShader::kMirror_TileMode, NULL);
}
-class VerticesView : public SkView {
+class VerticesView : public SampleView {
SkShader* fShader0;
SkShader* fShader1;
@@ -51,6 +51,8 @@ public:
make_tris(&fRecs[2]);
fScale = SK_Scalar1;
+
+ this->setBGColor(SK_ColorGRAY);
}
virtual ~VerticesView() {
@@ -70,15 +72,9 @@ protected:
return this->INHERITED::onQuery(evt);
}
- void drawBG(SkCanvas* canvas) {
- canvas->drawColor(SK_ColorGRAY);
- }
-
SkScalar fScale;
- virtual void onDraw(SkCanvas* canvas) {
- this->drawBG(canvas);
-
+ virtual void onDrawContent(SkCanvas* canvas) {
SkPaint paint;
paint.setDither(true);
paint.setFilterBitmap(true);
@@ -214,7 +210,7 @@ private:
Rec fRecs[3];
- typedef SkView INHERITED;
+ typedef SampleView INHERITED;
};
//////////////////////////////////////////////////////////////////////////////