add OVerView slide to samplecode
authorreed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81>
Tue, 3 Nov 2009 04:00:48 +0000 (04:00 +0000)
committerreed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81>
Tue, 3 Nov 2009 04:00:48 +0000 (04:00 +0000)
change inline functions in SkColorPriv.h to static inline

git-svn-id: http://skia.googlecode.com/svn/trunk@415 2bbb7eff-a529-9590-31e7-b0007b416f81

include/core/SkColorPriv.h
include/views/SkView.h
samplecode/OverView.cpp [new file with mode: 0644]
samplecode/SampleApp.cpp
src/core/SkGraphics.cpp
src/views/SkView.cpp
xcode/Animator/Animator.xcodeproj/project.pbxproj
xcode/core/core.xcodeproj/project.pbxproj
xcode/sampleapp/SampleApp.xcodeproj/project.pbxproj

index 5129ac6a6ec1c71d962195c546594dba1f757d17..15b4d6a7adc034e1e7a987028240580d6628abee 100644 (file)
@@ -50,7 +50,7 @@ static inline unsigned SkAlpha255To256(U8CPU alpha) {
 //  The caller may want negative values, so keep all params signed (int)
 //  so we don't accidentally slip into unsigned math and lose the sign
 //  extension when we shift (in SkAlphaMul)
-inline int SkAlphaBlend(int src, int dst, int scale256) {
+static inline int SkAlphaBlend(int src, int dst, int scale256) {
     SkASSERT((unsigned)scale256 <= 256);
     return dst + SkAlphaMul(src - dst, scale256);
 }
@@ -200,7 +200,7 @@ static inline void SkBlendRGB16(const uint16_t src[], uint16_t dst[],
 #define SkB32Assert(b)  SkASSERT((unsigned)(b) <= SK_B32_MASK)
 
 #ifdef SK_DEBUG
-    inline void SkPMColorAssert(SkPMColor c) {
+    static inline void SkPMColorAssert(SkPMColor c) {
         unsigned a = SkGetPackedA32(c);
         unsigned r = SkGetPackedR32(c);
         unsigned g = SkGetPackedG32(c);
@@ -215,7 +215,7 @@ static inline void SkBlendRGB16(const uint16_t src[], uint16_t dst[],
     #define SkPMColorAssert(c)
 #endif
 
-inline SkPMColor SkPackARGB32(U8CPU a, U8CPU r, U8CPU g, U8CPU b) {
+static inline SkPMColor SkPackARGB32(U8CPU a, U8CPU r, U8CPU g, U8CPU b) {
     SkA32Assert(a);
     SkASSERT(r <= a);
     SkASSERT(g <= a);
@@ -227,7 +227,7 @@ inline SkPMColor SkPackARGB32(U8CPU a, U8CPU r, U8CPU g, U8CPU b) {
 
 extern const uint32_t gMask_00FF00FF;
 
-inline uint32_t SkAlphaMulQ(uint32_t c, unsigned scale) {
+static inline uint32_t SkAlphaMulQ(uint32_t c, unsigned scale) {
     uint32_t mask = gMask_00FF00FF;
 //    uint32_t mask = 0xFF00FF;
 
@@ -236,11 +236,11 @@ inline uint32_t SkAlphaMulQ(uint32_t c, unsigned scale) {
     return (rb & mask) | (ag & ~mask);
 }
 
-inline SkPMColor SkPMSrcOver(SkPMColor src, SkPMColor dst) {
+static inline SkPMColor SkPMSrcOver(SkPMColor src, SkPMColor dst) {
     return src + SkAlphaMulQ(dst, SkAlpha255To256(255 - SkGetPackedA32(src)));
 }
 
-inline SkPMColor SkBlendARGB32(SkPMColor src, SkPMColor dst, U8CPU aa) {
+static inline SkPMColor SkBlendARGB32(SkPMColor src, SkPMColor dst, U8CPU aa) {
     SkASSERT((unsigned)aa <= 255);
 
     unsigned src_scale = SkAlpha255To256(aa);
@@ -257,18 +257,15 @@ inline SkPMColor SkBlendARGB32(SkPMColor src, SkPMColor dst, U8CPU aa) {
 #define SkB32ToB16_MACRO(b)   ((unsigned)(b) >> (SK_B32_BITS - SK_B16_BITS))
 
 #ifdef SK_DEBUG
-    inline unsigned SkR32ToR16(unsigned r)
-    {
+    static inline unsigned SkR32ToR16(unsigned r) {
         SkR32Assert(r);
         return SkR32ToR16_MACRO(r);
     }
-    inline unsigned SkG32ToG16(unsigned g)
-    {
+    static inline unsigned SkG32ToG16(unsigned g) {
         SkG32Assert(g);
         return SkG32ToG16_MACRO(g);
     }
-    inline unsigned SkB32ToB16(unsigned b)
-    {
+    static inline unsigned SkB32ToB16(unsigned b) {
         SkB32Assert(b);
         return SkB32ToB16_MACRO(b);
     }
@@ -282,16 +279,14 @@ inline SkPMColor SkBlendARGB32(SkPMColor src, SkPMColor dst, U8CPU aa) {
 #define SkPacked32ToG16(c)  (((unsigned)(c) >> (SK_G32_SHIFT + SK_G32_BITS - SK_G16_BITS)) & SK_G16_MASK)
 #define SkPacked32ToB16(c)  (((unsigned)(c) >> (SK_B32_SHIFT + SK_B32_BITS - SK_B16_BITS)) & SK_B16_MASK)
 
-inline U16CPU SkPixel32ToPixel16(SkPMColor c)
-{
+static inline U16CPU SkPixel32ToPixel16(SkPMColor c) {
     unsigned r = ((c >> (SK_R32_SHIFT + (8 - SK_R16_BITS))) & SK_R16_MASK) << SK_R16_SHIFT;
     unsigned g = ((c >> (SK_G32_SHIFT + (8 - SK_G16_BITS))) & SK_G16_MASK) << SK_G16_SHIFT;
     unsigned b = ((c >> (SK_B32_SHIFT + (8 - SK_B16_BITS))) & SK_B16_MASK) << SK_B16_SHIFT;
     return r | g | b;
 }
 
-inline U16CPU SkPack888ToRGB16(U8CPU r, U8CPU g, U8CPU b)
-{
+static inline U16CPU SkPack888ToRGB16(U8CPU r, U8CPU g, U8CPU b) {
     return  (SkR32ToR16(r) << SK_R16_SHIFT) |
             (SkG32ToG16(g) << SK_G16_SHIFT) |
             (SkB32ToB16(b) << SK_B16_SHIFT);
@@ -304,8 +299,7 @@ inline U16CPU SkPack888ToRGB16(U8CPU r, U8CPU g, U8CPU b)
 
 #define SkShouldDitherXY(x, y)  (((x) ^ (y)) & 1)
 
-inline uint16_t SkDitherPack888ToRGB16(U8CPU r, U8CPU g, U8CPU b)
-{
+static inline uint16_t SkDitherPack888ToRGB16(U8CPU r, U8CPU g, U8CPU b) {
     r = ((r << 1) - ((r >> (8 - SK_R16_BITS) << (8 - SK_R16_BITS)) | (r >> SK_R16_BITS))) >> (8 - SK_R16_BITS);
     g = ((g << 1) - ((g >> (8 - SK_G16_BITS) << (8 - SK_G16_BITS)) | (g >> SK_G16_BITS))) >> (8 - SK_G16_BITS);
     b = ((b << 1) - ((b >> (8 - SK_B16_BITS) << (8 - SK_B16_BITS)) | (b >> SK_B16_BITS))) >> (8 - SK_B16_BITS);
@@ -313,8 +307,7 @@ inline uint16_t SkDitherPack888ToRGB16(U8CPU r, U8CPU g, U8CPU b)
     return SkPackRGB16(r, g, b);
 }
 
-inline uint16_t SkDitherPixel32ToPixel16(SkPMColor c)
-{
+static inline uint16_t SkDitherPixel32ToPixel16(SkPMColor c) {
     return SkDitherPack888ToRGB16(SkGetPackedR32(c), SkGetPackedG32(c), SkGetPackedB32(c));
 }
 
@@ -325,8 +318,7 @@ inline uint16_t SkDitherPixel32ToPixel16(SkPMColor c)
     to saturate properly (and not overflow). If we take the 8 bits as is, it is
     possible to overflow.
 */
-static inline uint32_t SkPMColorToExpanded16x5(SkPMColor c)
-{
+static inline uint32_t SkPMColorToExpanded16x5(SkPMColor c) {
     unsigned sr = SkPacked32ToR16(c);
     unsigned sg = SkPacked32ToG16(c);
     unsigned sb = SkPacked32ToB16(c);
@@ -361,16 +353,15 @@ static inline U16CPU SkSrcOver32To16(SkPMColor src, uint16_t dst) {
 ////////////////////////////////////////////////////////////////////////////////////////////
 // Convert a 16bit pixel to a 32bit pixel
 
-inline unsigned SkR16ToR32(unsigned r)
-{
+static inline unsigned SkR16ToR32(unsigned r) {
     return (r << (8 - SK_R16_BITS)) | (r >> (2 * SK_R16_BITS - 8));
 }
-inline unsigned SkG16ToG32(unsigned g)
-{
+
+static inline unsigned SkG16ToG32(unsigned g) {
     return (g << (8 - SK_G16_BITS)) | (g >> (2 * SK_G16_BITS - 8));
 }
-inline unsigned SkB16ToB32(unsigned b)
-{
+
+static inline unsigned SkB16ToB32(unsigned b) {
     return (b << (8 - SK_B16_BITS)) | (b >> (2 * SK_B16_BITS - 8));
 }
 
@@ -378,8 +369,7 @@ inline unsigned SkB16ToB32(unsigned b)
 #define SkPacked16ToG32(c)      SkG16ToG32(SkGetPackedG16(c))
 #define SkPacked16ToB32(c)      SkB16ToB32(SkGetPackedB16(c))
 
-inline SkPMColor SkPixel16ToPixel32(U16CPU src)
-{
+static inline SkPMColor SkPixel16ToPixel32(U16CPU src) {
     SkASSERT(src == SkToU16(src));
 
     unsigned    r = SkPacked16ToR32(src);
@@ -423,8 +413,7 @@ typedef uint16_t SkPMColor16;
 #define SkG32To4444(g)  ((unsigned)(g) >> 4)
 #define SkB32To4444(b)  ((unsigned)(b) >> 4)
 
-static inline U8CPU SkReplicateNibble(unsigned nib)
-{
+static inline U8CPU SkReplicateNibble(unsigned nib) {
     SkASSERT(nib <= 0xF);
     return (nib << 4) | nib;
 }
@@ -445,8 +434,7 @@ static inline U8CPU SkReplicateNibble(unsigned nib)
 #define SkPacked4444ToB32(c)    SkReplicateNibble(SkGetPackedB4444(c))
 
 #ifdef SK_DEBUG
-static inline void SkPMColor16Assert(U16CPU c)
-{
+static inline void SkPMColor16Assert(U16CPU c) {
     unsigned a = SkGetPackedA4444(c);
     unsigned r = SkGetPackedR4444(c);
     unsigned g = SkGetPackedG4444(c);
@@ -461,15 +449,13 @@ static inline void SkPMColor16Assert(U16CPU c)
 #define SkPMColor16Assert(c)
 #endif
 
-static inline unsigned SkAlpha15To16(unsigned a)
-{
+static inline unsigned SkAlpha15To16(unsigned a) {
     SkASSERT(a <= 0xF);
     return a + (a >> 3);
 }
 
 #ifdef SK_DEBUG
-    static inline int SkAlphaMul4(int value, int scale)
-    {
+    static inline int SkAlphaMul4(int value, int scale) {
         SkASSERT((unsigned)scale <= 0x10);
         return value * scale >> 4;
     }
@@ -477,27 +463,23 @@ static inline unsigned SkAlpha15To16(unsigned a)
     #define SkAlphaMul4(value, scale)   ((value) * (scale) >> 4)
 #endif
 
-static inline unsigned SkR4444ToR565(unsigned r)
-{
+static inline unsigned SkR4444ToR565(unsigned r) {
     SkASSERT(r <= 0xF);
     return (r << (SK_R16_BITS - 4)) | (r >> (8 - SK_R16_BITS));
 }
 
-static inline unsigned SkG4444ToG565(unsigned g)
-{
+static inline unsigned SkG4444ToG565(unsigned g) {
     SkASSERT(g <= 0xF);
     return (g << (SK_G16_BITS - 4)) | (g >> (8 - SK_G16_BITS));
 }
 
-static inline unsigned SkB4444ToB565(unsigned b)
-{
+static inline unsigned SkB4444ToB565(unsigned b) {
     SkASSERT(b <= 0xF);
     return (b << (SK_B16_BITS - 4)) | (b >> (8 - SK_B16_BITS));
 }
 
 static inline SkPMColor16 SkPackARGB4444(unsigned a, unsigned r,
-                                         unsigned g, unsigned b)
-{
+                                         unsigned g, unsigned b) {
     SkASSERT(a <= 0xF);
     SkASSERT(r <= a);
     SkASSERT(g <= a);
@@ -509,8 +491,7 @@ static inline SkPMColor16 SkPackARGB4444(unsigned a, unsigned r,
 
 extern const uint16_t gMask_0F0F;
 
-inline U16CPU SkAlphaMulQ4(U16CPU c, unsigned scale)
-{
+static inline U16CPU SkAlphaMulQ4(U16CPU c, unsigned scale) {
     SkASSERT(scale <= 16);
 
     const unsigned mask = 0xF0F;    //gMask_0F0F;
@@ -529,8 +510,7 @@ inline U16CPU SkAlphaMulQ4(U16CPU c, unsigned scale)
 /** Expand the SkPMColor16 color into a 32bit value that can be scaled all at
     once by a value up to 16. Used in conjunction with SkCompact_4444.
 */
-inline uint32_t SkExpand_4444(U16CPU c)
-{
+static inline uint32_t SkExpand_4444(U16CPU c) {
     SkASSERT(c == (uint16_t)c);
     
     const unsigned mask = 0xF0F;    //gMask_0F0F;
@@ -544,14 +524,12 @@ inline uint32_t SkExpand_4444(U16CPU c)
     would add 2 more instructions, slow us down. It is up to the caller to
     perform the cast if needed.
 */
-static inline U16CPU SkCompact_4444(uint32_t c)
-{
+static inline U16CPU SkCompact_4444(uint32_t c) {
     const unsigned mask = 0xF0F;    //gMask_0F0F;
     return (c & mask) | ((c >> 12) & ~mask);
 }
 
-static inline uint16_t SkSrcOver4444To16(SkPMColor16 s, uint16_t d)
-{
+static inline uint16_t SkSrcOver4444To16(SkPMColor16 s, uint16_t d) {
     unsigned sa = SkGetPackedA4444(s);
     unsigned sr = SkR4444ToR565(SkGetPackedR4444(s));
     unsigned sg = SkG4444ToG565(SkGetPackedG4444(s));
@@ -576,15 +554,13 @@ static inline uint16_t SkSrcOver4444To16(SkPMColor16 s, uint16_t d)
     return SkPackRGB16(sr + dr, sg + dg, sb + db);
 }
 
-static inline uint16_t SkBlend4444To16(SkPMColor16 src, uint16_t dst, int scale16)
-{
+static inline uint16_t SkBlend4444To16(SkPMColor16 src, uint16_t dst, int scale16) {
     SkASSERT((unsigned)scale16 <= 16);
     
     return SkSrcOver4444To16(SkAlphaMulQ4(src, scale16), dst);
 }
 
-static inline uint16_t SkBlend4444(SkPMColor16 src, SkPMColor16 dst, int scale16)
-{
+static inline uint16_t SkBlend4444(SkPMColor16 src, SkPMColor16 dst, int scale16) {
     SkASSERT((unsigned)scale16 <= 16);
     
     uint32_t src32 = SkExpand_4444(src) * scale16;
@@ -600,8 +576,7 @@ static inline uint16_t SkBlend4444(SkPMColor16 src, SkPMColor16 dst, int scale16
     return SkCompact_4444((src32 + dst32) >> 4);
 }
 
-static inline SkPMColor SkPixel4444ToPixel32(U16CPU c)
-{
+static inline SkPMColor SkPixel4444ToPixel32(U16CPU c) {
     uint32_t d = (SkGetPackedA4444(c) << SK_A32_SHIFT) |
                  (SkGetPackedR4444(c) << SK_R32_SHIFT) |
                  (SkGetPackedG4444(c) << SK_G32_SHIFT) |
@@ -609,8 +584,7 @@ static inline SkPMColor SkPixel4444ToPixel32(U16CPU c)
     return d | (d << 4);
 }
 
-static inline SkPMColor16 SkPixel32ToPixel4444(SkPMColor c)
-{
+static inline SkPMColor16 SkPixel32ToPixel4444(SkPMColor c) {
     return  (((c >> (SK_A32_SHIFT + 4)) & 0xF) << SK_A4444_SHIFT) |
     (((c >> (SK_R32_SHIFT + 4)) & 0xF) << SK_R4444_SHIFT) |
     (((c >> (SK_G32_SHIFT + 4)) & 0xF) << SK_G4444_SHIFT) |
@@ -619,8 +593,7 @@ static inline SkPMColor16 SkPixel32ToPixel4444(SkPMColor c)
 
 // cheap 2x2 dither
 static inline SkPMColor16 SkDitherARGB32To4444(U8CPU a, U8CPU r,
-                                               U8CPU g, U8CPU b)
-{
+                                               U8CPU g, U8CPU b) {
     a = ((a << 1) - ((a >> 4 << 4) | (a >> 4))) >> 4;
     r = ((r << 1) - ((r >> 4 << 4) | (r >> 4))) >> 4;
     g = ((g << 1) - ((g >> 4 << 4) | (g >> 4))) >> 4;
@@ -629,8 +602,7 @@ static inline SkPMColor16 SkDitherARGB32To4444(U8CPU a, U8CPU r,
     return SkPackARGB4444(a, r, g, b);
 }
 
-static inline SkPMColor16 SkDitherPixel32To4444(SkPMColor c)
-{
+static inline SkPMColor16 SkDitherPixel32To4444(SkPMColor c) {
     return SkDitherARGB32To4444(SkGetPackedA32(c), SkGetPackedR32(c),
                                 SkGetPackedG32(c), SkGetPackedB32(c));
 }
@@ -639,8 +611,7 @@ static inline SkPMColor16 SkDitherPixel32To4444(SkPMColor c)
     Transforms a normal ARGB_8888 into the same byte order as
     expanded ARGB_4444, but keeps each component 8bits
 */
-static inline uint32_t SkExpand_8888(SkPMColor c)
-{
+static inline uint32_t SkExpand_8888(SkPMColor c) {
     return  (((c >> SK_R32_SHIFT) & 0xFF) << 24) |
             (((c >> SK_G32_SHIFT) & 0xFF) <<  8) |
             (((c >> SK_B32_SHIFT) & 0xFF) << 16) |
@@ -650,8 +621,7 @@ static inline uint32_t SkExpand_8888(SkPMColor c)
 /*  Undo the operation of SkExpand_8888, turning the argument back into
     a SkPMColor.
 */
-static inline SkPMColor SkCompact_8888(uint32_t c)
-{
+static inline SkPMColor SkCompact_8888(uint32_t c) {
     return  (((c >> 24) & 0xFF) << SK_R32_SHIFT) |
             (((c >>  8) & 0xFF) << SK_G32_SHIFT) |
             (((c >> 16) & 0xFF) << SK_B32_SHIFT) |
@@ -662,8 +632,7 @@ static inline SkPMColor SkCompact_8888(uint32_t c)
     but this routine just keeps the high 4bits of each component in the low
     4bits of the result (just like a newly expanded PMColor16).
 */
-static inline uint32_t SkExpand32_4444(SkPMColor c)
-{
+static inline uint32_t SkExpand32_4444(SkPMColor c) {
     return  (((c >> (SK_R32_SHIFT + 4)) & 0xF) << 24) |
             (((c >> (SK_G32_SHIFT + 4)) & 0xF) <<  8) |
             (((c >> (SK_B32_SHIFT + 4)) & 0xF) << 16) |
index 050debaf45107b23297305df2d893a0840fc05eb..1bdd0b69d73017a2189c671a95ed000ebdf94e11 100644 (file)
@@ -155,8 +155,14 @@ public:
     /** Send the event to the view's parent, and its parent etc. until one of them
         returns true from its onEvent call. This view is returned. If no parent handles
         the event, null is returned.
-    */
+     */
     SkView*     sendEventToParents(const SkEvent&);
+    /** Send the query to the view's parent, and its parent etc. until one of them
+        returns true from its onQuery call. This view is returned. If no parent handles
+        the query, null is returned.
+     */
+    SkView* sendQueryToParents(SkEvent*);
+
     /** Depricated helper function. Just call event->post(sinkID, delay);
     */
     bool    postEvent(SkEvent* evt, SkEventSinkID sinkID, SkMSec delay) { return evt->post(sinkID, delay); }
diff --git a/samplecode/OverView.cpp b/samplecode/OverView.cpp
new file mode 100644 (file)
index 0000000..e2abec2
--- /dev/null
@@ -0,0 +1,91 @@
+#include "SampleCode.h"
+#include "SkCanvas.h"
+#include "SkView.h"
+
+static const int N = 8;
+const SkScalar W = SkIntToScalar(640);
+const SkScalar H = SkIntToScalar(480); 
+
+class OverView : public SkView {
+public:
+    OverView(int count, const SkViewFactory factories[]);
+    virtual ~OverView();
+    
+protected:
+    virtual bool onEvent(const SkEvent&);
+    virtual void onSizeChange();
+    
+    virtual void onDraw(SkCanvas* canvas) {
+        canvas->drawColor(SK_ColorLTGRAY);
+    }
+
+    virtual SkCanvas* beforeChildren(SkCanvas*);
+
+    virtual bool onQuery(SkEvent* evt) {
+        if (SampleCode::TitleQ(*evt)) {
+            SampleCode::TitleR(evt, "Overview");
+            return true;
+        }
+        return this->INHERITED::onQuery(evt);
+    }
+
+    virtual SkView::Click* onFindClickHandler(SkScalar x, SkScalar y) {
+        int ix = (int)(SkScalarDiv(x * N, W));
+        int iy = (int)(SkScalarDiv(y * N, H));
+        if (ix >= 0 && iy >= 0) {
+            SkEvent evt("set-curr-index");
+            evt.setFast32(iy * N + ix);
+            this->sendEventToParents(evt);
+        }
+        return NULL;
+    }
+
+private:
+    int             fCount;
+    const SkViewFactory*  fFactories;
+
+    typedef SkView INHERITED;
+};
+
+SkView* create_overview(int count, const SkViewFactory factories[]);
+SkView* create_overview(int count, const SkViewFactory factories[]) {
+    return SkNEW_ARGS(OverView, (count, factories));
+};
+
+OverView::OverView(int count, const SkViewFactory factories[]) {
+    fCount = count;
+    fFactories = factories;
+}
+
+OverView::~OverView() {
+}
+
+bool OverView::onEvent(const SkEvent& evt) {
+    return this->INHERITED::onEvent(evt);
+}
+
+void OverView::onSizeChange() {
+    this->detachAllChildren();
+    
+    SkScalar locX = 0;
+    SkScalar locY = 0;
+    for (int i = 0; i < fCount; i++) {
+        SkView* view = fFactories[i]();
+        view->setVisibleP(true);
+        this->attachChildToBack(view)->unref();
+        view->setLoc(locX, locY);
+        view->setSize(W, H);
+        locX += W;
+        if ((i % N) == N - 1) {
+            locY += H;
+            locX = 0;
+        }
+    }
+}
+
+SkCanvas* OverView::beforeChildren(SkCanvas* canvas) {
+    canvas->scale(SK_Scalar1 / N, SK_Scalar1 / N);
+    return canvas;
+}
+
+
index 263b898639d505b3727c6156e76e73229eb5e000..4000ed7e6c7f98abf9ee0f5a3759ef4f87922518 100644 (file)
@@ -10,6 +10,8 @@
 
 #include "SampleCode.h"
 
+SkView* create_overview(int, const SkViewFactory*);
+
 //#define SK_SUPPORT_GL
 
 #ifdef SK_SUPPORT_GL
@@ -122,6 +124,7 @@ void SampleCode::PrefSizeR(SkEvent* evt, SkScalar width, SkScalar height) {
 //////////////////////////////////////////////////////////////////////////////
 
 class SampleWindow : public SkOSWindow {
+    SkTDArray<SkViewFactory> fSamples;
 public:
        SampleWindow(void* hwnd);
        virtual ~SampleWindow();
@@ -150,7 +153,7 @@ protected:
     virtual bool onHandleKeyUp(SkKey key);
 #endif
 private:
-    const SkViewRegister* fCurr;
+    int fCurrIndex;
     
     SkPicture* fPicture;
     SkGLCanvas* fGLCanvas;
@@ -218,8 +221,15 @@ SampleWindow::SampleWindow(void* hwnd) : INHERITED(hwnd) {
        this->setConfig(SkBitmap::kARGB_8888_Config);
        this->setVisibleP(true);
 
-    fCurr = SkViewRegister::Head();
-    this->loadView(fCurr->factory()());
+    {
+        const SkViewRegister* reg = SkViewRegister::Head();
+        while (reg) {
+            *fSamples.append() = reg->factory();
+            reg = reg->next();
+        }
+    }
+    fCurrIndex = 0;
+    this->loadView(NULL);
 }
 
 SampleWindow::~SampleWindow() {
@@ -386,15 +396,9 @@ static SkBitmap::Config cycle_configs(SkBitmap::Config c) {
 }
 
 bool SampleWindow::nextSample() {
-    if (fCurr) {
-        fCurr = fCurr->next();
-        if (NULL == fCurr) {
-            fCurr = SkViewRegister::Head();
-        }
-        this->loadView(fCurr->factory()());
-        return true;
-    }
-    return false;
+    fCurrIndex = (fCurrIndex + 1) % fSamples.count();
+    this->loadView(fSamples[fCurrIndex]());
+    return true;
 }
 
 bool SampleWindow::onEvent(const SkEvent& evt) {
@@ -405,6 +409,11 @@ bool SampleWindow::onEvent(const SkEvent& evt) {
         }
         return true;
     }
+    if (evt.isType("set-curr-index")) {
+        fCurrIndex = evt.getFast32() % fSamples.count();
+        this->loadView(fSamples[fCurrIndex]());
+        return true;
+    }
     return this->INHERITED::onEvent(evt);
 }
 
@@ -522,6 +531,9 @@ bool SampleWindow::onHandleKey(SkKey key) {
                 }
             }
             return true;
+        case kBack_SkKey:
+            this->loadView(NULL);
+            return true;
         default:
             break;
     }
@@ -534,6 +546,10 @@ void SampleWindow::loadView(SkView* view) {
     if (prev) {
         prev->detachFromParent();
     }
+    
+    if (NULL == view) {
+        view = create_overview(fSamples.count(), fSamples.begin());
+    }
     view->setVisibleP(true);
     this->attachChildToFront(view)->unref();
     view->setSize(this->width(), this->height());
index 98599137ea5f012390fba82e87d533a8050bd107..65a16e28e7f9b48b2f09b5b813de47d9ca67b842 100644 (file)
@@ -146,138 +146,9 @@ static void test_drawText(SkBitmap::Config config, SkColor color)
 
 #endif
 
-#ifdef SK_CAN_USE_FLOAT
-#include "SkFloatBits.h"
-
-static inline float fast_inc(float x) {
-    SkFloatIntUnion data;
-    data.fFloat = x;
-    data.fSignBitInt += 1;
-    return data.fFloat;
-}
-
-extern float dummy();
-static int time_math() {
-    SkMSec now;
-    int i;
-    int sum = 0;
-    const int repeat = 1000000;
-    float f;
-
-    f = dummy();
-    now = SkTime::GetMSecs();
-    for (i = repeat - 1; i >= 0; --i) {
-        sum += (int)f; f = fast_inc(f);
-        sum += (int)f; f = fast_inc(f);
-        sum += (int)f; f = fast_inc(f);
-        sum += (int)f; f = fast_inc(f);
-    }
-    SkDebugf("---- native cast %d\n", SkTime::GetMSecs() - now);
-
-    f = dummy();
-    now = SkTime::GetMSecs();
-    for (i = repeat - 1; i >= 0; --i) {
-        sum += SkFloatToIntCast(f); f = fast_inc(f);
-        sum += SkFloatToIntCast(f); f = fast_inc(f);
-        sum += SkFloatToIntCast(f); f = fast_inc(f);
-        sum += SkFloatToIntCast(f); f = fast_inc(f);
-    }
-    SkDebugf("---- hack cast %d\n", SkTime::GetMSecs() - now);
-
-    f = dummy();
-    now = SkTime::GetMSecs();
-    for (i = repeat - 1; i >= 0; --i) {
-        sum += (int)sk_float_floor(f + 0.5f); f = fast_inc(f);
-        sum += (int)sk_float_floor(f + 0.5f); f = fast_inc(f);
-        sum += (int)sk_float_floor(f + 0.5f); f = fast_inc(f);
-        sum += (int)sk_float_floor(f + 0.5f); f = fast_inc(f);
-    }
-    SkDebugf("---- native round %d\n", SkTime::GetMSecs() - now);
-    
-    f = dummy();
-    now = SkTime::GetMSecs();
-    for (i = repeat - 1; i >= 0; --i) {
-        sum += SkFloatToIntRound(f); f = fast_inc(f);
-        sum += SkFloatToIntRound(f); f = fast_inc(f);
-        sum += SkFloatToIntRound(f); f = fast_inc(f);
-        sum += SkFloatToIntRound(f); f = fast_inc(f);
-    }
-    SkDebugf("---- hack round %d\n", SkTime::GetMSecs() - now);
-    
-    f = dummy();
-    now = SkTime::GetMSecs();
-    for (i = repeat - 1; i >= 0; --i) {
-        sum += SkFloat2Bits(floorf(f)); f = fast_inc(f);
-        sum += SkFloat2Bits(floorf(f)); f = fast_inc(f);
-        sum += SkFloat2Bits(floorf(f)); f = fast_inc(f);
-        sum += SkFloat2Bits(floorf(f)); f = fast_inc(f);
-    }
-    SkDebugf("---- native floor %d\n", SkTime::GetMSecs() - now);
-    
-    f = dummy();
-    now = SkTime::GetMSecs();
-    for (i = repeat - 1; i >= 0; --i) {
-        sum += SkFloatToIntFloor(f); f = fast_inc(f);
-        sum += SkFloatToIntFloor(f); f = fast_inc(f);
-        sum += SkFloatToIntFloor(f); f = fast_inc(f);
-        sum += SkFloatToIntFloor(f); f = fast_inc(f);
-    }
-    SkDebugf("---- hack floor %d\n", SkTime::GetMSecs() - now);
-    
-    return sum;
-}
-
-#if 0
-static float time_intToFloat() {
-    const int repeat = 1000000;
-    int i, n;
-    SkMSec now;
-    float sum = 0;
-    
-    n = (int)dummy();
-    now = SkTime::GetMSecs();
-    for (i = repeat - 1; i >= 0; --i) {
-        sum += (float)n; n += 1;
-        sum += (float)n; n += 1;
-        sum += (float)n; n += 1;
-        sum += (float)n; n += 1;
-    }
-    SkDebugf("---- native i2f %d\n", SkTime::GetMSecs() - now);
-    
-    n = (int)dummy();
-    now = SkTime::GetMSecs();
-    for (i = repeat - 1; i >= 0; --i) {
-        sum += SkIntToFloatCast(n); n += 1;
-        sum += SkIntToFloatCast(n); n += 1;
-        sum += SkIntToFloatCast(n); n += 1;
-        sum += SkIntToFloatCast(n); n += 1;
-    }
-    SkDebugf("---- check i2f %d\n", SkTime::GetMSecs() - now);
-
-    n = (int)dummy();
-    now = SkTime::GetMSecs();
-    for (i = repeat - 1; i >= 0; --i) {
-        sum += SkIntToFloatCast_NoOverflowCheck(n); n += 1;
-        sum += SkIntToFloatCast_NoOverflowCheck(n); n += 1;
-        sum += SkIntToFloatCast_NoOverflowCheck(n); n += 1;
-        sum += SkIntToFloatCast_NoOverflowCheck(n); n += 1;
-    }
-    SkDebugf("---- nocheck i2f %d\n", SkTime::GetMSecs() - now);
-
-    return sum;
-}
-#endif
-#endif
-
-void SkGraphics::Init()
-{
+void SkGraphics::Init() {
     SkGlobals::Init();
 
-#ifdef SK_CAN_USE_FLOAT
-//    time_math();
-//    time_intToFloat();
-#endif
-    
 #ifdef BUILD_EMBOSS_TABLE
     SkEmbossMask_BuildTable();
 #endif
@@ -503,4 +374,3 @@ bool SkGraphics::SetFontCacheUsed(size_t usageInBytes) {
     return SkGlyphCache::SetCacheUsed(usageInBytes);
 }
 
-float dummy() { return 1.25f; }
index f8008af3067b2c4b3759d0322b75c78c7ebad014..7797abe6971d1f0c90726ea080e4b4060fae8d09 100644 (file)
@@ -649,7 +649,7 @@ void SkView::postInflate(const SkTDict<SkView*>& dict)
 SkView* SkView::sendEventToParents(const SkEvent& evt)
 {
        SkView* parent = fParent;
-
+    
        while (parent)
        {
                if (parent->doEvent(evt))
@@ -659,6 +659,18 @@ SkView* SkView::sendEventToParents(const SkEvent& evt)
        return NULL;
 }
 
+SkView* SkView::sendQueryToParents(SkEvent* evt) {
+       SkView* parent = fParent;
+    
+       while (parent) {
+               if (parent->doQuery(evt)) {
+                       return parent;
+        }
+               parent = parent->fParent;
+       }
+       return NULL;
+}
+
 //////////////////////////////////////////////////////////////////
 //////////////////////////////////////////////////////////////////
 
index 0eae794162732bdfd42a0dee462d6f41a882bfcc..7240fcedde9898fece08786a210701ffcaabed39 100644 (file)
                                GCC_ENABLE_OBJC_EXCEPTIONS = NO;
                                GCC_ENABLE_PASCAL_STRINGS = NO;
                                GCC_FAST_OBJC_DISPATCH = NO;
+                               GCC_PREPROCESSOR_DEFINITIONS = SK_RELEASE;
                                GCC_WARN_ABOUT_RETURN_TYPE = YES;
                                GCC_WARN_UNUSED_VARIABLE = YES;
                                PREBINDING = NO;
index 673d640ecaeddd323ee5d2c50d094c4b1470fce2..6256cca1a6171b5614ecbc6b78e16ad793798233 100644 (file)
                                );
                                GCC_ENABLE_CPP_EXCEPTIONS = NO;
                                GCC_ENABLE_CPP_RTTI = NO;
+                               GCC_OPTIMIZATION_LEVEL = 2;
                                GCC_PREPROCESSOR_DEFINITIONS = SK_RELEASE;
                                GCC_THREADSAFE_STATICS = NO;
                                GCC_TREAT_IMPLICIT_FUNCTION_DECLARATIONS_AS_ERRORS = YES;
index fdd3bdf7cdffa8a98cda56d250af99c66c79f4f8..f79e1d5dc254e79411247bff0cc6bb98c9a14fda 100644 (file)
@@ -22,7 +22,6 @@
                00003C950EFC2316000FF73A /* libeffects.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 00003C940EFC230E000FF73A /* libeffects.a */; };
                00003C9E0EFC233F000FF73A /* SkDOM.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00003C9A0EFC233F000FF73A /* SkDOM.cpp */; };
                00003CA10EFC233F000FF73A /* SkXMLParser.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00003C9D0EFC233F000FF73A /* SkXMLParser.cpp */; };
-               000A99820FD97526007E45BD /* SampleArc.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00A41E4A0EFC312F00C9CBEB /* SampleArc.cpp */; };
                001B871E1042184D00C84ED4 /* Forth.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 001B871D1042184D00C84ED4 /* Forth.cpp */; };
                00244D1B10642BBA00B8F4D8 /* SampleStrokePath.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0009E21F1057E96800B0DE6F /* SampleStrokePath.cpp */; };
                00244D4A1069646100B8F4D8 /* SampleGradients.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00C55DA00F8552DC000CAC09 /* SampleGradients.cpp */; };
@@ -36,6 +35,7 @@
                00281D071084ED1200BCCB06 /* SkXMLParser_expat.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00281D061084ED1200BCCB06 /* SkXMLParser_expat.cpp */; };
                0028847B0EFAB46A0083E387 /* libcore.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 002884510EFAA35C0083E387 /* libcore.a */; };
                002884BD0EFAB6A30083E387 /* libmaccore.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 002884BC0EFAB69F0083E387 /* libmaccore.a */; };
+               00403926109F22A800F2B5C5 /* SampleArc.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00A41E4A0EFC312F00C9CBEB /* SampleArc.cpp */; };
                0041CDDB0F00975E00695E8C /* SampleImageDir.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0041CDDA0F00975E00695E8C /* SampleImageDir.cpp */; };
                0041CDF30F009ED100695E8C /* SkImageRef.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0041CDF20F009ED100695E8C /* SkImageRef.cpp */; };
                0041CDF60F009EED00695E8C /* SkImageRef_GlobalPool.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0041CDF50F009EED00695E8C /* SkImageRef_GlobalPool.cpp */; };
@@ -47,7 +47,6 @@
                0041CE3A0F00A12400695E8C /* SampleDrawLooper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0041CE240F00A12400695E8C /* SampleDrawLooper.cpp */; };
                0041CE3B0F00A12400695E8C /* SampleEmboss.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0041CE250F00A12400695E8C /* SampleEmboss.cpp */; };
                0041CE3C0F00A12400695E8C /* SampleEncode.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0041CE260F00A12400695E8C /* SampleEncode.cpp */; };
-               0041CE400F00A12400695E8C /* SampleFontCache.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0041CE2A0F00A12400695E8C /* SampleFontCache.cpp */; };
                0041CE420F00A12400695E8C /* SampleImage.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0041CE2C0F00A12400695E8C /* SampleImage.cpp */; };
                0041CE430F00A12400695E8C /* SampleLayers.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0041CE2D0F00A12400695E8C /* SampleLayers.cpp */; };
                0041CE450F00A12400695E8C /* SampleMeasure.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0041CE2F0F00A12400695E8C /* SampleMeasure.cpp */; };
@@ -61,7 +60,6 @@
                007A7CB40F01658C00A2D6EE /* SamplePoints.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 007A7CA50F01658C00A2D6EE /* SamplePoints.cpp */; };
                007A7CB60F01658C00A2D6EE /* SampleRegion.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 007A7CA70F01658C00A2D6EE /* SampleRegion.cpp */; };
                007A7CB80F01658C00A2D6EE /* SampleStrokeText.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 007A7CA90F01658C00A2D6EE /* SampleStrokeText.cpp */; };
-               007A7CBA0F01658C00A2D6EE /* SampleText.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 007A7CAB0F01658C00A2D6EE /* SampleText.cpp */; };
                007A7CBB0F01658C00A2D6EE /* SampleTextAlpha.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 007A7CAC0F01658C00A2D6EE /* SampleTextAlpha.cpp */; };
                007A7CBC0F01658C00A2D6EE /* SampleTextEffects.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 007A7CAD0F01658C00A2D6EE /* SampleTextEffects.cpp */; };
                007A7CBD0F01658C00A2D6EE /* SampleTextOnPath.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 007A7CAE0F01658C00A2D6EE /* SampleTextOnPath.cpp */; };
@@ -71,6 +69,7 @@
                007C785E0F3B4C230004B142 /* SamplePathClip.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 007C785D0F3B4C230004B142 /* SamplePathClip.cpp */; };
                00840B75104C69F5005B3EDC /* SampleExtractAlpha.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 00840B74104C69F5005B3EDC /* SampleExtractAlpha.cpp */; };
                008C4D980F77DAEE0056981C /* SampleHairline.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 008C4D970F77DAEE0056981C /* SampleHairline.cpp */; };
+               009230D8109F111F00AD3F12 /* OverView.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 009230D7109F111F00AD3F12 /* OverView.cpp */; };
                009490320FB0A5B90063C792 /* SampleLayerMask.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 009490310FB0A5B90063C792 /* SampleLayerMask.cpp */; };
                009887F1106142FC0020D19B /* SampleNinePatch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0041CE310F00A12400695E8C /* SampleNinePatch.cpp */; };
                009CC9190F65918A002185BE /* SampleFontScalerTest.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 009CC9180F65918A002185BE /* SampleFontScalerTest.cpp */; };
@@ -91,7 +90,6 @@
                27005D5F10095B2B00E275B6 /* SampleCircle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0041CE200F00A12400695E8C /* SampleCircle.cpp */; };
                2762F66D0FCCCABE002BD8B4 /* SkFlipPixelRef.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2762F66B0FCCCABE002BD8B4 /* SkFlipPixelRef.cpp */; };
                2762F66E0FCCCABE002BD8B4 /* SkPageFlipper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2762F66C0FCCCABE002BD8B4 /* SkPageFlipper.cpp */; };
-               2762F67D0FCCCB01002BD8B4 /* SamplePageFlip.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2762F6770FCCCB01002BD8B4 /* SamplePageFlip.cpp */; };
                8D0C4E8D0486CD37000505A6 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 0867D6AAFE840B52C02AAC07 /* InfoPlist.strings */; };
                8D0C4E8E0486CD37000505A6 /* main.nib in Resources */ = {isa = PBXBuildFile; fileRef = 02345980000FD03B11CA0E72 /* main.nib */; };
                8D0C4E920486CD37000505A6 /* Carbon.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 20286C33FDCF999611CA2CEA /* Carbon.framework */; };
                007A7CA70F01658C00A2D6EE /* SampleRegion.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleRegion.cpp; path = ../../samplecode/SampleRegion.cpp; sourceTree = SOURCE_ROOT; };
                007A7CA80F01658C00A2D6EE /* SampleShaders.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleShaders.cpp; path = ../../samplecode/SampleShaders.cpp; sourceTree = SOURCE_ROOT; };
                007A7CA90F01658C00A2D6EE /* SampleStrokeText.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleStrokeText.cpp; path = ../../samplecode/SampleStrokeText.cpp; sourceTree = SOURCE_ROOT; };
-               007A7CAB0F01658C00A2D6EE /* SampleText.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleText.cpp; path = ../../samplecode/SampleText.cpp; sourceTree = SOURCE_ROOT; };
                007A7CAC0F01658C00A2D6EE /* SampleTextAlpha.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleTextAlpha.cpp; path = ../../samplecode/SampleTextAlpha.cpp; sourceTree = SOURCE_ROOT; };
                007A7CAD0F01658C00A2D6EE /* SampleTextEffects.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleTextEffects.cpp; path = ../../samplecode/SampleTextEffects.cpp; sourceTree = SOURCE_ROOT; };
                007A7CAE0F01658C00A2D6EE /* SampleTextOnPath.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleTextOnPath.cpp; path = ../../samplecode/SampleTextOnPath.cpp; sourceTree = SOURCE_ROOT; };
                007C785D0F3B4C230004B142 /* SamplePathClip.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SamplePathClip.cpp; path = ../../samplecode/SamplePathClip.cpp; sourceTree = SOURCE_ROOT; };
                00840B74104C69F5005B3EDC /* SampleExtractAlpha.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleExtractAlpha.cpp; path = ../../samplecode/SampleExtractAlpha.cpp; sourceTree = SOURCE_ROOT; };
                008C4D970F77DAEE0056981C /* SampleHairline.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleHairline.cpp; path = ../../samplecode/SampleHairline.cpp; sourceTree = SOURCE_ROOT; };
+               009230D7109F111F00AD3F12 /* OverView.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = OverView.cpp; path = ../../samplecode/OverView.cpp; sourceTree = SOURCE_ROOT; };
                009490310FB0A5B90063C792 /* SampleLayerMask.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleLayerMask.cpp; path = ../../samplecode/SampleLayerMask.cpp; sourceTree = SOURCE_ROOT; };
                009CC9180F65918A002185BE /* SampleFontScalerTest.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleFontScalerTest.cpp; path = ../../samplecode/SampleFontScalerTest.cpp; sourceTree = SOURCE_ROOT; };
                00A41E4A0EFC312F00C9CBEB /* SampleArc.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SampleArc.cpp; path = ../../samplecode/SampleArc.cpp; sourceTree = SOURCE_ROOT; };
                                007A7CA70F01658C00A2D6EE /* SampleRegion.cpp */,
                                007A7CA80F01658C00A2D6EE /* SampleShaders.cpp */,
                                007A7CA90F01658C00A2D6EE /* SampleStrokeText.cpp */,
-                               007A7CAB0F01658C00A2D6EE /* SampleText.cpp */,
                                007A7CAC0F01658C00A2D6EE /* SampleTextAlpha.cpp */,
                                007A7CAD0F01658C00A2D6EE /* SampleTextEffects.cpp */,
                                007A7CAE0F01658C00A2D6EE /* SampleTextOnPath.cpp */,
                                0041CDDA0F00975E00695E8C /* SampleImageDir.cpp */,
                                00A41E4A0EFC312F00C9CBEB /* SampleArc.cpp */,
                                00003C620EFC22A8000FF73A /* SampleApp.cpp */,
+                               009230D7109F111F00AD3F12 /* OverView.cpp */,
                                00003C640EFC22A8000FF73A /* SamplePath.cpp */,
                                007C785D0F3B4C230004B142 /* SamplePathClip.cpp */,
                                00003C650EFC22A8000FF73A /* SamplePathEffects.cpp */,
                                0041CE390F00A12400695E8C /* SampleDither.cpp in Sources */,
                                0041CE3A0F00A12400695E8C /* SampleDrawLooper.cpp in Sources */,
                                0041CE3B0F00A12400695E8C /* SampleEmboss.cpp in Sources */,
-                               0041CE400F00A12400695E8C /* SampleFontCache.cpp in Sources */,
                                0041CE420F00A12400695E8C /* SampleImage.cpp in Sources */,
                                0041CE430F00A12400695E8C /* SampleLayers.cpp in Sources */,
                                0041CE450F00A12400695E8C /* SampleMeasure.cpp in Sources */,
                                0041CE4A0F00A12400695E8C /* SamplePatch.cpp in Sources */,
                                007A7CB40F01658C00A2D6EE /* SamplePoints.cpp in Sources */,
                                007A7CB80F01658C00A2D6EE /* SampleStrokeText.cpp in Sources */,
-                               007A7CBA0F01658C00A2D6EE /* SampleText.cpp in Sources */,
                                007A7CBB0F01658C00A2D6EE /* SampleTextAlpha.cpp in Sources */,
                                007A7CBC0F01658C00A2D6EE /* SampleTextEffects.cpp in Sources */,
                                007A7CBD0F01658C00A2D6EE /* SampleTextOnPath.cpp in Sources */,
                                00FF39140FC6ED2C00915187 /* SampleEffects.cpp in Sources */,
                                2762F66D0FCCCABE002BD8B4 /* SkFlipPixelRef.cpp in Sources */,
                                2762F66E0FCCCABE002BD8B4 /* SkPageFlipper.cpp in Sources */,
-                               2762F67D0FCCCB01002BD8B4 /* SamplePageFlip.cpp in Sources */,
                                00A728270FD43D0400D5051F /* SampleMovie.cpp in Sources */,
                                00A7282F0FD43D3700D5051F /* SkMovie.cpp in Sources */,
                                00A7295D0FD8397600D5051F /* SampleAll.cpp in Sources */,
-                               000A99820FD97526007E45BD /* SampleArc.cpp in Sources */,
                                00AF77B00FE2EA2D007F9650 /* SampleTestGL.cpp in Sources */,
                                00AF787E0FE94433007F9650 /* SamplePath.cpp in Sources */,
                                005E92DC0FF08507008965B9 /* SampleFilter2.cpp in Sources */,
                                00281C671083CF5100BCCB06 /* SkTextBox.cpp in Sources */,
                                00281C781083CFA100BCCB06 /* SampleAnimator.cpp in Sources */,
                                00281D071084ED1200BCCB06 /* SkXMLParser_expat.cpp in Sources */,
+                               009230D8109F111F00AD3F12 /* OverView.cpp in Sources */,
+                               00403926109F22A800F2B5C5 /* SampleArc.cpp in Sources */,
                        );
                        runOnlyForDeploymentPostprocessing = 0;
                };