Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1114)

Unified Diff: samplecode/SampleApp.cpp

Issue 108513006: Add SkTileGridPicture SampleApp playback support. (Closed) Base URL: https://skia.googlecode.com/svn/trunk
Patch Set: Created 7 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: samplecode/SampleApp.cpp
diff --git a/samplecode/SampleApp.cpp b/samplecode/SampleApp.cpp
index 795f8021da9a6870e2de37e35de684afdcbff66f..9aafed8c12b0c1ca85a253f1f6640407fc32ec77 100644
--- a/samplecode/SampleApp.cpp
+++ b/samplecode/SampleApp.cpp
@@ -664,6 +664,12 @@ static struct TilingInfo gTilingInfo[] = {
SK_COMPILE_ASSERT((SK_ARRAY_COUNT(gTilingInfo) == kLast_TilingMode_Enum),
Incomplete_tiling_labels);
+SkSize SampleWindow::tileSize() const {
+ SkASSERT((TilingMode)fTilingMode < kLast_TilingMode_Enum);
+ struct TilingInfo* info = gTilingInfo + fTilingMode;
robertphillips 2013/12/10 18:44:28 this->width/this->height
fmalita_google_do_not_use 2013/12/10 19:48:17 Done.
+ return SkSize::Make(info->w > SK_Scalar1 ? info->w : width() * info->w,
+ info->h > SK_Scalar1 ? info->h : height() * info->h);
+}
//////////////////////////////////////////////////////////////////////////////
static SkView* curr_view(SkWindow* wind) {
@@ -1198,11 +1204,7 @@ void SampleWindow::draw(SkCanvas* canvas) {
if (bitmap_diff(canvas, orig, &diff)) {
}
} else {
robertphillips 2013/12/10 18:44:28 this->tileSize
fmalita_google_do_not_use 2013/12/10 19:48:17 Done.
- SkSize tile;
- SkASSERT((TilingMode)fTilingMode < kLast_TilingMode_Enum);
- struct TilingInfo* info = gTilingInfo + fTilingMode;
- tile.set(info->w > SK_Scalar1 ? info->w : width() * info->w,
- info->h > SK_Scalar1 ? info->h : height() * info->h);
+ SkSize tile = tileSize();
for (SkScalar y = 0; y < height(); y += tile.height()) {
for (SkScalar x = 0; x < width(); x += tile.width()) {
@@ -1736,8 +1738,15 @@ bool SampleWindow::onEvent(const SkEvent& evt) {
SkOSMenu::FindSwitchState(evt, "Zoomer", &fShowZoomer) ||
SkOSMenu::FindSwitchState(evt, "Magnify", &fMagnify) ||
SkOSMenu::FindListIndex(evt, "Transition-Next", &fTransitionNext) ||
- SkOSMenu::FindListIndex(evt, "Transition-Prev", &fTransitionPrev) ||
- SkOSMenu::FindListIndex(evt, "Tiling", &fTilingMode)) {
+ SkOSMenu::FindListIndex(evt, "Transition-Prev", &fTransitionPrev)) {
+ this->inval(NULL);
+ this->updateTitle();
+ return true;
+ }
+ if (SkOSMenu::FindListIndex(evt, "Tiling", &fTilingMode)) {
+ if (SampleView::IsSampleView(curr_view(this))) {
robertphillips 2013/12/10 18:44:28 this->tileSize
fmalita_google_do_not_use 2013/12/10 19:48:17 Done.
+ ((SampleView*)curr_view(this))->onTileSizeChanged(tileSize());
+ }
this->inval(NULL);
this->updateTitle();
return true;
@@ -2097,8 +2106,11 @@ void SampleWindow::loadView(SkView* view) {
fSlideMenu->reset();
(void)SampleView::SetUsePipe(view, fPipeState);
- if (SampleView::IsSampleView(view))
- ((SampleView*)view)->requestMenu(fSlideMenu);
+ if (SampleView::IsSampleView(view)) {
+ SampleView* sampleView = (SampleView*)view;
+ sampleView->requestMenu(fSlideMenu);
robertphillips 2013/12/10 18:44:28 this->tileSize
fmalita_google_do_not_use 2013/12/10 19:48:17 Done.
+ sampleView->onTileSizeChanged(tileSize());
+ }
this->onUpdateMenu(fSlideMenu);
this->updateTitle();
}
@@ -2251,6 +2263,10 @@ void SampleWindow::onSizeChange() {
#endif
this->updateTitle(); // to refresh our config
fDevManager->windowSizeChanged(this);
+
+ if (fTilingMode != kNo_Tiling && SampleView::IsSampleView(view)) {
robertphillips 2013/12/10 18:44:28 this->tileSize
fmalita_google_do_not_use 2013/12/10 19:48:17 Done.
+ ((SampleView*)view)->onTileSizeChanged(tileSize());
+ }
}
///////////////////////////////////////////////////////////////////////////////
« no previous file with comments | « samplecode/SampleApp.h ('k') | samplecode/SampleCode.h » ('j') | samplecode/SamplePictFile.cpp » ('J')

Powered by Google App Engine
This is Rietveld 408576698