From 0c9aacac20202f4a41e98d8a34a6ee2c152ae2de Mon Sep 17 00:00:00 2001 From: Mark Wei Date: Fri, 1 Nov 2013 15:55:17 -0700 Subject: Allow subclasses to customize drawing of bitmap (using shaders, etc). Change-Id: I22294a19e6dd2247cc9679470b7b69089ba17228 --- src/com/android/bitmap/drawable/BasicBitmapDrawable.java | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'src/com/android/bitmap/drawable') diff --git a/src/com/android/bitmap/drawable/BasicBitmapDrawable.java b/src/com/android/bitmap/drawable/BasicBitmapDrawable.java index 53ab38d..f9d39a3 100644 --- a/src/com/android/bitmap/drawable/BasicBitmapDrawable.java +++ b/src/com/android/bitmap/drawable/BasicBitmapDrawable.java @@ -281,11 +281,19 @@ public class BasicBitmapDrawable extends Drawable implements DecodeCallback, // Rotate the canvas. canvas.save(); canvas.rotate(orientation, bounds.centerX(), bounds.centerY()); - canvas.drawBitmap(mBitmap.bmp, sRect, rotatedBounds, mPaint); + drawBitmap(canvas, rotatedBounds); canvas.restore(); } } + /** + * Override this method to customize how to draw the bitmap to the canvas for the given bounds. + * The bitmap to be drawn can be found at {@link #getBitmap()}. + */ + protected void drawBitmap(final Canvas canvas, final Rect bounds) { + canvas.drawBitmap(mBitmap.bmp, sRect, bounds, mPaint); + } + @Override public void setAlpha(int alpha) { final int old = mPaint.getAlpha(); -- cgit v1.2.3