update to SampleView



git-svn-id: http://skia.googlecode.com/svn/trunk@1252 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/samplecode/SampleApp.cpp b/samplecode/SampleApp.cpp
index 724602d..65010ac 100644
--- a/samplecode/SampleApp.cpp
+++ b/samplecode/SampleApp.cpp
@@ -1334,7 +1334,7 @@
     return this->INHERITED::onQuery(evt);
 }
 
-#define TEST_GPIPEx
+#define TEST_GPIPE
 
 #ifdef TEST_GPIPE
     #include "SkGPipe.h"
@@ -1348,10 +1348,11 @@
     virtual void notifyWritten(size_t bytes);
 
 private:
-    SkGPipeReader fReader;
-    void*         fBlock;
-    size_t        fBlockSize;
-    size_t        fBytesWritten;
+    SkGPipeReader   fReader;
+    void*           fBlock;
+    size_t          fBlockSize;
+    size_t          fBytesWritten;
+    int             fAtomsWritten;
     SkGPipeReader::Status   fStatus;
 
     size_t        fTotalWritten;
@@ -1362,13 +1363,15 @@
     fBlockSize = fBytesWritten = 0;
     fStatus = SkGPipeReader::kDone_Status;
     fTotalWritten = 0;
+    fAtomsWritten = 0;
 }
 
 SimplePC::~SimplePC() {
 //    SkASSERT(SkGPipeReader::kDone_Status == fStatus);
     sk_free(fBlock);
 
-    SkDebugf("--- %d bytes written to pipe, status %d\n", fTotalWritten, fStatus);
+    SkDebugf("--- %d bytes %d atoms, status %d\n", fTotalWritten,
+             fAtomsWritten, fStatus);
 }
 
 void* SimplePC::requestBlock(size_t minRequest, size_t* actual) {
@@ -1388,6 +1391,8 @@
     SkASSERT(SkGPipeReader::kError_Status != fStatus);
     fBytesWritten += bytes;
     fTotalWritten += bytes;
+
+    fAtomsWritten += 1;
 }
 
 #endif
diff --git a/samplecode/SampleArc.cpp b/samplecode/SampleArc.cpp
index bba5f6f..504d8d8 100644
--- a/samplecode/SampleArc.cpp
+++ b/samplecode/SampleArc.cpp
@@ -28,33 +28,25 @@
     SkParsePath::ToSVGString(p2, &str2);
 }
 
-class ArcsView : public SkView {
+class ArcsView : public SampleView {
 public:
-	ArcsView()
-    {
+	ArcsView() {
         testparse();
         fSweep = SkIntToScalar(100);
+        this->setBGColor(0xFFDDDDDD);
     }
 
 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, "Arcs");
             return true;
         }
         return this->INHERITED::onQuery(evt);
     }
     
-    void drawBG(SkCanvas* canvas)
-    {
-        canvas->drawColor(0xFFDDDDDD);
-    }
-    
-    static void drawRectWithLines(SkCanvas* canvas, const SkRect& r, const SkPaint& p)
-    {
+    static void drawRectWithLines(SkCanvas* canvas, const SkRect& r, const SkPaint& p) {
         canvas->drawRect(r, p);
         canvas->drawLine(r.fLeft, r.fTop, r.fRight, r.fBottom, p);
         canvas->drawLine(r.fLeft, r.fBottom, r.fRight, r.fTop, p);
@@ -63,8 +55,7 @@
     }
     
     static void draw_label(SkCanvas* canvas, const SkRect& rect,
-                            int start, int sweep)
-    {
+                            int start, int sweep) {
         SkPaint paint;
         
         paint.setAntiAlias(true);
@@ -79,8 +70,7 @@
                          rect.fBottom + paint.getTextSize() * 5/4, paint);
     }
     
