diff options
Diffstat (limited to 'src/com/android/gallery3d/filtershow/imageshow/ImageShow.java')
-rw-r--r-- | src/com/android/gallery3d/filtershow/imageshow/ImageShow.java | 60 |
1 files changed, 22 insertions, 38 deletions
diff --git a/src/com/android/gallery3d/filtershow/imageshow/ImageShow.java b/src/com/android/gallery3d/filtershow/imageshow/ImageShow.java index 358d5b795..4c74b16ca 100644 --- a/src/com/android/gallery3d/filtershow/imageshow/ImageShow.java +++ b/src/com/android/gallery3d/filtershow/imageshow/ImageShow.java @@ -23,6 +23,7 @@ import android.graphics.Color; import android.graphics.Paint; import android.graphics.Rect; import android.graphics.RectF; +import android.net.Uri; import android.os.Handler; import android.util.AttributeSet; import android.view.GestureDetector; @@ -74,16 +75,12 @@ public class ImageShow extends View implements OnGestureListener, private Bitmap mFiltersOnlyImage = null; private Bitmap mFilteredImage = null; - private final boolean USE_SLIDER_GESTURE = false; // set to true to have - // slider gesture - protected SliderController mSliderController = new SliderController(); - private GestureDetector mGestureDetector = null; private HistoryAdapter mHistoryAdapter = null; private ImageStateAdapter mImageStateAdapter = null; - private Rect mImageBounds = new Rect(); + protected Rect mImageBounds = new Rect(); private boolean mTouchShowOriginal = false; private long mTouchShowOriginalDate = 0; @@ -152,15 +149,15 @@ public class ImageShow extends View implements OnGestureListener, private final Handler mHandler = new Handler(); public void select() { + if (mSeekBar != null) { + mSeekBar.setOnSeekBarChangeListener(this); + } if (getCurrentFilter() != null) { int parameter = getCurrentFilter().getParameter(); int maxp = getCurrentFilter().getMaxParameter(); int minp = getCurrentFilter().getMinParameter(); updateSeekBar(parameter, minp, maxp); } - if (mSeekBar != null) { - mSeekBar.setOnSeekBarChangeListener(this); - } } private int parameterToUI(int parameter, int minp, int maxp, int uimax) { @@ -178,9 +175,6 @@ public class ImageShow extends View implements OnGestureListener, int seekMax = mSeekBar.getMax(); int progress = parameterToUI(parameter, minp, maxp, seekMax); mSeekBar.setProgress(progress); - if (getPanelController() != null) { - getPanelController().onNewValue(parameter); - } } public void unselect() { @@ -197,10 +191,8 @@ public class ImageShow extends View implements OnGestureListener, public void resetParameter() { ImageFilter currentFilter = getCurrentFilter(); if (currentFilter != null) { - onNewValue(currentFilter.getDefaultParameter()); - } - if (USE_SLIDER_GESTURE) { - mSliderController.reset(); + updateSeekBar(currentFilter.getDefaultParameter(), + getCurrentFilter().getMinParameter(), getCurrentFilter().getMaxParameter()); } } @@ -214,8 +206,8 @@ public class ImageShow extends View implements OnGestureListener, @Override public void onNewValue(int parameter) { - int maxp = 100; - int minp = -100; + int maxp = ImageFilter.DEFAULT_MAX_PARAMETER; + int minp = ImageFilter.DEFAULT_MIN_PARAMETER; if (getCurrentFilter() != null) { getCurrentFilter().setParameter(parameter); maxp = getCurrentFilter().getMaxParameter(); @@ -228,7 +220,6 @@ public class ImageShow extends View implements OnGestureListener, if (getPanelController() != null) { getPanelController().onNewValue(parameter); } - updateSeekBar(parameter, minp, maxp); invalidate(); mActivity.enableSave(hasModifications()); } @@ -246,9 +237,6 @@ public class ImageShow extends View implements OnGestureListener, public ImageShow(Context context, AttributeSet attrs) { super(context, attrs); - if (USE_SLIDER_GESTURE) { - mSliderController.setListener(this); - } mHistoryAdapter = new HistoryAdapter(context, R.layout.filtershow_history_operation_row, R.id.rowTextView); mImageStateAdapter = new ImageStateAdapter(context, @@ -259,9 +247,6 @@ public class ImageShow extends View implements OnGestureListener, public ImageShow(Context context) { super(context); - if (USE_SLIDER_GESTURE) { - mSliderController.setListener(this); - } mHistoryAdapter = new HistoryAdapter(context, R.layout.filtershow_history_operation_row, R.id.rowTextView); setupGestureDetector(context); @@ -277,10 +262,6 @@ public class ImageShow extends View implements OnGestureListener, int parentWidth = MeasureSpec.getSize(widthMeasureSpec); int parentHeight = MeasureSpec.getSize(heightMeasureSpec); setMeasuredDimension(parentWidth, parentHeight); - if (USE_SLIDER_GESTURE) { - mSliderController.setWidth(parentWidth); - mSliderController.setHeight(parentHeight); - } } public void setSeekBar(SeekBar seekBar) { @@ -324,6 +305,10 @@ public class ImageShow extends View implements OnGestureListener, return dst; } + public Rect getImageCropBounds() { + return GeometryMath.roundNearest(getImagePreset().mGeoData.getPreviewCropBounds()); + } + public Rect getDisplayedImageBounds() { return mImageBounds; } @@ -378,12 +363,6 @@ public class ImageShow extends View implements OnGestureListener, 1.5f * mTextPadding, mPaint); } - if (showControls()) { - if (USE_SLIDER_GESTURE) { - mSliderController.onDraw(canvas); - } - } - drawToast(canvas); } @@ -646,13 +625,13 @@ public class ImageShow extends View implements OnGestureListener, } public void updateImage() { + invalidate(); if (!updateGeometryFlags()) { return; } Bitmap bitmap = mImageLoader.getOriginalBitmapLarge(); if (bitmap != null) { imageSizeChanged(bitmap); - invalidate(); } } @@ -669,12 +648,17 @@ public class ImageShow extends View implements OnGestureListener, mImageLoader.saveImage(getImagePreset(), filterShowActivity, file); } + public void saveToUri(Bitmap f, Uri u, String m, FilterShowActivity filterShowActivity) { + mImageLoader.saveToUri(f, u, m, filterShowActivity); + } + + public void returnFilteredResult(FilterShowActivity filterShowActivity) { + mImageLoader.returnFilteredResult(getImagePreset(), filterShowActivity); + } + @Override public boolean onTouchEvent(MotionEvent event) { super.onTouchEvent(event); - if (USE_SLIDER_GESTURE) { - mSliderController.onTouchEvent(event); - } if (mGestureDetector != null) { mGestureDetector.onTouchEvent(event); } |