import com.android.gallery3d.filtershow.editors.EditorStraighten;
import com.android.gallery3d.filtershow.editors.EditorTinyPlanet;
import com.android.gallery3d.filtershow.editors.ImageOnlyEditor;
+import com.android.gallery3d.filtershow.filters.FilterMirrorRepresentation;
import com.android.gallery3d.filtershow.filters.FilterRepresentation;
+import com.android.gallery3d.filtershow.filters.FilterRotateRepresentation;
import com.android.gallery3d.filtershow.filters.FilterUserPresetRepresentation;
import com.android.gallery3d.filtershow.filters.FiltersManager;
import com.android.gallery3d.filtershow.filters.ImageFilter;
if (filterRepresentation == null) {
return;
}
- if (MasterImage.getImage().getCurrentFilterRepresentation() == filterRepresentation) {
+ if (!(filterRepresentation instanceof FilterRotateRepresentation)
+ && !(filterRepresentation instanceof FilterMirrorRepresentation)
+ && MasterImage.getImage().getCurrentFilterRepresentation() == filterRepresentation) {
return;
}
ImagePreset oldPreset = MasterImage.getImage().getPreset();
if (representation == null) {
copy.addFilter(filterRepresentation);
} else if (filterRepresentation.getFilterType() == FilterRepresentation.TYPE_GEOMETRY) {
+ representation.useParametersFrom(filterRepresentation);
filterRepresentation = representation;
} else {
if (filterRepresentation.allowsSingleInstanceOnly()) {
return;
}
+ if (representation instanceof FilterRotateRepresentation) {
+ FilterRotateRepresentation r = (FilterRotateRepresentation) representation;
+ r.rotateCW();
+ }
+ if (representation instanceof FilterMirrorRepresentation) {
+ FilterMirrorRepresentation r = (FilterMirrorRepresentation) representation;
+ r.cycle();
+ }
useFilterRepresentation(representation);
// show representation
public void addTools(Context context) {
- int[] editorsId = {
- EditorCrop.ID,
- EditorStraighten.ID,
- EditorRotate.ID,
- EditorMirror.ID
- };
-
int[] textId = {
R.string.crop,
R.string.straighten,
new FilterMirrorRepresentation()
};
- for (int i = 0; i < editorsId.length; i++) {
- int editorId = editorsId[i];
+ for (int i = 0; i < textId.length; i++) {
FilterRepresentation geometry = geometryFilters[i];
- geometry.setEditorId(editorId);
geometry.setTextId(textId[i]);
geometry.setOverlayId(overlayId[i]);
geometry.setOverlayOnly(true);
import com.android.gallery3d.R;
import com.android.gallery3d.filtershow.editors.EditorMirror;
+import com.android.gallery3d.filtershow.editors.ImageOnlyEditor;
import java.io.IOException;
public FilterMirrorRepresentation(Mirror mirror) {
super(FilterMirrorRepresentation.class.getSimpleName());
setSerializationName(SERIALIZATION_NAME);
- setShowParameterValue(true);
+ setShowParameterValue(false);
setFilterClass(FilterMirrorRepresentation.class);
setFilterType(FilterRepresentation.TYPE_GEOMETRY);
setSupportsPartialRendering(true);
setTextId(R.string.mirror);
- setEditorId(EditorMirror.ID);
+ setEditorId(ImageOnlyEditor.ID);
setMirror(mirror);
}
import com.android.gallery3d.R;
import com.android.gallery3d.filtershow.editors.EditorRotate;
+import com.android.gallery3d.filtershow.editors.ImageOnlyEditor;
import java.io.IOException;
public FilterRotateRepresentation(Rotation rotation) {
super(FilterRotateRepresentation.class.getSimpleName());
setSerializationName(SERIALIZATION_NAME);
- setShowParameterValue(true);
+ setShowParameterValue(false);
setFilterClass(FilterRotateRepresentation.class);
setFilterType(FilterRepresentation.TYPE_GEOMETRY);
setSupportsPartialRendering(true);
setTextId(R.string.rotate);
- setEditorId(EditorRotate.ID);
+ setEditorId(ImageOnlyEditor.ID);
setRotation(rotation);
}