aboutsummaryrefslogtreecommitdiff
path: root/samplecode/SampleImage.cpp
diff options
context:
space:
mode:
authorThe Android Open Source Project <initial-contribution@android.com>2009-03-18 17:39:44 -0700
committerThe Android Open Source Project <initial-contribution@android.com>2009-03-18 17:39:44 -0700
commitaf527e02dce280c269d751322e9f60aac8cb97da (patch)
tree19faf6d47cdd3d589a6dfcff0f8f75fcbb03aa20 /samplecode/SampleImage.cpp
parent5956d1c224aadf1d2712b46b32d3fc69a19915bd (diff)
auto import from //branches/cupcake_rel/...@140373
Diffstat (limited to 'samplecode/SampleImage.cpp')
-rw-r--r--samplecode/SampleImage.cpp158
1 files changed, 0 insertions, 158 deletions
diff --git a/samplecode/SampleImage.cpp b/samplecode/SampleImage.cpp
deleted file mode 100644
index 4cefd27b83..0000000000
--- a/samplecode/SampleImage.cpp
+++ /dev/null
@@ -1,158 +0,0 @@
-#include "SampleCode.h"
-#include "SkView.h"
-#include "SkCanvas.h"
-#include "SkGradientShader.h"
-#include "SkGraphics.h"
-#include "SkImageDecoder.h"
-#include "SkPath.h"
-#include "SkPorterDuff.h"
-#include "SkRegion.h"
-#include "SkShader.h"
-#include "SkUtils.h"
-#include "SkXfermode.h"
-#include "SkColorPriv.h"
-#include "SkColorFilter.h"
-#include "SkTime.h"
-#include "SkTypeface.h"
-
-#include "SkImageRef_GlobalPool.h"
-#include "SkStream.h"
-
-static const char* gNames[] = {
- "1.bmp", "1.gif", "1.jpg", "1.png",
- "2.bmp", "2.gif", "2.jpg", "2.png"
-};
-
-// ownership of the stream is transferred
-static bool SetImageRef(SkBitmap* bitmap, SkStream* stream,
- SkBitmap::Config pref, const char name[] = NULL)
-{
- if (SkImageDecoder::DecodeStream(stream, bitmap, pref,
- SkImageDecoder::kDecodeBounds_Mode)) {
- SkASSERT(bitmap->config() != SkBitmap::kNo_Config);
-
- SkImageRef* ref = new SkImageRef_GlobalPool(stream, bitmap->config());
- ref->setURI(name);
- bitmap->setPixelRef(ref)->unref();
- return true;
- } else {
- delete stream;
- return false;
- }
-}
-
-class ImageView : public SkView {
-public:
- SkBitmap* fBitmaps;
- SkShader* fShader;
-
- ImageView() {
- SkImageRef_GlobalPool::SetRAMBudget(32 * 1024);
-
- int i, N = SK_ARRAY_COUNT(gNames);
- fBitmaps = new SkBitmap[N];
-
- for (i = 0; i < N; i++) {
- SkString str("/skimages/");
- str.append(gNames[i]);
- SkFILEStream* stream = new SkFILEStream(str.c_str());
-
- SetImageRef(&fBitmaps[i], stream, SkBitmap::kNo_Config, gNames[i]);
- if (i & 1)
- fBitmaps[i].buildMipMap();
- }
-
- fShader = SkShader::CreateBitmapShader(fBitmaps[5],
- SkShader::kRepeat_TileMode,
- SkShader::kRepeat_TileMode);
-
- if (true) {
- SkMatrix m;
-
- m.setRotate(SkIntToScalar(30));
- fShader->setLocalMatrix(m);
- }
-
-#if 0
- SkImageRef::DumpPool();
- for (i = 0; i < N; i++) {
- SkBitmap& bm = fBitmaps[i];
-
- SkDebugf("<%s> addr=%p", gNames[i], bm.getPixels());
- bool success = bm.lockPixels();
- SkDebugf(" addr=%d", bm.getPixels());
- if (success)
- bm.unlockPixels();
- SkDebugf(" addr=%p", bm.getPixels());
- success = bm.lockPixels();
- SkDebugf(" addr=%d", bm.getPixels());
- if (success)
- bm.unlockPixels();
- SkDebugf("\n");
- }
- SkImageRef::DumpPool();
-#endif
- }
-
- virtual ~ImageView() {
- delete[] fBitmaps;
- delete fShader;
-
- SkImageRef_GlobalPool::DumpPool();
- }
-
-protected:
- // overrides from SkEventSink
- virtual bool onQuery(SkEvent* evt) {
- if (SampleCode::TitleQ(*evt)) {
- SampleCode::TitleR(evt, "Image");
- 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);
-
- canvas->translate(SkIntToScalar(10), SkIntToScalar(10));
-
- SkScalar x = 0, y = 0;
-
- for (size_t i = 0; i < SK_ARRAY_COUNT(gNames); i++) {
- canvas->drawBitmap(fBitmaps[i], x, y);
- x += SkIntToScalar(fBitmaps[i].width() + 10);
- }
-
- canvas->translate(0, SkIntToScalar(120));
-
- SkPaint paint;
- paint.setShader(fShader);
- paint.setFilterBitmap(true);
- SkRect r = { 0, 0, SkIntToScalar(300), SkIntToScalar(100) };
-
- canvas->drawRect(r, 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;
-};
-
-//////////////////////////////////////////////////////////////////////////////
-
-static SkView* MyFactory() { return new ImageView; }
-static SkViewRegister reg(MyFactory);
-