diff options
Diffstat (limited to 'src/com/android/camera/support/ui/BitmapScreenNail.java')
-rw-r--r-- | src/com/android/camera/support/ui/BitmapScreenNail.java | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/src/com/android/camera/support/ui/BitmapScreenNail.java b/src/com/android/camera/support/ui/BitmapScreenNail.java new file mode 100644 index 000000000..a0252b9a5 --- /dev/null +++ b/src/com/android/camera/support/ui/BitmapScreenNail.java @@ -0,0 +1,45 @@ +package com.android.camera.support.ui; + +import android.graphics.Bitmap; +import android.graphics.RectF; + +import com.android.camera.support.glrenderer.BitmapTexture; +import com.android.camera.support.glrenderer.GLCanvas; + +public class BitmapScreenNail implements ScreenNail { + private final BitmapTexture mBitmapTexture; + + public BitmapScreenNail(Bitmap bitmap) { + mBitmapTexture = new BitmapTexture(bitmap); + } + + @Override + public int getWidth() { + return mBitmapTexture.getWidth(); + } + + @Override + public int getHeight() { + return mBitmapTexture.getHeight(); + } + + @Override + public void draw(GLCanvas canvas, int x, int y, int width, int height) { + mBitmapTexture.draw(canvas, x, y, width, height); + } + + @Override + public void noDraw() { + // do nothing + } + + @Override + public void recycle() { + mBitmapTexture.recycle(); + } + + @Override + public void draw(GLCanvas canvas, RectF source, RectF dest) { + canvas.drawTexture(mBitmapTexture, source, dest); + } +} |