Index: samplecode/SampleApp.cpp |
diff --git a/samplecode/SampleApp.cpp b/samplecode/SampleApp.cpp |
index 2cad7538170f5322a4619f8e21669365d73d7b89..17e8623d4f4df754cea1b3441b0184d10c823966 100644 |
--- a/samplecode/SampleApp.cpp |
+++ b/samplecode/SampleApp.cpp |
@@ -77,8 +77,6 @@ public: |
SkTCPServer gServer; |
#endif |
-#define USE_ARROWS_FOR_ZOOM true |
- |
#if SK_ANGLE |
//#define DEFAULT_TO_ANGLE 1 |
#else |
@@ -795,7 +793,6 @@ SampleWindow::SampleWindow(void* hwnd, int argc, char** argv, DeviceManager* dev |
#endif |
fUseClip = false; |
- fNClip = false; |
fAnimating = false; |
fRotate = false; |
fPerspAnim = false; |
@@ -904,7 +901,6 @@ SampleWindow::SampleWindow(void* hwnd, int argc, char** argv, DeviceManager* dev |
fSlideMenu = new SkOSMenu; |
this->addMenu(fSlideMenu); |
- this->setColorType(kN32_SkColorType); |
this->setVisibleP(true); |
this->setClipToBounds(false); |
@@ -965,30 +961,11 @@ static SkBitmap capture_bitmap(SkCanvas* canvas) { |
return bm; |
} |
-static bool bitmap_diff(SkCanvas* canvas, const SkBitmap& orig, |
- SkBitmap* diff) { |
- SkBitmap src = capture_bitmap(canvas); |
- |
- SkAutoLockPixels alp0(src); |
- SkAutoLockPixels alp1(orig); |
- for (int y = 0; y < src.height(); y++) { |
- const void* srcP = src.getAddr(0, y); |
- const void* origP = orig.getAddr(0, y); |
- size_t bytes = src.width() * src.bytesPerPixel(); |
- if (memcmp(srcP, origP, bytes)) { |
- SkDebugf("---------- difference on line %d\n", y); |
- return true; |
- } |
- } |
- return false; |
-} |
- |
-static void drawText(SkCanvas* canvas, SkString string, SkScalar left, SkScalar top, SkPaint& paint) |
-{ |
+static void drawText(SkCanvas* canvas, SkString str, SkScalar left, SkScalar top, SkPaint& paint) { |
SkColor desiredColor = paint.getColor(); |
paint.setColor(SK_ColorWHITE); |
- const char* c_str = string.c_str(); |
- size_t size = string.size(); |
+ const char* c_str = str.c_str(); |
+ size_t size = str.size(); |
SkRect bounds; |
paint.measureText(c_str, size, &bounds); |
bounds.offset(left, top); |
@@ -1017,70 +994,39 @@ void SampleWindow::draw(SkCanvas* canvas) { |
fMeasureFPS_Time = 0; |
} |
- if (fNClip) { |
- this->INHERITED::draw(canvas); |
- SkBitmap orig = capture_bitmap(canvas); |
+ SkSize tile = this->tileSize(); |
- const SkScalar w = this->width(); |
- const SkScalar h = this->height(); |
- const SkScalar cw = w / XCLIP_N; |
- const SkScalar ch = h / YCLIP_N; |
- for (int y = 0; y < YCLIP_N; y++) { |
- SkRect r; |
- r.fTop = y * ch; |
- r.fBottom = (y + 1) * ch; |
- if (y == YCLIP_N - 1) { |
- r.fBottom = h; |
- } |
- for (int x = 0; x < XCLIP_N; x++) { |
- SkAutoCanvasRestore acr(canvas, true); |
- r.fLeft = x * cw; |
- r.fRight = (x + 1) * cw; |
- if (x == XCLIP_N - 1) { |
- r.fRight = w; |
- } |
- canvas->clipRect(r); |
- this->INHERITED::draw(canvas); |
- } |
- } |
- |
- SkBitmap diff; |
- if (bitmap_diff(canvas, orig, &diff)) { |
- } |
+ if (kNo_Tiling == fTilingMode) { |
+ this->INHERITED::draw(canvas); // no looping or surfaces needed |
} else { |
- SkSize tile = this->tileSize(); |
- |
- if (kNo_Tiling == fTilingMode) { |
- this->INHERITED::draw(canvas); // no looping or surfaces needed |
- } else { |
- const int w = SkScalarRoundToInt(tile.width()); |
- const int h = SkScalarRoundToInt(tile.height()); |
- SkImageInfo info = SkImageInfo::MakeN32Premul(w, h); |
- SkAutoTUnref<SkSurface> surface(canvas->newSurface(info)); |
- SkCanvas* tileCanvas = surface->getCanvas(); |
- |
- for (SkScalar y = 0; y < height(); y += tile.height()) { |
- for (SkScalar x = 0; x < width(); x += tile.width()) { |
- SkAutoCanvasRestore acr(tileCanvas, true); |
- tileCanvas->translate(-x, -y); |
- tileCanvas->clear(0); |
- this->INHERITED::draw(tileCanvas); |
- surface->draw(canvas, x, y, NULL); |
- } |
+ const int w = SkScalarRoundToInt(tile.width()); |
+ const int h = SkScalarRoundToInt(tile.height()); |
+ SkImageInfo info = SkImageInfo::MakeN32Premul(w, h); |
+ SkAutoTUnref<SkSurface> surface(canvas->newSurface(info)); |
+ SkCanvas* tileCanvas = surface->getCanvas(); |
+ |
+ for (SkScalar y = 0; y < height(); y += tile.height()) { |
+ for (SkScalar x = 0; x < width(); x += tile.width()) { |
+ SkAutoCanvasRestore acr(tileCanvas, true); |
+ tileCanvas->translate(-x, -y); |
+ tileCanvas->clear(0); |
+ this->INHERITED::draw(tileCanvas); |
+ surface->draw(canvas, x, y, NULL); |
} |
+ } |
- // for drawing the borders between tiles |
- SkPaint paint; |
- paint.setColor(0x60FF00FF); |
- paint.setStyle(SkPaint::kStroke_Style); |
+ // for drawing the borders between tiles |
+ SkPaint paint; |
+ paint.setColor(0x60FF00FF); |
+ paint.setStyle(SkPaint::kStroke_Style); |
- for (SkScalar y = 0; y < height(); y += tile.height()) { |
- for (SkScalar x = 0; x < width(); x += tile.width()) { |
- canvas->drawRect(SkRect::MakeXYWH(x, y, tile.width(), tile.height()), paint); |
- } |
+ for (SkScalar y = 0; y < height(); y += tile.height()) { |
+ for (SkScalar x = 0; x < width(); x += tile.width()) { |
+ canvas->drawRect(SkRect::MakeXYWH(x, y, tile.width(), tile.height()), paint); |
} |
} |
} |
+ |
if (fShowZoomer && !fSaveToPdf) { |
showZoomer(canvas); |
} |
@@ -1396,20 +1342,6 @@ void SampleWindow::afterChild(SkView* child, SkCanvas* canvas) { |
canvas->setDrawFilter(NULL); |
} |
-static SkColorType gColorTypeCycle[] = { |
- kUnknown_SkColorType, // none -> none |
- kUnknown_SkColorType, // a8 -> none |
- kN32_SkColorType, // 565 -> 8888 |
- kN32_SkColorType, // 4444 -> 8888 |
- kRGB_565_SkColorType, // 8888 -> 565 |
- kRGB_565_SkColorType, // 8888 -> 565 |
- kUnknown_SkColorType, // index8 -> none |
-}; |
- |
-static SkColorType cycle_colortypes(SkColorType c) { |
- return gColorTypeCycle[c]; |
-} |
- |
void SampleWindow::changeZoomLevel(float delta) { |
fZoomLevel += delta; |
if (fZoomLevel > 0) { |
@@ -1512,10 +1444,6 @@ bool SampleWindow::onEvent(const SkEvent& evt) { |
} |
return true; |
} |
- if (evt.isType("replace-transition-view")) { |
- this->loadView((SkView*)SkEventSink::FindSink(evt.getFast32())); |
- return true; |
- } |
if (evt.isType("set-curr-index")) { |
this->goToSample(evt.getFast32()); |
return true; |
@@ -1798,21 +1726,10 @@ bool SampleWindow::onHandleKey(SkKey key) { |
} |
return true; |
case kUp_SkKey: |
- if (USE_ARROWS_FOR_ZOOM) { |
- this->changeZoomLevel(1.f / 32.f); |
- } else { |
- fNClip = !fNClip; |
- this->inval(NULL); |
- this->updateTitle(); |
- } |
+ this->changeZoomLevel(1.f / 32.f); |
return true; |
case kDown_SkKey: |
- if (USE_ARROWS_FOR_ZOOM) { |
- this->changeZoomLevel(-1.f / 32.f); |
- } else { |
- this->setColorType(cycle_colortypes(this->getBitmap().colorType())); |
- this->updateTitle(); |
- } |
+ this->changeZoomLevel(-1.f / 32.f); |
return true; |
case kOK_SkKey: { |
SkString title; |
@@ -1979,9 +1896,6 @@ void SampleWindow::updateTitle() { |
if (fRotate) { |
title.prepend("<R> "); |
} |
- if (fNClip) { |
- title.prepend("<C> "); |
- } |
if (fPerspAnim) { |
title.prepend("<K> "); |
} |