From c306ad61a791bae34ed83b339f27cb67a1d91b53 Mon Sep 17 00:00:00 2001 From: Chris Craik Date: Thu, 17 Apr 2014 11:12:17 -0700 Subject: [PATCH] Add convenience methods to encourage usage of ALL_SAVE_FLAG Change-Id: I7a3bb2b83ca0463282764898e755b5f1a71ac557 --- api/current.txt | 4 ++ graphics/java/android/graphics/Canvas.java | 51 ++++++++++++++-------- 2 files changed, 38 insertions(+), 17 deletions(-) diff --git a/api/current.txt b/api/current.txt index 3ad7c72497f23..6ee76fb64afa1 100644 --- a/api/current.txt +++ b/api/current.txt @@ -9735,9 +9735,13 @@ package android.graphics { method public int save(); method public int save(int); method public int saveLayer(android.graphics.RectF, android.graphics.Paint, int); + method public int saveLayer(android.graphics.RectF, android.graphics.Paint); method public int saveLayer(float, float, float, float, android.graphics.Paint, int); + method public int saveLayer(float, float, float, float, android.graphics.Paint); method public int saveLayerAlpha(android.graphics.RectF, int, int); + method public int saveLayerAlpha(android.graphics.RectF, int); method public int saveLayerAlpha(float, float, float, float, int, int); + method public int saveLayerAlpha(float, float, float, float, int); method public void scale(float, float); method public final void scale(float, float, float, float); method public void setBitmap(android.graphics.Bitmap); diff --git a/graphics/java/android/graphics/Canvas.java b/graphics/java/android/graphics/Canvas.java index 1252ee2c7933b..f80ce28e1daba 100644 --- a/graphics/java/android/graphics/Canvas.java +++ b/graphics/java/android/graphics/Canvas.java @@ -167,22 +167,11 @@ public class Canvas { finalizer(oldCanvas); } - /** - * Gets the native canvas pointer. - * - * @return The native pointer. - * - * @hide - */ - public long getNativeCanvas() { - return mNativeCanvas; - } - /** * Returns null. - * + * * @deprecated This method is not supported and should not be invoked. - * + * * @hide */ @Deprecated @@ -233,14 +222,14 @@ public class Canvas { mBitmap = bitmap; } - + /** * Set the viewport dimensions if this canvas is GL based. If it is not, * this method is ignored and no exception is thrown. * * @param width The width of the viewport * @param height The height of the viewport - * + * * @hide */ public void setViewport(int width, int height) { @@ -389,7 +378,14 @@ public class Canvas { paint != null ? paint.mNativePaint : 0, saveFlags); } - + + /** + * Convenience for saveLayer(bounds, paint, {@link #ALL_SAVE_FLAG}) + */ + public int saveLayer(RectF bounds, Paint paint) { + return saveLayer(bounds, paint, ALL_SAVE_FLAG); + } + /** * Helper version of saveLayer() that takes 4 values rather than a RectF. */ @@ -400,6 +396,13 @@ public class Canvas { saveFlags); } + /** + * Convenience for saveLayer(left, top, right, bottom, paint, {@link #ALL_SAVE_FLAG}) + */ + public int saveLayer(float left, float top, float right, float bottom, Paint paint) { + return saveLayer(left, top, right, bottom, paint, ALL_SAVE_FLAG); + } + /** * This behaves the same as save(), but in addition it allocates an * offscreen bitmap. All drawing calls are directed there, and only when @@ -420,7 +423,14 @@ public class Canvas { alpha = Math.min(255, Math.max(0, alpha)); return native_saveLayerAlpha(mNativeCanvas, bounds, alpha, saveFlags); } - + + /** + * Convenience for saveLayerAlpha(bounds, alpha, {@link #ALL_SAVE_FLAG}) + */ + public int saveLayerAlpha(RectF bounds, int alpha) { + return saveLayerAlpha(bounds, alpha, ALL_SAVE_FLAG); + } + /** * Helper for saveLayerAlpha() that takes 4 values instead of a RectF. */ @@ -430,6 +440,13 @@ public class Canvas { alpha, saveFlags); } + /** + * Helper for saveLayerAlpha(left, top, right, bottom, alpha, {@link #ALL_SAVE_FLAG}) + */ + public int saveLayerAlpha(float left, float top, float right, float bottom, int alpha) { + return saveLayerAlpha(left, top, right, bottom, alpha, ALL_SAVE_FLAG); + } + /** * This call balances a previous call to save(), and is used to remove all * modifications to the matrix/clip state since the last save call. It is