-    static void drawArcs(SkCanvas* canvas)
-    {
+    static void drawArcs(SkCanvas* canvas) {
         SkPaint paint;
         SkRect  r;
         SkScalar w = SkIntToScalar(75);
@@ -107,8 +97,7 @@
             225, 90
         };
         
-        for (int i = 0; i < SK_ARRAY_COUNT(gAngles); i += 2)
-        {
+        for (int i = 0; i < SK_ARRAY_COUNT(gAngles); i += 2) {
             paint.setColor(SK_ColorBLACK);
             drawRectWithLines(canvas, r, paint);
 
@@ -124,10 +113,7 @@
         canvas->restore();
     }
     
-    virtual void onDraw(SkCanvas* canvas)
-    {
-        this->drawBG(canvas);
-        
+    virtual void onDrawContent(SkCanvas* canvas) {
         fSweep = SampleCode::GetAnimScalar(SkIntToScalar(360)/24,
                                            SkIntToScalar(360));
 //        fSweep = SkFloatToScalar(359.99f);
@@ -175,22 +161,20 @@
         this->inval(NULL);
     }
     
-    virtual SkView::Click* onFindClickHandler(SkScalar x, SkScalar y) 
-    {
+    virtual SkView::Click* onFindClickHandler(SkScalar x, SkScalar y) {
      //   fSweep += SK_Scalar1;
         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:
     SkScalar fSweep;
 
-    typedef SkView INHERITED;
+    typedef SampleView INHERITED;
 };
 
 //////////////////////////////////////////////////////////////////////////////
diff --git a/samplecode/SampleComplexClip.cpp b/samplecode/SampleComplexClip.cpp
index c7c4896..29bc805 100644
--- a/samplecode/SampleComplexClip.cpp
+++ b/samplecode/SampleComplexClip.cpp
@@ -3,9 +3,10 @@
 #include "SkPath.h"
 #include "SkView.h"
 
-class ComplexClipView : public SkView {
+class ComplexClipView : public SampleView {
 public:
 	ComplexClipView() {
+        this->setBGColor(0xFFA0DDA0);
     }
 
 protected:
@@ -18,11 +19,7 @@
         return this->INHERITED::onQuery(evt);
     }
 
-    void drawBG(SkCanvas* canvas) {
-        canvas->drawColor(SkColorSetRGB(0xA0,0xDD,0xA0));
-    }
-
-    virtual void onDraw(SkCanvas* canvas) {
+    virtual void onDrawContent(SkCanvas* canvas) {
         SkPath path;
         path.moveTo(SkIntToScalar(0),   SkIntToScalar(50));
         path.quadTo(SkIntToScalar(0),   SkIntToScalar(0),   SkIntToScalar(50),  SkIntToScalar(0));
@@ -62,7 +59,6 @@
         clipB.close();
         SkColor colorB = SK_ColorRED;
 
-        drawBG(canvas);
         SkPaint paint;
         paint.setAntiAlias(true);
 
@@ -145,7 +141,7 @@
         return this->INHERITED::onFindClickHandler(x, y);
     }
 private:
-    typedef SkView INHERITED;
+    typedef SampleView INHERITED;
 };
 
 //////////////////////////////////////////////////////////////////////////////
diff --git a/samplecode/SampleCull.cpp b/samplecode/SampleCull.cpp
index fb6231d..7b4eab6 100644
--- a/samplecode/SampleCull.cpp
+++ b/samplecode/SampleCull.cpp
@@ -10,8 +10,7 @@
 #include "SkUtils.h"
 #include "SkRandom.h"
 
-static void addbump(SkPath* path, const SkPoint pts[2], SkScalar bump)
-{
+static void addbump(SkPath* path, const SkPoint pts[2], SkScalar bump) {
     SkVector    tang;
     
     tang.setLength(pts[1].fX - pts[0].fX, pts[1].fY - pts[0].fY, bump);
@@ -21,8 +20,7 @@
     path->lineTo(pts[1]);
 }
 
-static void subdivide(SkPath* path, SkScalar bump)
-{
+static void subdivide(SkPath* path, SkScalar bump) {
     SkPath::Iter    iter(*path, false);
     SkPoint         pts[4];
     SkPath          tmp;
@@ -46,8 +44,7 @@
     path->swap(tmp);
 }
 
-static SkIPoint* getpts(const SkPath& path, int* count)
-{
+static SkIPoint* getpts(const SkPath& path, int* count) {
     SkPoint     pts[4];
     int         n = 1;
     SkIPoint*   array;
@@ -92,15 +89,13 @@
     return array;
 }
 
-static SkScalar nextScalarRange(SkRandom& rand, SkScalar min, SkScalar max)
-{
+static SkScalar nextScalarRange(SkRandom& rand, SkScalar min, SkScalar max) {
     return min + SkScalarMul(rand.nextUScalar1(), max - min);
 }
 
-class CullView : public SkView {
+class CullView : public SampleView {
 public:
-	CullView()
-    {
+	CullView() {
         fClip.set(0, 0, SkIntToScalar(160), SkIntToScalar(160));
         
         SkRandom    rand;
@@ -119,51 +114,25 @@
         subdivide(&fPath, bump);
         subdivide(&fPath, bump);
         fPoints = getpts(fPath, &fPtCount);
+        
+        this->setBGColor(0xFFDDDDDD);
     }
     
-    virtual ~CullView()
-    {
+    virtual ~CullView() {
         delete[] fPoints;
     }
 
 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, "Culling");
             return true;
         }
         return this->INHERITED::onQuery(evt);
     }
     
-    void drawBG(SkCanvas* canvas)
-    {
-        canvas->drawColor(0xFFDDDDDD);
-        
-    #if 0
-        SkPaint paint;
-        
-        paint.setAntiAliasOn(true);
-        paint.setTextSize(SkIntToScalar(20));
-        paint.setTypeface(SkTypeface::Create("serif", SkTypeface::kBoldItalic))->unref();
-
-        uint16_t    text[20];
-        
-        text[0] = 'H';
-        text[1] = 'i';
-        text[2] = ' ';
-        for (int i = 3; i < 20; i++)
-            text[i] = 0x3040 + i;
-        canvas->drawText16(text, 20, SkIntToScalar(20), SkIntToScalar(20), paint);
-    #endif
-    }
-    
-    virtual void onDraw(SkCanvas* canvas)
-    {
-        this->drawBG(canvas);
-        
+    virtual void onDrawContent(SkCanvas* canvas) {
         SkAutoCanvasRestore ar(canvas, true);
 
         canvas->translate(  SkScalarHalf(this->width() - fClip.width()),
@@ -204,23 +173,13 @@
         this->inval(NULL);
     }
     
-    virtual SkView::Click* onFindClickHandler(SkScalar x, SkScalar y) 
-    {
-        return this->INHERITED::onFindClickHandler(x, y);
-    }
-    
-    virtual bool onClick(Click* click) 
-    {
-        return this->INHERITED::onClick(click);
-    }
-    
 private:
     SkRect      fClip;
     SkIPoint*   fPoints;
     SkPath      fPath;
     int         fPtCount;
 
-    typedef SkView INHERITED;
+    typedef SampleView INHERITED;
 };
 
 //////////////////////////////////////////////////////////////////////////////
diff --git a/samplecode/SampleDither.cpp b/samplecode/SampleDither.cpp
index 1199fa4..3e77a5d 100644
--- a/samplecode/SampleDither.cpp
+++ b/samplecode/SampleDither.cpp
@@ -62,8 +62,7 @@
     }
 }
 
-static void make_bm(SkBitmap* bm)
-{
+static void make_bm(SkBitmap* bm) {
     bm->setConfig(SkBitmap::kARGB_8888_Config, 100, 100);
     bm->allocPixels();
 #if 0
@@ -109,7 +108,7 @@
     }
 }
 
-class DitherView : public SkView {
+class DitherView : public SampleView {
 public:
     SkBitmap    fBM, fBMPreDither, fBM16;
     SkScalar fAngle;
@@ -121,6 +120,8 @@
         fBM.copyTo(&fBM16, SkBitmap::kARGB_4444_Config);
         
         fAngle = 0;
+        
+        this->setBGColor(0xFF181818);
     }
 
 protected:
@@ -133,14 +134,7 @@
         return this->INHERITED::onQuery(evt);
     }
     
-    void drawBG(SkCanvas* canvas) {
-//        canvas->drawColor(0xFFDDDDDD);
-        canvas->drawColor(0xFF181818);
-    }
-    
-    virtual void onDraw(SkCanvas* canvas) {
-        this->drawBG(canvas);
-
+    virtual void onDrawContent(SkCanvas* canvas) {
         SkPaint paint;
         SkScalar x = SkIntToScalar(10);
         SkScalar y = SkIntToScalar(10);
@@ -173,20 +167,8 @@
         this->inval(NULL);
     }
 
-    virtual SkView::Click* onFindClickHandler(SkScalar x, SkScalar y) 
-    {
-     //   fSweep += SK_Scalar1;
-        this->inval(NULL);
-        return this->INHERITED::onFindClickHandler(x, y);
-    }
-    
-    virtual bool onClick(Click* click) 
-    {
-        return this->INHERITED::onClick(click);
-    }
-    
 private:
-    typedef SkView INHERITED;
+    typedef SampleView INHERITED;
 };
 
 //////////////////////////////////////////////////////////////////////////////
diff --git a/samplecode/SampleDrawLooper.cpp b/samplecode/SampleDrawLooper.cpp
index e1b63a1..abe2c70 100644
--- a/samplecode/SampleDrawLooper.cpp
+++ b/samplecode/SampleDrawLooper.cpp
@@ -9,7 +9,7 @@
 #define WIDTH   200
 #define HEIGHT  200
 
-class LooperView : public SkView {
+class LooperView : public SampleView {
 public:
 
     SkLayerDrawLooper*   fLooper;
@@ -48,6 +48,8 @@
                 paint->setMaskFilter(mf)->unref();
             }
         }
+        
+        this->setBGColor(0xFFDDDDDD);
     }
 
     virtual ~LooperView() {
@@ -64,14 +66,7 @@
         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) {
         SkPaint  paint;
         paint.setTextSize(SkIntToScalar(72));
         paint.setLooper(fLooper);
@@ -86,17 +81,8 @@
                          paint);
     }
 
-    virtual SkView::Click* onFindClickHandler(SkScalar x, SkScalar y) {
-        this->inval(NULL);
-        return this->INHERITED::onFindClickHandler(x, y);
-    }
-
-    virtual bool onClick(Click* click) {
-        return this->INHERITED::onClick(click);
-    }
-
 private:
-    typedef SkView INHERITED;
+    typedef SampleView INHERITED;
 };
 
 //////////////////////////////////////////////////////////////////////////////
diff --git a/samplecode/SampleEmboss.cpp b/samplecode/SampleEmboss.cpp
index d12074f..8b3f194 100644
--- a/samplecode/SampleEmboss.cpp
+++ b/samplecode/SampleEmboss.cpp
@@ -19,11 +19,10 @@
 #include "SkTypeface.h"
 #include "SkXfermode.h"
 
-class EmbossView : public SkView {
+class EmbossView : public SampleView {
     SkEmbossMaskFilter::Light   fLight;
 public:
-	EmbossView()
-    {
+	EmbossView() {
         fLight.fDirection[0] = SK_Scalar1;
         fLight.fDirection[1] = SK_Scalar1;
         fLight.fDirection[2] = SK_Scalar1;
@@ -33,25 +32,15 @@
     
 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, "Emboss");
             return true;
         }
         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) {
         SkPaint paint;
         
         paint.setAntiAlias(true);
@@ -67,7 +56,7 @@
     
 private:
 
-    typedef SkView INHERITED;
+    typedef SampleView INHERITED;
 };
 
 //////////////////////////////////////////////////////////////////////////////
diff --git a/samplecode/SampleFillType.cpp b/samplecode/SampleFillType.cpp
index dd4ea1a..393c5f7 100644
--- a/samplecode/SampleFillType.cpp
+++ b/samplecode/SampleFillType.cpp
@@ -9,13 +9,15 @@
 #include "SkShader.h"
 #include "SkUtils.h"
 
-class FillTypeView : public SkView {
+class FillTypeView : public SampleView {
     SkPath fPath;
 public:
 	FillTypeView() {
         const SkScalar radius = SkIntToScalar(45);
         fPath.addCircle(SkIntToScalar(50), SkIntToScalar(50), radius);
         fPath.addCircle(SkIntToScalar(100), SkIntToScalar(100), radius);
+
+        this->setBGColor(0xFFDDDDDD);
     }
     
 protected:
@@ -28,10 +30,6 @@
         return this->INHERITED::onQuery(evt);
     }
     
-    void drawBG(SkCanvas* canvas) {
-        canvas->drawColor(0xFFDDDDDD);
-    }
-    
     void showPath(SkCanvas* canvas, int x, int y, SkPath::FillType ft,
                   SkScalar scale, const SkPaint& paint) {
 
@@ -60,9 +58,7 @@
                  scale, paint);
     }
     
-    virtual void onDraw(SkCanvas* canvas) {
-        drawBG(canvas);
-        
+    virtual void onDrawContent(SkCanvas* canvas) {
         canvas->translate(SkIntToScalar(20), SkIntToScalar(20));
         
         SkPaint paint;
@@ -83,16 +79,8 @@
         showFour(canvas, scale, paint);
     }
     
-    virtual SkView::Click* onFindClickHandler(SkScalar x, SkScalar y) {
-        return this->INHERITED::onFindClickHandler(x, y);
-    }
-    
-    virtual bool onClick(Click* click) {
-        return this->INHERITED::onClick(click);
-    }
-    
 private:
-    typedef SkView INHERITED;
+    typedef SampleView INHERITED;
 };
 
 //////////////////////////////////////////////////////////////////////////////
diff --git a/samplecode/SampleFilter.cpp b/samplecode/SampleFilter.cpp
index 49d9c48..244fe51 100644
--- a/samplecode/SampleFilter.cpp
+++ b/samplecode/SampleFilter.cpp
@@ -14,8 +14,7 @@
 #include "SkColorFilter.h"
 #include "SkDither.h"
 
-static void make_bm(SkBitmap* bm)
-{
+static void make_bm(SkBitmap* bm) {
     const SkColor colors[] = {
         SK_ColorRED, SK_ColorGREEN,
         SK_ColorBLUE, SK_ColorWHITE
@@ -32,8 +31,7 @@
 }
 
 static SkScalar draw_bm(SkCanvas* canvas, const SkBitmap& bm,
-                        SkScalar x, SkScalar y, SkPaint* paint)
-{
+                        SkScalar x, SkScalar y, SkPaint* paint) {
 #if 1
     canvas->drawBitmap(bm, x, y, paint);
     return SkIntToScalar(bm.width()) * 5/4;
@@ -52,8 +50,7 @@
 #endif
 }
 
-static SkScalar draw_set(SkCanvas* c, const SkBitmap& bm, SkScalar x, SkPaint* p)
-{
+static SkScalar draw_set(SkCanvas* c, const SkBitmap& bm, SkScalar x, SkPaint* p) {
     x += draw_bm(c, bm, x, 0, p);
     p->setFilterBitmap(true);
     x += draw_bm(c, bm, x, 0, p);
@@ -71,8 +68,7 @@
     "8888"
 };
 
-static SkScalar draw_row(SkCanvas* canvas, const SkBitmap& bm)
-{
+static SkScalar draw_row(SkCanvas* canvas, const SkBitmap& bm) {
     SkAutoCanvasRestore acr(canvas, true);
 
     SkPaint paint;
@@ -94,39 +90,30 @@
     return x * scale / 3;
 }
 
-class FilterView : public SkView {
+class FilterView : public SampleView {
 public:
     SkBitmap    fBM8, fBM4444, fBM16, fBM32;
 
-	FilterView()
-    {
+	FilterView() {
         make_bm(&fBM8);
         fBM8.copyTo(&fBM4444, SkBitmap::kARGB_4444_Config);
         fBM8.copyTo(&fBM16, SkBitmap::kRGB_565_Config);
         fBM8.copyTo(&fBM32, SkBitmap::kARGB_8888_Config);
+        
+        this->setBGColor(0xFFDDDDDD);
     }
 
 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, "Filter");
             return true;
         }
         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) {
         SkScalar x = SkIntToScalar(10);
         SkScalar y = SkIntToScalar(10);
         
@@ -140,20 +127,8 @@
         draw_row(canvas, fBM32);
     }
     
-    virtual SkView::Click* onFindClickHandler(SkScalar x, SkScalar y) 
-    {
-     //   fSweep += SK_Scalar1;
-        this->inval(NULL);
-        return this->INHERITED::onFindClickHandler(x, y);
-    }
-    
-    virtual bool onClick(Click* click) 
-    {
-        return this->INHERITED::onClick(click);
-    }
-    
 private:
-    typedef SkView INHERITED;
+    typedef SampleView INHERITED;
 };
 
 //////////////////////////////////////////////////////////////////////////////
diff --git a/samplecode/SampleFilter2.cpp b/samplecode/SampleFilter2.cpp
index 590d3ef..c1a16a8 100644
--- a/samplecode/SampleFilter2.cpp
+++ b/samplecode/SampleFilter2.cpp
@@ -17,7 +17,7 @@
     "/skimages/background_01.png"
 };
 
-class Filter2View : public SkView {
+class Filter2View : public SampleView {
 public:
     SkBitmap*   fBitmaps;
     int         fBitmapCount;
@@ -38,6 +38,8 @@
                                    SkImageDecoder::kDecodePixels_Mode, NULL);
         }
         fCurrIndex = 0;
+        
+        this->setBGColor(SK_ColorGRAY);
     }
     
     virtual ~Filter2View() {
@@ -56,15 +58,7 @@
         return this->INHERITED::onQuery(evt);
     }
     
-    void drawBG(SkCanvas* canvas) {
-//        canvas->drawColor(0xFFDDDDDD);
-        canvas->drawColor(SK_ColorGRAY);
-//        canvas->drawColor(SK_ColorWHITE);
-    }
-    
-    virtual void onDraw(SkCanvas* canvas) {
-        this->drawBG(canvas);
-        
+    virtual void onDrawContent(SkCanvas* canvas) {
         canvas->translate(SkIntToScalar(10), SkIntToScalar(50));
         
         const SkScalar W = SkIntToScalar(fBitmaps[0].width() + 1);
@@ -112,7 +106,7 @@
     }
     
 private:
-    typedef SkView INHERITED;
+    typedef SampleView INHERITED;
 };
 
 //////////////////////////////////////////////////////////////////////////////
diff --git a/samplecode/SampleFontCache.cpp b/samplecode/SampleFontCache.cpp
index 75645bd..0b8187a 100644
--- a/samplecode/SampleFontCache.cpp
+++ b/samplecode/SampleFontCache.cpp
@@ -6,8 +6,7 @@
 
 #include <pthread.h>
 
-static void call_measure()
-{
+static void call_measure() {
     SkPaint paint;
     uint16_t text[32];
     SkRandom rand;
@@ -17,8 +16,7 @@
     for (int j = 0; j < SK_ARRAY_COUNT(text); j++)
         text[j] = (uint16_t)((rand.nextU() & 0xFF) + 32);
     
-    for (int i = 9; i < 36; i++)
-    {
+    for (int i = 9; i < 36; i++) {
         SkPaint::FontMetrics m;
         
         paint.setTextSize(SkIntToScalar(i));
@@ -27,8 +25,7 @@
     }
 }
 
-static void call_draw(SkCanvas* canvas)
-{
+static void call_draw(SkCanvas* canvas) {
     SkPaint paint;
     uint16_t text[32];
     SkRandom rand;
@@ -55,28 +52,24 @@
 
 static bool gDone;
 
-static void* measure_proc(void* context)
-{
-    while (!gDone)
-    {
+static void* measure_proc(void* context) {
+    while (!gDone) {
         call_measure();
     }
     return NULL;
 }
 
-static void* draw_proc(void* context)
-{
+static void* draw_proc(void* context) {
     SkBitmap* bm = (SkBitmap*)context;
     SkCanvas    canvas(*bm);
 
-    while (!gDone)
-    {
+    while (!gDone) {
         call_draw(&canvas);
     }
     return NULL;
 }
 
-class FontCacheView : public SkView {
+class FontCacheView : public SampleView {
 public:
     enum { N = 4 };
     
@@ -84,11 +77,9 @@
     pthread_t   fDThreads[N];
     SkBitmap    fBitmaps[N];
 
-	FontCacheView()
-    {
+	FontCacheView() {
         gDone = false;
-        for (int i = 0; i < N; i++)
-        {
+        for (int i = 0; i < N; i++) {
             int status;
             
             status = pthread_create(&fMThreads[i], NULL,  measure_proc, NULL);
@@ -99,13 +90,12 @@
             status = pthread_create(&fDThreads[i], NULL,  draw_proc, &fBitmaps[i]);
             SkASSERT(0 == status);
         }
+        this->setBGColor(0xFFDDDDDD);
     }
     
-    virtual ~FontCacheView()
-    {
+    virtual ~FontCacheView() {
         gDone = true;
-        for (int i = 0; i < N; i++)
-        {
+        for (int i = 0; i < N; i++) {
             void* ret;
             int status = pthread_join(fMThreads[i], &ret);
             SkASSERT(0 == status);
@@ -116,49 +106,26 @@
     
 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, "FontCache");
             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) {
         SkScalar x = 0;
         SkScalar y = 0;
-        for (int i = 0; i < N; i++)
-        {
+        for (int i = 0; i < N; i++) {
             canvas->drawBitmap(fBitmaps[i], x, y);
             x += SkIntToScalar(fBitmaps[i].width());
         }
         this->inval(NULL);
     }
     
-    virtual SkView::Click* onFindClickHandler(SkScalar x, SkScalar y) 
-    {
-        this->inval(NULL);
-        return this->INHERITED::onFindClickHandler(x, y);
-    }
-    
-    virtual bool onClick(Click* click) 
-    {
-        return this->INHERITED::onClick(click);
-    }
-    
 private:
-    typedef SkView INHERITED;
+    typedef SampleView INHERITED;
 };
 
 //////////////////////////////////////////////////////////////////////////////
diff --git a/samplecode/SampleLines.cpp b/samplecode/SampleLines.cpp
index 24291f3..03dd30f 100644
--- a/samplecode/SampleLines.cpp
+++ b/samplecode/SampleLines.cpp
@@ -23,34 +23,24 @@
 #include "SkColorPriv.h"
 #include "SkImageDecoder.h"
 
-class LinesView : public SkView {
+class LinesView : public SampleView {
 public:
 	LinesView() {}
     
 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, "Lines");
             return true;
         }
         return this->INHERITED::onQuery(evt);
     }
 
-    void drawBG(SkCanvas* canvas)
-    {
-//        canvas->drawColor(0xFFDDDDDD);
-        canvas->drawColor(SK_ColorWHITE);
-   //     canvas->drawColor(SK_ColorBLACK);
-    }
-    
     /*
      0x1F * x + 0x1F * (32 - x)
      */
-    void drawRings(SkCanvas* canvas)
-    {
+    void drawRings(SkCanvas* canvas) {
         canvas->scale(SkIntToScalar(1)/2, SkIntToScalar(1)/2);
         
         SkRect  r;        
@@ -67,10 +57,7 @@
         canvas->drawRect(r, paint);
     }
     
-    virtual void onDraw(SkCanvas* canvas)
-    {
-        this->drawBG(canvas);
-        
+    virtual void onDrawContent(SkCanvas* canvas) {
         SkBitmap bm;
         SkImageDecoder::DecodeFile("/kill.gif", &bm);
         canvas->drawBitmap(bm, 0, 0, NULL);
@@ -104,8 +91,7 @@
         canvas->drawLine(x, y, x + SkIntToScalar(90), y + SkIntToScalar(90), paint);
     }
 
-    virtual SkView::Click* onFindClickHandler(SkScalar x, SkScalar y) 
-    {
+    virtual SkView::Click* onFindClickHandler(SkScalar x, SkScalar y) {
         fAlpha = SkScalarRound(y);
         this->inval(NULL);
         return NULL;
@@ -113,7 +99,7 @@
 private:
 
     int fAlpha;
-    typedef SkView INHERITED;
+    typedef SampleView INHERITED;
 };
 
 //////////////////////////////////////////////////////////////////////////////