From 805a7fe57da2534462f4720abc7fe9cdb8f7ecc9 Mon Sep 17 00:00:00 2001 From: John Hoford Date: Wed, 4 Sep 2013 13:53:29 -0700 Subject: [PATCH] put back shade in crop and straighten Change-Id: I046d98ea61f93d00131eaa7e7058a16bc1be0adc --- .../gallery3d/filtershow/crop/CropDrawingUtils.java | 18 ++++++++++++++++++ .../gallery3d/filtershow/imageshow/ImageCrop.java | 1 + .../filtershow/imageshow/ImageStraighten.java | 13 ++++++++----- 3 files changed, 27 insertions(+), 5 deletions(-) diff --git a/src/com/android/gallery3d/filtershow/crop/CropDrawingUtils.java b/src/com/android/gallery3d/filtershow/crop/CropDrawingUtils.java index b0d324cbb..df0f14fe0 100644 --- a/src/com/android/gallery3d/filtershow/crop/CropDrawingUtils.java +++ b/src/com/android/gallery3d/filtershow/crop/CropDrawingUtils.java @@ -54,6 +54,24 @@ public abstract class CropDrawingUtils { canvas.drawRect(bounds, p); } + public static void drawShade(Canvas canvas, RectF bounds) { + int w = canvas.getWidth(); + int h = canvas.getHeight(); + Paint p = new Paint(); + p.setStyle(Paint.Style.FILL); + p.setColor(Color.BLACK & 0x88000000); + + RectF r = new RectF(); + r.set(0,0,w,bounds.top); + canvas.drawRect(r, p); + r.set(0,bounds.top,bounds.left,h); + canvas.drawRect(r, p); + r.set(bounds.left,bounds.bottom,w,h); + canvas.drawRect(r, p); + r.set(bounds.right,bounds.top,w,bounds.bottom); + canvas.drawRect(r, p); + } + public static void drawIndicator(Canvas canvas, Drawable indicator, int indicatorSize, float centerX, float centerY) { int left = (int) centerX - indicatorSize / 2; diff --git a/src/com/android/gallery3d/filtershow/imageshow/ImageCrop.java b/src/com/android/gallery3d/filtershow/imageshow/ImageCrop.java index b6e964163..4b0399128 100644 --- a/src/com/android/gallery3d/filtershow/imageshow/ImageCrop.java +++ b/src/com/android/gallery3d/filtershow/imageshow/ImageCrop.java @@ -313,6 +313,7 @@ public class ImageCrop extends ImageShow { if (mDisplayCropMatrix.mapRect(mScreenCropBounds)) { // Draw crop rect and markers CropDrawingUtils.drawCropRect(canvas, mScreenCropBounds); + CropDrawingUtils.drawShade(canvas, mScreenCropBounds); CropDrawingUtils.drawRuleOfThird(canvas, mScreenCropBounds); CropDrawingUtils.drawIndicators(canvas, mCropIndicator, mIndicatorSize, mScreenCropBounds, mCropObj.isFixedAspect(), diff --git a/src/com/android/gallery3d/filtershow/imageshow/ImageStraighten.java b/src/com/android/gallery3d/filtershow/imageshow/ImageStraighten.java index 92cdadb8b..e00e55293 100644 --- a/src/com/android/gallery3d/filtershow/imageshow/ImageStraighten.java +++ b/src/com/android/gallery3d/filtershow/imageshow/ImageStraighten.java @@ -28,7 +28,7 @@ import android.graphics.RectF; import android.util.AttributeSet; import android.view.MotionEvent; -import com.android.gallery3d.app.Log; +import com.android.gallery3d.filtershow.crop.CropDrawingUtils; import com.android.gallery3d.filtershow.editors.EditorStraighten; import com.android.gallery3d.filtershow.filters.FilterCropRepresentation; import com.android.gallery3d.filtershow.filters.FilterRepresentation; @@ -44,6 +44,7 @@ public class ImageStraighten extends ImageShow { private float mBaseAngle = 0; private float mAngle = 0; private float mInitialAngle = 0; + private static final int NBLINES = 16; private boolean mFirstDrawSinceUp = false; private EditorStraighten mEditorStraighten; private FilterStraightenRepresentation mLocalRep = new FilterStraightenRepresentation(); @@ -243,15 +244,15 @@ public class ImageStraighten extends ImageShow { mLocalRep.setStraighten(mAngle); mFirstDrawSinceUp = false; } - + CropDrawingUtils.drawShade(canvas, mDrawRect); // Draw the grid if (mState == MODES.MOVE) { canvas.save(); canvas.clipRect(mDrawRect); - int n = 16; - float step = viewWidth / n; + + float step = Math.max(viewWidth,viewWidth) / NBLINES; float p = 0; - for (int i = 1; i < n; i++) { + for (int i = 1; i < NBLINES; i++) { p = i * step; mPaint.setAlpha(60); canvas.drawLine(p, 0, p, viewHeight, mPaint); @@ -264,6 +265,8 @@ public class ImageStraighten extends ImageShow { mPaint.setStyle(Style.STROKE); mPaint.setStrokeWidth(3); mDrawPath.reset(); + + mDrawPath.addRect(mDrawRect, Path.Direction.CW); canvas.drawPath(mDrawPath, mPaint); } -- 2.11.0