diff options
Diffstat (limited to 'src/com/android/gallery3d/filtershow/ui/ImageCurves.java')
-rw-r--r-- | src/com/android/gallery3d/filtershow/ui/ImageCurves.java | 24 |
1 files changed, 21 insertions, 3 deletions
diff --git a/src/com/android/gallery3d/filtershow/ui/ImageCurves.java b/src/com/android/gallery3d/filtershow/ui/ImageCurves.java index 80c893562..f581fc733 100644 --- a/src/com/android/gallery3d/filtershow/ui/ImageCurves.java +++ b/src/com/android/gallery3d/filtershow/ui/ImageCurves.java @@ -26,7 +26,6 @@ import android.graphics.PorterDuff; import android.graphics.PorterDuffXfermode; import android.os.AsyncTask; import android.util.AttributeSet; -import android.util.Log; import android.view.LayoutInflater; import android.view.MenuItem; import android.view.MotionEvent; @@ -35,6 +34,10 @@ import android.widget.LinearLayout; import android.widget.PopupMenu; import com.android.gallery3d.R; +import com.android.gallery3d.filtershow.editors.EditorCurves; +import com.android.gallery3d.filtershow.filters.BaseFiltersManager; +import com.android.gallery3d.filtershow.filters.FilterCurvesRepresentation; +import com.android.gallery3d.filtershow.filters.FiltersManager; import com.android.gallery3d.filtershow.filters.ImageFilterCurves; import com.android.gallery3d.filtershow.imageshow.ImageShow; import com.android.gallery3d.filtershow.presets.ImagePreset; @@ -57,14 +60,18 @@ public class ImageCurves extends ImageShow { Path gHistoPath = new Path(); boolean mDoingTouchMove = false; + private EditorCurves mEditorCurves; + private FilterCurvesRepresentation mFilterCurvesRepresentation; public ImageCurves(Context context) { super(context); + setLayerType(LAYER_TYPE_SOFTWARE, gPaint); resetCurve(); } public ImageCurves(Context context, AttributeSet attrs) { super(context, attrs); + setLayerType(LAYER_TYPE_SOFTWARE, gPaint); resetCurve(); } @@ -127,7 +134,7 @@ public class ImageCurves extends ImageShow { String filterName = getFilterName(); ImagePreset p = getImagePreset(); if (p != null) { - return (ImageFilterCurves) p.getFilter(filterName); + return (ImageFilterCurves) FiltersManager.getManager().getFilter(ImageFilterCurves.class); } return null; } @@ -284,9 +291,11 @@ public class ImageCurves extends ImageShow { } public synchronized void updateCachedImage() { - // update image if (getImagePreset() != null) { resetImageCaches(this); + if (mEditorCurves != null) { + mEditorCurves.commitLocalRepresentation(); + } invalidate(); } } @@ -391,6 +400,15 @@ public class ImageCurves extends ImageShow { break; } } + mEditorCurves.commitLocalRepresentation(); invalidate(); } + + public void setEditor(EditorCurves editorCurves) { + mEditorCurves = editorCurves; + } + + public void setFilterDrawRepresentation(FilterCurvesRepresentation drawRep) { + mFilterCurvesRepresentation = drawRep; + } } |