| * Copyright 2011 Google Inc. |
| * Use of this source code is governed by a BSD-style license that can be |
| * found in the LICENSE file. |
| class AnimGifView : public SkView { |
| fMovie = SkMovie::DecodeFile("/skimages/dollarblk.gif"); |
| // overrides from SkEventSink |
| virtual bool onQuery(SkEvent* evt) { |
| if (SampleCode::TitleQ(*evt)) { |
| SampleCode::TitleR(evt, "Animated Gif"); |
| return this->INHERITED::onQuery(evt); |
| void drawBG(SkCanvas* canvas) { |
| canvas->drawColor(0xFFDDDDDD); |
| virtual void onDraw(SkCanvas* canvas) { |
| if (fMovie->duration()) { |
| fMovie->setTime(SkTime::GetMSecs() % fMovie->duration()); |
| canvas->drawBitmap(fMovie->bitmap(), SkIntToScalar(20), |
| typedef SkView INHERITED; |
| ////////////////////////////////////////////////////////////////////////////// |
| static SkView* MyFactory() { return new AnimGifView; } |
| static SkViewRegister reg(MyFactory); |