summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorRuben Brunk <rubenbrunk@google.com>2012-09-27 12:38:08 -0700
committerRuben Brunk <rubenbrunk@google.com>2012-10-08 12:50:43 -0700
commit16f709d45ab563cb53d28fce7efb1afda60f01ab (patch)
treef1530be360ee3f76b7642d28d1c0cfcabc2f67ec /src
parentf1c701f86f779bc3d09bd23315da19124c62e97e (diff)
downloadandroid_packages_apps_Snap-16f709d45ab563cb53d28fce7efb1afda60f01ab.tar.gz
android_packages_apps_Snap-16f709d45ab563cb53d28fce7efb1afda60f01ab.tar.bz2
android_packages_apps_Snap-16f709d45ab563cb53d28fce7efb1afda60f01ab.zip
Adding Crop, Rotate, Flip.
Bug: 7224232 Bug: 7218935 Adding geometry manipulation UI features. Change-Id: If924313c18121e6d192a1934e76691bd578d8eb0
Diffstat (limited to 'src')
-rw-r--r--src/com/android/gallery3d/filtershow/presets/ImagePreset.java41
1 files changed, 12 insertions, 29 deletions
diff --git a/src/com/android/gallery3d/filtershow/presets/ImagePreset.java b/src/com/android/gallery3d/filtershow/presets/ImagePreset.java
index c0c310374..be08e7090 100644
--- a/src/com/android/gallery3d/filtershow/presets/ImagePreset.java
+++ b/src/com/android/gallery3d/filtershow/presets/ImagePreset.java
@@ -8,6 +8,7 @@ import android.util.Log;
import com.android.gallery3d.filtershow.ImageStateAdapter;
import com.android.gallery3d.filtershow.filters.ImageFilter;
import com.android.gallery3d.filtershow.filters.ImageFilterStraighten;
+import com.android.gallery3d.filtershow.imageshow.GeometryMetadata;
import com.android.gallery3d.filtershow.imageshow.ImageShow;
import java.util.Vector;
@@ -22,15 +23,15 @@ public class ImagePreset {
protected boolean mIsFxPreset = false;
enum FullRotate {
- ZERO, NINETY, HUNDRED_HEIGHTY, TWO_HUNDRED_SEVENTY
+ ZERO, NINETY, HUNDRED_EIGHTY, TWO_HUNDRED_SEVENTY
}
- protected FullRotate mFullRotate = FullRotate.ZERO;
- protected float mStraightenRotate = 0;
- protected float mStraightenZoom = 0;
- protected boolean mHorizontalFlip = false;
- protected boolean mVerticalFlip = false;
- protected RectF mCrop = null;
+ // This is where the geometry metadata lives now.
+ public final GeometryMetadata mGeoData = new GeometryMetadata();
+
+ public void setGeometry(GeometryMetadata m) {
+ mGeoData.set(m);
+ }
private float mScaleFactor = 1.0f;
private boolean mIsHighQuality = false;
@@ -51,32 +52,13 @@ public class ImagePreset {
mHistoryName = source.name();
mIsFxPreset = source.isFx();
- mStraightenRotate = source.mStraightenRotate;
- mStraightenZoom = source.mStraightenZoom;
-
- mScaleFactor = source.mScaleFactor;
- mIsHighQuality = source.mIsHighQuality;
- }
-
- public void setStraightenRotation(float rotate, float zoom) {
- mStraightenRotate = rotate;
- mStraightenZoom = zoom;
+ mGeoData.set(source.mGeoData);
}
private Bitmap applyGeometry(Bitmap original, float scaleFactor, boolean highQuality) {
Bitmap bitmap = original;
- if (mFullRotate != FullRotate.ZERO) {
- // TODO
- }
-
- if (mStraightenRotate != 0) {
- // TODO: keep the instances around
- ImageFilter straighten = new ImageFilterStraighten(mStraightenRotate, mStraightenZoom);
- bitmap = straighten.apply(bitmap, scaleFactor, highQuality);
- straighten = null;
- }
-
+ // TODO: put geometry filters
return bitmap;
}
@@ -104,7 +86,8 @@ public class ImagePreset {
if (!mName.equalsIgnoreCase(preset.name())) {
return false;
}
- if (mStraightenRotate != preset.mStraightenRotate) {
+
+ if (!mGeoData.equals(preset.mGeoData)) {
return false;
}
for (int i = 0; i < preset.mFilters.size(); i++) {