summaryrefslogtreecommitdiffstats
path: root/src/com/android/gallery3d/filtershow/editors
diff options
context:
space:
mode:
Diffstat (limited to 'src/com/android/gallery3d/filtershow/editors')
-rw-r--r--src/com/android/gallery3d/filtershow/editors/BasicEditor.java138
-rw-r--r--src/com/android/gallery3d/filtershow/editors/Editor.java330
-rw-r--r--src/com/android/gallery3d/filtershow/editors/EditorChanSat.java227
-rw-r--r--src/com/android/gallery3d/filtershow/editors/EditorCrop.java168
-rw-r--r--src/com/android/gallery3d/filtershow/editors/EditorCurves.java56
-rw-r--r--src/com/android/gallery3d/filtershow/editors/EditorDraw.java158
-rw-r--r--src/com/android/gallery3d/filtershow/editors/EditorGrad.java315
-rw-r--r--src/com/android/gallery3d/filtershow/editors/EditorInfo.java23
-rw-r--r--src/com/android/gallery3d/filtershow/editors/EditorMirror.java109
-rw-r--r--src/com/android/gallery3d/filtershow/editors/EditorPanel.java143
-rw-r--r--src/com/android/gallery3d/filtershow/editors/EditorRedEye.java65
-rw-r--r--src/com/android/gallery3d/filtershow/editors/EditorRotate.java112
-rw-r--r--src/com/android/gallery3d/filtershow/editors/EditorStraighten.java103
-rw-r--r--src/com/android/gallery3d/filtershow/editors/EditorTinyPlanet.java58
-rw-r--r--src/com/android/gallery3d/filtershow/editors/EditorVignette.java53
-rw-r--r--src/com/android/gallery3d/filtershow/editors/EditorZoom.java27
-rw-r--r--src/com/android/gallery3d/filtershow/editors/ImageOnlyEditor.java50
-rw-r--r--src/com/android/gallery3d/filtershow/editors/ParametricEditor.java206
-rw-r--r--src/com/android/gallery3d/filtershow/editors/SwapButton.java111
19 files changed, 0 insertions, 2452 deletions
diff --git a/src/com/android/gallery3d/filtershow/editors/BasicEditor.java b/src/com/android/gallery3d/filtershow/editors/BasicEditor.java
deleted file mode 100644
index af694d811..000000000
--- a/src/com/android/gallery3d/filtershow/editors/BasicEditor.java
+++ /dev/null
@@ -1,138 +0,0 @@
-/*
- * Copyright (C) 2013 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.gallery3d.filtershow.editors;
-
-import android.content.Context;
-
-import com.android.gallery3d.R;
-import com.android.gallery3d.filtershow.controller.Control;
-import com.android.gallery3d.filtershow.controller.FilterView;
-import com.android.gallery3d.filtershow.controller.Parameter;
-import com.android.gallery3d.filtershow.controller.ParameterInteger;
-import com.android.gallery3d.filtershow.filters.FilterBasicRepresentation;
-import com.android.gallery3d.filtershow.filters.FilterRepresentation;
-
-
-/**
- * The basic editor that all the one parameter filters
- */
-public class BasicEditor extends ParametricEditor implements ParameterInteger {
- public static int ID = R.id.basicEditor;
- private final String LOGTAG = "BasicEditor";
-
- public BasicEditor() {
- super(ID, R.layout.filtershow_default_editor, R.id.basicEditor);
- }
-
- protected BasicEditor(int id) {
- super(id, R.layout.filtershow_default_editor, R.id.basicEditor);
- }
-
- protected BasicEditor(int id, int layoutID, int viewID) {
- super(id, layoutID, viewID);
- }
-
- @Override
- public void reflectCurrentFilter() {
- super.reflectCurrentFilter();
- if (getLocalRepresentation() != null && getLocalRepresentation() instanceof FilterBasicRepresentation) {
- FilterBasicRepresentation interval = (FilterBasicRepresentation) getLocalRepresentation();
- updateText();
- }
- }
-
- private FilterBasicRepresentation getBasicRepresentation() {
- FilterRepresentation tmpRep = getLocalRepresentation();
- if (tmpRep != null && tmpRep instanceof FilterBasicRepresentation) {
- return (FilterBasicRepresentation) tmpRep;
-
- }
- return null;
- }
-
- @Override
- public int getMaximum() {
- FilterBasicRepresentation rep = getBasicRepresentation();
- if (rep == null) {
- return 0;
- }
- return rep.getMaximum();
- }
-
- @Override
- public int getMinimum() {
- FilterBasicRepresentation rep = getBasicRepresentation();
- if (rep == null) {
- return 0;
- }
- return rep.getMinimum();
- }
-
- @Override
- public int getDefaultValue() {
- return 0;
- }
-
- @Override
- public int getValue() {
- FilterBasicRepresentation rep = getBasicRepresentation();
- if (rep == null) {
- return 0;
- }
- return rep.getValue();
- }
-
- @Override
- public String getValueString() {
- return null;
- }
-
- @Override
- public void setValue(int value) {
- FilterBasicRepresentation rep = getBasicRepresentation();
- if (rep == null) {
- return;
- }
- rep.setValue(value);
- commitLocalRepresentation();
- }
-
- @Override
- public String getParameterName() {
- FilterBasicRepresentation rep = getBasicRepresentation();
- return mContext.getString(rep.getTextId());
- }
-
- @Override
- public String getParameterType() {
- return sParameterType;
- }
-
- @Override
- public void setController(Control c) {
- }
-
- @Override
- public void setFilterView(FilterView editor) {
-
- }
-
- @Override
- public void copyFrom(Parameter src) {
-
- }
-}
diff --git a/src/com/android/gallery3d/filtershow/editors/Editor.java b/src/com/android/gallery3d/filtershow/editors/Editor.java
deleted file mode 100644
index a9e56e0c1..000000000
--- a/src/com/android/gallery3d/filtershow/editors/Editor.java
+++ /dev/null
@@ -1,330 +0,0 @@
-/*
- * Copyright (C) 2012 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.gallery3d.filtershow.editors;
-
-import android.content.Context;
-import android.util.AttributeSet;
-import android.view.LayoutInflater;
-import android.view.Menu;
-import android.view.MenuItem;
-import android.view.View;
-import android.view.ViewGroup;
-import android.widget.Button;
-import android.widget.FrameLayout;
-import android.widget.LinearLayout;
-import android.widget.PopupMenu;
-import android.widget.SeekBar;
-import android.widget.SeekBar.OnSeekBarChangeListener;
-
-import com.android.gallery3d.R;
-import com.android.gallery3d.filtershow.controller.Control;
-import com.android.gallery3d.filtershow.filters.FilterRepresentation;
-import com.android.gallery3d.filtershow.imageshow.ImageShow;
-import com.android.gallery3d.filtershow.imageshow.MasterImage;
-import com.android.gallery3d.filtershow.pipeline.ImagePreset;
-
-import java.util.ArrayList;
-import java.util.Collection;
-
-/**
- * Base class for Editors Must contain a mImageShow and a top level view
- */
-public class Editor implements OnSeekBarChangeListener, SwapButton.SwapButtonListener {
- protected Context mContext;
- protected View mView;
- protected ImageShow mImageShow;
- protected FrameLayout mFrameLayout;
- protected SeekBar mSeekBar;
- Button mEditTitle;
- protected Button mFilterTitle;
- protected int mID;
- private final String LOGTAG = "Editor";
- protected boolean mChangesGeometry = false;
- protected FilterRepresentation mLocalRepresentation = null;
- protected byte mShowParameter = SHOW_VALUE_UNDEFINED;
- private Button mButton;
- public static byte SHOW_VALUE_UNDEFINED = -1;
- public static byte SHOW_VALUE_OFF = 0;
- public static byte SHOW_VALUE_INT = 1;
-
- public static void hackFixStrings(Menu menu) {
- int count = menu.size();
- for (int i = 0; i < count; i++) {
- MenuItem item = menu.getItem(i);
- item.setTitle(item.getTitle().toString().toUpperCase());
- }
- }
-
- public String calculateUserMessage(Context context, String effectName, Object parameterValue) {
- return effectName.toUpperCase() + " " + parameterValue;
- }
-
- protected Editor(int id) {
- mID = id;
- }
-
- public int getID() {
- return mID;
- }
-
- public byte showParameterValue() {
- return mShowParameter;
- }
-
- public boolean showsSeekBar() {
- return true;
- }
-
- public void setUpEditorUI(View actionButton, View editControl,
- Button editTitle, Button stateButton) {
- mEditTitle = editTitle;
- mFilterTitle = stateButton;
- mButton = editTitle;
- setMenuIcon(true);
- setUtilityPanelUI(actionButton, editControl);
- }
-
- public boolean showsPopupIndicator() {
- return true;
- }
-
- /**
- * @param actionButton the would be the area for menu etc
- * @param editControl this is the black area for sliders etc
- */
- public void setUtilityPanelUI(View actionButton, View editControl) {
-
- AttributeSet aset;
- Context context = editControl.getContext();
- LayoutInflater inflater =
- (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
- LinearLayout lp = (LinearLayout) inflater.inflate(
- R.layout.filtershow_seekbar, (ViewGroup) editControl, true);
- mSeekBar = (SeekBar) lp.findViewById(R.id.primarySeekBar);
- mSeekBar.setOnSeekBarChangeListener(this);
-
- if (showsSeekBar()) {
- mSeekBar.setOnSeekBarChangeListener(this);
- mSeekBar.setVisibility(View.VISIBLE);
- } else {
- mSeekBar.setVisibility(View.INVISIBLE);
- }
-
- if (mButton != null) {
- if (showsPopupIndicator()) {
- mButton.setCompoundDrawablesRelativeWithIntrinsicBounds(0, 0,
- R.drawable.filtershow_menu_marker, 0);
- } else {
- mButton.setCompoundDrawablesRelativeWithIntrinsicBounds(0, 0, 0, 0);
- }
- }
- }
-
- @Override
- public void onProgressChanged(SeekBar sbar, int progress, boolean arg2) {
-
- }
-
- public void setPanel() {
-
- }
-
- public void createEditor(Context context,FrameLayout frameLayout) {
- mContext = context;
- mFrameLayout = frameLayout;
- mLocalRepresentation = null;
- }
-
- protected void unpack(int viewid, int layoutid) {
-
- if (mView == null) {
- mView = mFrameLayout.findViewById(viewid);
- if (mView == null) {
- LayoutInflater inflater = (LayoutInflater) mContext.getSystemService
- (Context.LAYOUT_INFLATER_SERVICE);
- mView = inflater.inflate(layoutid, mFrameLayout, false);
- mFrameLayout.addView(mView, mView.getLayoutParams());
- }
- }
- mImageShow = findImageShow(mView);
- }
-
- private ImageShow findImageShow(View view) {
- if (view instanceof ImageShow) {
- return (ImageShow) view;
- }
- if (!(view instanceof ViewGroup)) {
- return null;
- }
- ViewGroup vg = (ViewGroup) view;
- int n = vg.getChildCount();
- for (int i = 0; i < n; i++) {
- View v = vg.getChildAt(i);
- if (v instanceof ImageShow) {
- return (ImageShow) v;
- } else if (v instanceof ViewGroup) {
- return findImageShow(v);
- }
- }
- return null;
- }
-
- public View getTopLevelView() {
- return mView;
- }
-
- public ImageShow getImageShow() {
- return mImageShow;
- }
-
- public void setVisibility(int visible) {
- mView.setVisibility(visible);
- }
-
- public FilterRepresentation getLocalRepresentation() {
- if (mLocalRepresentation == null) {
- ImagePreset preset = MasterImage.getImage().getPreset();
- FilterRepresentation filterRepresentation = MasterImage.getImage().getCurrentFilterRepresentation();
- mLocalRepresentation = preset.getFilterRepresentationCopyFrom(filterRepresentation);
- if (mShowParameter == SHOW_VALUE_UNDEFINED && filterRepresentation != null) {
- boolean show = filterRepresentation.showParameterValue();
- mShowParameter = show ? SHOW_VALUE_INT : SHOW_VALUE_OFF;
- }
-
- }
- return mLocalRepresentation;
- }
-
- /**
- * Call this to update the preset in MasterImage with the current representation
- * returned by getLocalRepresentation. This causes the preview bitmap to be
- * regenerated.
- */
- public void commitLocalRepresentation() {
- commitLocalRepresentation(getLocalRepresentation());
- }
-
- /**
- * Call this to update the preset in MasterImage with a given representation.
- * This causes the preview bitmap to be regenerated.
- */
- public void commitLocalRepresentation(FilterRepresentation rep) {
- ArrayList<FilterRepresentation> filter = new ArrayList<FilterRepresentation>(1);
- filter.add(rep);
- commitLocalRepresentation(filter);
- }
-
- /**
- * Call this to update the preset in MasterImage with a collection of FilterRepresnations.
- * This causes the preview bitmap to be regenerated.
- */
- public void commitLocalRepresentation(Collection<FilterRepresentation> reps) {
- ImagePreset preset = MasterImage.getImage().getPreset();
- preset.updateFilterRepresentations(reps);
- if (mButton != null) {
- updateText();
- }
- if (mChangesGeometry) {
- // Regenerate both the filtered and the geometry-only bitmaps
- MasterImage.getImage().updatePresets(true);
- } else {
- // Regenerate only the filtered bitmap.
- MasterImage.getImage().invalidateFiltersOnly();
- }
- preset.fillImageStateAdapter(MasterImage.getImage().getState());
- }
-
- /**
- * This is called in response to a click to apply and leave the editor.
- */
- public void finalApplyCalled() {
- commitLocalRepresentation();
- }
-
- protected void updateText() {
- String s = "";
- if (mLocalRepresentation != null) {
- s = mContext.getString(mLocalRepresentation.getTextId());
- }
- mButton.setText(calculateUserMessage(mContext, s, ""));
- }
-
- /**
- * called after the filter is set and the select is called
- */
- public void reflectCurrentFilter() {
- mLocalRepresentation = null;
- FilterRepresentation representation = getLocalRepresentation();
- if (representation != null && mFilterTitle != null && representation.getTextId() != 0) {
- String text = mContext.getString(representation.getTextId()).toUpperCase();
- mFilterTitle.setText(text);
- updateText();
- }
- }
-
- public boolean useUtilityPanel() {
- return true;
- }
-
- public void openUtilityPanel(LinearLayout mAccessoryViewList) {
- setMenuIcon(false);
- if (mImageShow != null) {
- mImageShow.openUtilityPanel(mAccessoryViewList);
- }
- }
-
- protected void setMenuIcon(boolean on) {
- mEditTitle.setCompoundDrawablesRelativeWithIntrinsicBounds(
- 0, 0, on ? R.drawable.filtershow_menu_marker : 0, 0);
- }
-
- protected void createMenu(int[] strId, View button) {
- PopupMenu pmenu = new PopupMenu(mContext, button);
- Menu menu = pmenu.getMenu();
- for (int i = 0; i < strId.length; i++) {
- menu.add(Menu.NONE, Menu.FIRST + i, 0, mContext.getString(strId[i]));
- }
- setMenuIcon(true);
-
- }
-
- public Control[] getControls() {
- return null;
- }
- @Override
- public void onStartTrackingTouch(SeekBar arg0) {
-
- }
-
- @Override
- public void onStopTrackingTouch(SeekBar arg0) {
-
- }
-
- @Override
- public void swapLeft(MenuItem item) {
-
- }
-
- @Override
- public void swapRight(MenuItem item) {
-
- }
-
- public void detach() {
- }
-}
diff --git a/src/com/android/gallery3d/filtershow/editors/EditorChanSat.java b/src/com/android/gallery3d/filtershow/editors/EditorChanSat.java
deleted file mode 100644
index 7e31f09ae..000000000
--- a/src/com/android/gallery3d/filtershow/editors/EditorChanSat.java
+++ /dev/null
@@ -1,227 +0,0 @@
-/*
- * Copyright (C) 2013 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package com.android.gallery3d.filtershow.editors;
-
-import android.content.Context;
-import android.graphics.Bitmap;
-import android.os.Handler;
-import android.view.MenuItem;
-import android.view.View;
-import android.view.View.OnClickListener;
-import android.widget.LinearLayout;
-import android.widget.PopupMenu;
-import android.widget.SeekBar.OnSeekBarChangeListener;
-
-import com.android.gallery3d.R;
-import com.android.gallery3d.filtershow.controller.BasicParameterStyle;
-import com.android.gallery3d.filtershow.controller.FilterView;
-import com.android.gallery3d.filtershow.controller.Parameter;
-import com.android.gallery3d.filtershow.filters.FilterChanSatRepresentation;
-import com.android.gallery3d.filtershow.filters.FilterRepresentation;
-import com.android.gallery3d.filtershow.imageshow.MasterImage;
-import com.android.gallery3d.filtershow.pipeline.ImagePreset;
-import com.android.gallery3d.filtershow.pipeline.RenderingRequest;
-import com.android.gallery3d.filtershow.pipeline.RenderingRequestCaller;
-
-public class EditorChanSat extends ParametricEditor implements OnSeekBarChangeListener, FilterView {
- public static final int ID = R.id.editorChanSat;
- private final String LOGTAG = "EditorGrunge";
- private SwapButton mButton;
- private final Handler mHandler = new Handler();
-
- int[] mMenuStrings = {
- R.string.editor_chan_sat_main,
- R.string.editor_chan_sat_red,
- R.string.editor_chan_sat_yellow,
- R.string.editor_chan_sat_green,
- R.string.editor_chan_sat_cyan,
- R.string.editor_chan_sat_blue,
- R.string.editor_chan_sat_magenta
- };
-
- String mCurrentlyEditing = null;
-
- public EditorChanSat() {
- super(ID, R.layout.filtershow_default_editor, R.id.basicEditor);
- }
-
- @Override
- public String calculateUserMessage(Context context, String effectName, Object parameterValue) {
- FilterRepresentation rep = getLocalRepresentation();
- if (rep == null || !(rep instanceof FilterChanSatRepresentation)) {
- return "";
- }
- FilterChanSatRepresentation csrep = (FilterChanSatRepresentation) rep;
- int mode = csrep.getParameterMode();
- String paramString;
-
- paramString = mContext.getString(mMenuStrings[mode]);
-
- int val = csrep.getCurrentParameter();
- return paramString + ((val > 0) ? " +" : " ") + val;
- }
-
- @Override
- public void openUtilityPanel(final LinearLayout accessoryViewList) {
- mButton = (SwapButton) accessoryViewList.findViewById(R.id.applyEffect);
- mButton.setText(mContext.getString(R.string.editor_chan_sat_main));
-
- final PopupMenu popupMenu = new PopupMenu(mImageShow.getActivity(), mButton);
-
- popupMenu.getMenuInflater().inflate(R.menu.filtershow_menu_chan_sat, popupMenu.getMenu());
-
- popupMenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
- @Override
- public boolean onMenuItemClick(MenuItem item) {
- selectMenuItem(item);
- return true;
- }
- });
- mButton.setOnClickListener(new OnClickListener() {
- @Override
- public void onClick(View arg0) {
- popupMenu.show();
- }
- });
- mButton.setListener(this);
-
- FilterChanSatRepresentation csrep = getChanSatRep();
- String menuString = mContext.getString(mMenuStrings[0]);
- switchToMode(csrep, FilterChanSatRepresentation.MODE_MASTER, menuString);
-
- }
-
- public int getParameterIndex(int id) {
- switch (id) {
- case R.id.editor_chan_sat_main:
- return FilterChanSatRepresentation.MODE_MASTER;
- case R.id.editor_chan_sat_red:
- return FilterChanSatRepresentation.MODE_RED;
- case R.id.editor_chan_sat_yellow:
- return FilterChanSatRepresentation.MODE_YELLOW;
- case R.id.editor_chan_sat_green:
- return FilterChanSatRepresentation.MODE_GREEN;
- case R.id.editor_chan_sat_cyan:
- return FilterChanSatRepresentation.MODE_CYAN;
- case R.id.editor_chan_sat_blue:
- return FilterChanSatRepresentation.MODE_BLUE;
- case R.id.editor_chan_sat_magenta:
- return FilterChanSatRepresentation.MODE_MAGENTA;
- }
- return -1;
- }
-
- @Override
- public void detach() {
- mButton.setListener(null);
- mButton.setOnClickListener(null);
- }
-
- private void updateSeekBar(FilterChanSatRepresentation rep) {
- mControl.updateUI();
- }
-
- @Override
- protected Parameter getParameterToEdit(FilterRepresentation rep) {
- if (rep instanceof FilterChanSatRepresentation) {
- FilterChanSatRepresentation csrep = (FilterChanSatRepresentation) rep;
- Parameter param = csrep.getFilterParameter(csrep.getParameterMode());
- if (param instanceof BasicParameterStyle) {
- param.setFilterView(EditorChanSat.this);
- }
- return param;
- }
- return null;
- }
-
- private FilterChanSatRepresentation getChanSatRep() {
- FilterRepresentation rep = getLocalRepresentation();
- if (rep != null
- && rep instanceof FilterChanSatRepresentation) {
- FilterChanSatRepresentation csrep = (FilterChanSatRepresentation) rep;
- return csrep;
- }
- return null;
- }
-
- @Override
- public void computeIcon(int n, RenderingRequestCaller caller) {
- FilterChanSatRepresentation rep = getChanSatRep();
- if (rep == null) return;
- rep = (FilterChanSatRepresentation) rep.copy();
- ImagePreset preset = new ImagePreset();
- preset.addFilter(rep);
- Bitmap src = MasterImage.getImage().getThumbnailBitmap();
- RenderingRequest.post(null, src, preset, RenderingRequest.STYLE_ICON_RENDERING,
- caller);
- }
-
- protected void selectMenuItem(MenuItem item) {
- if (getLocalRepresentation() != null
- && getLocalRepresentation() instanceof FilterChanSatRepresentation) {
- FilterChanSatRepresentation csrep =
- (FilterChanSatRepresentation) getLocalRepresentation();
-
- switchToMode(csrep, getParameterIndex(item.getItemId()), item.getTitle().toString());
-
- }
- }
-
- protected void switchToMode(FilterChanSatRepresentation csrep, int mode, String title) {
- csrep.setParameterMode(mode);
- mCurrentlyEditing = title;
- mButton.setText(mCurrentlyEditing);
- {
- Parameter param = getParameterToEdit(csrep);
-
- control(param, mEditControl);
- }
- updateSeekBar(csrep);
- mView.invalidate();
- }
-
- @Override
- public void swapLeft(MenuItem item) {
- super.swapLeft(item);
- mButton.setTranslationX(0);
- mButton.animate().translationX(mButton.getWidth()).setDuration(SwapButton.ANIM_DURATION);
- Runnable updateButton = new Runnable() {
- @Override
- public void run() {
- mButton.animate().cancel();
- mButton.setTranslationX(0);
- }
- };
- mHandler.postDelayed(updateButton, SwapButton.ANIM_DURATION);
- selectMenuItem(item);
- }
-
- @Override
- public void swapRight(MenuItem item) {
- super.swapRight(item);
- mButton.setTranslationX(0);
- mButton.animate().translationX(-mButton.getWidth()).setDuration(SwapButton.ANIM_DURATION);
- Runnable updateButton = new Runnable() {
- @Override
- public void run() {
- mButton.animate().cancel();
- mButton.setTranslationX(0);
- }
- };
- mHandler.postDelayed(updateButton, SwapButton.ANIM_DURATION);
- selectMenuItem(item);
- }
-}
diff --git a/src/com/android/gallery3d/filtershow/editors/EditorCrop.java b/src/com/android/gallery3d/filtershow/editors/EditorCrop.java
deleted file mode 100644
index 511d4ff87..000000000
--- a/src/com/android/gallery3d/filtershow/editors/EditorCrop.java
+++ /dev/null
@@ -1,168 +0,0 @@
-/*
- * Copyright (C) 2013 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.gallery3d.filtershow.editors;
-
-import android.content.Context;
-import android.util.Log;
-import android.util.SparseArray;
-import android.view.MenuItem;
-import android.view.View;
-import android.view.View.OnClickListener;
-import android.widget.Button;
-import android.widget.FrameLayout;
-import android.widget.LinearLayout;
-import android.widget.PopupMenu;
-
-import com.android.gallery3d.R;
-import com.android.gallery3d.filtershow.filters.FilterCropRepresentation;
-import com.android.gallery3d.filtershow.filters.FilterRepresentation;
-import com.android.gallery3d.filtershow.imageshow.ImageCrop;
-import com.android.gallery3d.filtershow.imageshow.MasterImage;
-
-public class EditorCrop extends Editor implements EditorInfo {
- public static final String TAG = EditorCrop.class.getSimpleName();
- public static final int ID = R.id.editorCrop;
-
- // Holder for an aspect ratio it's string id
- protected static final class AspectInfo {
- int mAspectX;
- int mAspectY;
- int mStringId;
- AspectInfo(int stringID, int x, int y) {
- mStringId = stringID;
- mAspectX = x;
- mAspectY = y;
- }
- };
-
- // Mapping from menu id to aspect ratio
- protected static final SparseArray<AspectInfo> sAspects;
- static {
- sAspects = new SparseArray<AspectInfo>();
- sAspects.put(R.id.crop_menu_1to1, new AspectInfo(R.string.aspect1to1_effect, 1, 1));
- sAspects.put(R.id.crop_menu_4to3, new AspectInfo(R.string.aspect4to3_effect, 4, 3));
- sAspects.put(R.id.crop_menu_3to4, new AspectInfo(R.string.aspect3to4_effect, 3, 4));
- sAspects.put(R.id.crop_menu_5to7, new AspectInfo(R.string.aspect5to7_effect, 5, 7));
- sAspects.put(R.id.crop_menu_7to5, new AspectInfo(R.string.aspect7to5_effect, 7, 5));
- sAspects.put(R.id.crop_menu_none, new AspectInfo(R.string.aspectNone_effect, 0, 0));
- sAspects.put(R.id.crop_menu_original, new AspectInfo(R.string.aspectOriginal_effect, 0, 0));
- }
-
- protected ImageCrop mImageCrop;
- private String mAspectString = "";
-
- public EditorCrop() {
- super(ID);
- mChangesGeometry = true;
- }
-
- @Override
- public void createEditor(Context context, FrameLayout frameLayout) {
- super.createEditor(context, frameLayout);
- if (mImageCrop == null) {
- mImageCrop = new ImageCrop(context);
- }
- mView = mImageShow = mImageCrop;
- mImageCrop.setEditor(this);
- }
-
- @Override
- public void reflectCurrentFilter() {
- MasterImage master = MasterImage.getImage();
- master.setCurrentFilterRepresentation(master.getPreset()
- .getFilterWithSerializationName(FilterCropRepresentation.SERIALIZATION_NAME));
- super.reflectCurrentFilter();
- FilterRepresentation rep = getLocalRepresentation();
- if (rep == null || rep instanceof FilterCropRepresentation) {
- mImageCrop.setFilterCropRepresentation((FilterCropRepresentation) rep);
- } else {
- Log.w(TAG, "Could not reflect current filter, not of type: "
- + FilterCropRepresentation.class.getSimpleName());
- }
- mImageCrop.invalidate();
- }
-
- @Override
- public void finalApplyCalled() {
- commitLocalRepresentation(mImageCrop.getFinalRepresentation());
- }
-
- @Override
- public void openUtilityPanel(final LinearLayout accessoryViewList) {
- Button view = (Button) accessoryViewList.findViewById(R.id.applyEffect);
- view.setText(mContext.getString(R.string.crop));
- view.setOnClickListener(new OnClickListener() {
- @Override
- public void onClick(View arg0) {
- showPopupMenu(accessoryViewList);
- }
- });
- }
-
- private void changeCropAspect(int itemId) {
- AspectInfo info = sAspects.get(itemId);
- if (info == null) {
- throw new IllegalArgumentException("Invalid resource ID: " + itemId);
- }
- if (itemId == R.id.crop_menu_original) {
- mImageCrop.applyOriginalAspect();
- } else if (itemId == R.id.crop_menu_none) {
- mImageCrop.applyFreeAspect();
- } else {
- mImageCrop.applyAspect(info.mAspectX, info.mAspectY);
- }
- setAspectString(mContext.getString(info.mStringId));
- }
-
- private void showPopupMenu(LinearLayout accessoryViewList) {
- final Button button = (Button) accessoryViewList.findViewById(R.id.applyEffect);
- final PopupMenu popupMenu = new PopupMenu(mImageShow.getActivity(), button);
- popupMenu.getMenuInflater().inflate(R.menu.filtershow_menu_crop, popupMenu.getMenu());
- popupMenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
- @Override
- public boolean onMenuItemClick(MenuItem item) {
- changeCropAspect(item.getItemId());
- return true;
- }
- });
- popupMenu.show();
- }
-
- @Override
- public boolean showsSeekBar() {
- return false;
- }
-
- @Override
- public int getTextId() {
- return R.string.crop;
- }
-
- @Override
- public int getOverlayId() {
- return R.drawable.filtershow_button_geometry_crop;
- }
-
- @Override
- public boolean getOverlayOnly() {
- return true;
- }
-
- private void setAspectString(String s) {
- mAspectString = s;
- }
-}
diff --git a/src/com/android/gallery3d/filtershow/editors/EditorCurves.java b/src/com/android/gallery3d/filtershow/editors/EditorCurves.java
deleted file mode 100644
index 83fbced79..000000000
--- a/src/com/android/gallery3d/filtershow/editors/EditorCurves.java
+++ /dev/null
@@ -1,56 +0,0 @@
-/*
- * Copyright (C) 2012 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.gallery3d.filtershow.editors;
-
-import android.content.Context;
-import android.widget.FrameLayout;
-
-import com.android.gallery3d.R;
-import com.android.gallery3d.filtershow.filters.FilterCurvesRepresentation;
-import com.android.gallery3d.filtershow.filters.FilterRepresentation;
-import com.android.gallery3d.filtershow.imageshow.ImageCurves;
-
-public class EditorCurves extends Editor {
- public static final int ID = R.id.imageCurves;
- ImageCurves mImageCurves;
-
- public EditorCurves() {
- super(ID);
- }
-
- @Override
- public void createEditor(Context context, FrameLayout frameLayout) {
- super.createEditor(context, frameLayout);
- mView = mImageShow = mImageCurves = new ImageCurves(context);
- mImageCurves.setEditor(this);
- }
-
- @Override
- public void reflectCurrentFilter() {
- super.reflectCurrentFilter();
- FilterRepresentation rep = getLocalRepresentation();
- if (rep != null && getLocalRepresentation() instanceof FilterCurvesRepresentation) {
- FilterCurvesRepresentation drawRep = (FilterCurvesRepresentation) rep;
- mImageCurves.setFilterDrawRepresentation(drawRep);
- }
- }
-
- @Override
- public boolean showsSeekBar() {
- return false;
- }
-}
diff --git a/src/com/android/gallery3d/filtershow/editors/EditorDraw.java b/src/com/android/gallery3d/filtershow/editors/EditorDraw.java
deleted file mode 100644
index 4b09051e2..000000000
--- a/src/com/android/gallery3d/filtershow/editors/EditorDraw.java
+++ /dev/null
@@ -1,158 +0,0 @@
-/*
- * Copyright (C) 2013 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.gallery3d.filtershow.editors;
-
-import android.app.Dialog;
-import android.content.Context;
-import android.view.MenuItem;
-import android.view.View;
-import android.view.View.OnClickListener;
-import android.view.WindowManager.LayoutParams;
-import android.widget.Button;
-import android.widget.FrameLayout;
-import android.widget.LinearLayout;
-import android.widget.PopupMenu;
-import android.widget.SeekBar;
-
-import com.android.gallery3d.R;
-import com.android.gallery3d.filtershow.FilterShowActivity;
-import com.android.gallery3d.filtershow.colorpicker.ColorGridDialog;
-import com.android.gallery3d.filtershow.colorpicker.RGBListener;
-import com.android.gallery3d.filtershow.filters.FilterDrawRepresentation;
-import com.android.gallery3d.filtershow.filters.FilterRepresentation;
-import com.android.gallery3d.filtershow.filters.ImageFilterDraw;
-import com.android.gallery3d.filtershow.imageshow.ImageDraw;
-
-public class EditorDraw extends Editor {
- private static final String LOGTAG = "EditorDraw";
- public static final int ID = R.id.editorDraw;
- public ImageDraw mImageDraw;
-
- public EditorDraw() {
- super(ID);
- }
-
- @Override
- public void createEditor(Context context, FrameLayout frameLayout) {
- super.createEditor(context, frameLayout);
- mView = mImageShow = mImageDraw = new ImageDraw(context);
- mImageDraw.setEditor(this);
-
- }
-
- @Override
- public void reflectCurrentFilter() {
- super.reflectCurrentFilter();
- FilterRepresentation rep = getLocalRepresentation();
-
- if (rep != null && getLocalRepresentation() instanceof FilterDrawRepresentation) {
- FilterDrawRepresentation drawRep = (FilterDrawRepresentation) getLocalRepresentation();
- mImageDraw.setFilterDrawRepresentation(drawRep);
- }
- }
-
- @Override
- public void openUtilityPanel(final LinearLayout accessoryViewList) {
- Button view = (Button) accessoryViewList.findViewById(R.id.applyEffect);
- view.setText(mContext.getString(R.string.draw_style));
- view.setOnClickListener(new OnClickListener() {
-
- @Override
- public void onClick(View arg0) {
- showPopupMenu(accessoryViewList);
- }
- });
- }
-
- @Override
- public boolean showsSeekBar() {
- return false;
- }
-
- private void showPopupMenu(LinearLayout accessoryViewList) {
- final Button button = (Button) accessoryViewList.findViewById(
- R.id.applyEffect);
- if (button == null) {
- return;
- }
- final PopupMenu popupMenu = new PopupMenu(mImageShow.getActivity(), button);
- popupMenu.getMenuInflater().inflate(R.menu.filtershow_menu_draw, popupMenu.getMenu());
- popupMenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
-
- @Override
- public boolean onMenuItemClick(MenuItem item) {
- ImageFilterDraw filter = (ImageFilterDraw) mImageShow.getCurrentFilter();
- if (item.getItemId() == R.id.draw_menu_color) {
- showColorGrid(item);
- } else if (item.getItemId() == R.id.draw_menu_size) {
- showSizeDialog(item);
- } else if (item.getItemId() == R.id.draw_menu_style_brush_marker) {
- ImageDraw idraw = (ImageDraw) mImageShow;
- idraw.setStyle(ImageFilterDraw.BRUSH_STYLE_MARKER);
- } else if (item.getItemId() == R.id.draw_menu_style_brush_spatter) {
- ImageDraw idraw = (ImageDraw) mImageShow;
- idraw.setStyle(ImageFilterDraw.BRUSH_STYLE_SPATTER);
- } else if (item.getItemId() == R.id.draw_menu_style_line) {
- ImageDraw idraw = (ImageDraw) mImageShow;
- idraw.setStyle(ImageFilterDraw.SIMPLE_STYLE);
- } else if (item.getItemId() == R.id.draw_menu_clear) {
- ImageDraw idraw = (ImageDraw) mImageShow;
- idraw.resetParameter();
- commitLocalRepresentation();
- }
- mView.invalidate();
- return true;
- }
- });
- popupMenu.show();
- }
-
- public void showSizeDialog(final MenuItem item) {
- FilterShowActivity ctx = mImageShow.getActivity();
- final Dialog dialog = new Dialog(ctx);
- dialog.setTitle(R.string.draw_size_title);
- dialog.setContentView(R.layout.filtershow_draw_size);
- final SeekBar bar = (SeekBar) dialog.findViewById(R.id.sizeSeekBar);
- ImageDraw idraw = (ImageDraw) mImageShow;
- bar.setProgress(idraw.getSize());
- Button button = (Button) dialog.findViewById(R.id.sizeAcceptButton);
- button.setOnClickListener(new OnClickListener() {
-
- @Override
- public void onClick(View arg0) {
- int p = bar.getProgress();
- ImageDraw idraw = (ImageDraw) mImageShow;
- idraw.setSize(p + 1);
- dialog.dismiss();
- }
- });
- dialog.show();
- }
-
- public void showColorGrid(final MenuItem item) {
- RGBListener cl = new RGBListener() {
- @Override
- public void setColor(int rgb) {
- ImageDraw idraw = (ImageDraw) mImageShow;
- idraw.setColor(rgb);
- }
- };
- ColorGridDialog cpd = new ColorGridDialog(mImageShow.getActivity(), cl);
- cpd.show();
- LayoutParams params = cpd.getWindow().getAttributes();
- }
-}
diff --git a/src/com/android/gallery3d/filtershow/editors/EditorGrad.java b/src/com/android/gallery3d/filtershow/editors/EditorGrad.java
deleted file mode 100644
index f427ccbd8..000000000
--- a/src/com/android/gallery3d/filtershow/editors/EditorGrad.java
+++ /dev/null
@@ -1,315 +0,0 @@
-/*
- * Copyright (C) 2013 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package com.android.gallery3d.filtershow.editors;
-
-import android.content.Context;
-import android.view.MenuItem;
-import android.view.View;
-import android.view.View.OnClickListener;
-import android.widget.Button;
-import android.widget.FrameLayout;
-import android.widget.LinearLayout;
-import android.widget.PopupMenu;
-import android.widget.SeekBar;
-import android.widget.SeekBar.OnSeekBarChangeListener;
-import android.widget.ToggleButton;
-
-import com.android.gallery3d.R;
-import com.android.gallery3d.filtershow.controller.Control;
-import com.android.gallery3d.filtershow.controller.FilterView;
-import com.android.gallery3d.filtershow.controller.Parameter;
-import com.android.gallery3d.filtershow.controller.ParameterActionAndInt;
-import com.android.gallery3d.filtershow.filters.FilterGradRepresentation;
-import com.android.gallery3d.filtershow.filters.FilterRepresentation;
-import com.android.gallery3d.filtershow.imageshow.ImageGrad;
-import com.android.gallery3d.filtershow.imageshow.MasterImage;
-
-public class EditorGrad extends ParametricEditor
- implements OnSeekBarChangeListener, ParameterActionAndInt {
- private static final String LOGTAG = "EditorGrad";
- public static final int ID = R.id.editorGrad;
- PopupMenu mPopupMenu;
- ToggleButton mAddModeButton;
- String mEffectName = "";
- private static final int MODE_BRIGHTNESS = FilterGradRepresentation.PARAM_BRIGHTNESS;
- private static final int MODE_SATURATION = FilterGradRepresentation.PARAM_SATURATION;
- private static final int MODE_CONTRAST = FilterGradRepresentation.PARAM_CONTRAST;
- private static final int ADD_ICON = R.drawable.ic_grad_add;
- private static final int DEL_ICON = R.drawable.ic_grad_del;
- private int mSliderMode = MODE_BRIGHTNESS;
- ImageGrad mImageGrad;
-
- public EditorGrad() {
- super(ID, R.layout.filtershow_grad_editor, R.id.gradEditor);
- }
-
- @Override
- public void createEditor(Context context, FrameLayout frameLayout) {
- super.createEditor(context, frameLayout);
- mImageGrad = (ImageGrad) mImageShow;
- mImageGrad.setEditor(this);
-
- }
-
- public void clearAddMode() {
- mAddModeButton.setChecked(false);
- FilterRepresentation tmpRep = getLocalRepresentation();
- if (tmpRep instanceof FilterGradRepresentation) {
- updateMenuItems((FilterGradRepresentation) tmpRep);
- }
- }
-
- @Override
- public void reflectCurrentFilter() {
- super.reflectCurrentFilter();
- FilterRepresentation tmpRep = getLocalRepresentation();
- if (tmpRep instanceof FilterGradRepresentation) {
- FilterGradRepresentation rep = (FilterGradRepresentation) tmpRep;
- boolean f = rep.showParameterValue();
-
- mImageGrad.setRepresentation(rep);
- }
- }
-
- public void updateSeekBar(FilterGradRepresentation rep) {
- mControl.updateUI();
- }
-
- @Override
- public void onProgressChanged(SeekBar sbar, int progress, boolean arg2) {
- FilterRepresentation tmpRep = getLocalRepresentation();
- if (tmpRep instanceof FilterGradRepresentation) {
- FilterGradRepresentation rep = (FilterGradRepresentation) tmpRep;
- int min = rep.getParameterMin(mSliderMode);
- int value = progress + min;
- rep.setParameter(mSliderMode, value);
- mView.invalidate();
- commitLocalRepresentation();
- }
- }
-
- @Override
- public void openUtilityPanel(final LinearLayout accessoryViewList) {
- Button view = (Button) accessoryViewList.findViewById(R.id.applyEffect);
- view.setText(mContext.getString(R.string.editor_grad_brightness));
- view.setOnClickListener(new OnClickListener() {
- @Override
- public void onClick(View arg0) {
- showPopupMenu(accessoryViewList);
- }
- });
-
- setUpPopupMenu(view);
- setEffectName();
- }
-
- private void updateMenuItems(FilterGradRepresentation rep) {
- int n = rep.getNumberOfBands();
- }
-
- public void setEffectName() {
- if (mPopupMenu != null) {
- MenuItem item = mPopupMenu.getMenu().findItem(R.id.editor_grad_brightness);
- mEffectName = item.getTitle().toString();
- }
- }
-
- private void showPopupMenu(LinearLayout accessoryViewList) {
- Button button = (Button) accessoryViewList.findViewById(R.id.applyEffect);
- if (button == null) {
- return;
- }
-
- if (mPopupMenu == null) {
- setUpPopupMenu(button);
- }
- mPopupMenu.show();
- }
-
- private void setUpPopupMenu(Button button) {
- mPopupMenu = new PopupMenu(mImageShow.getActivity(), button);
- mPopupMenu.getMenuInflater()
- .inflate(R.menu.filtershow_menu_grad, mPopupMenu.getMenu());
- FilterGradRepresentation rep = (FilterGradRepresentation) getLocalRepresentation();
- if (rep == null) {
- return;
- }
- updateMenuItems(rep);
- hackFixStrings(mPopupMenu.getMenu());
- setEffectName();
- updateText();
-
- mPopupMenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
- @Override
- public boolean onMenuItemClick(MenuItem item) {
- FilterRepresentation tmpRep = getLocalRepresentation();
-
- if (tmpRep instanceof FilterGradRepresentation) {
- FilterGradRepresentation rep = (FilterGradRepresentation) tmpRep;
- int cmdID = item.getItemId();
- switch (cmdID) {
- case R.id.editor_grad_brightness:
- mSliderMode = MODE_BRIGHTNESS;
- mEffectName = item.getTitle().toString();
- break;
- case R.id.editor_grad_contrast:
- mSliderMode = MODE_CONTRAST;
- mEffectName = item.getTitle().toString();
- break;
- case R.id.editor_grad_saturation:
- mSliderMode = MODE_SATURATION;
- mEffectName = item.getTitle().toString();
- break;
- }
- updateMenuItems(rep);
- updateSeekBar(rep);
-
- commitLocalRepresentation();
- mView.invalidate();
- }
- return true;
- }
- });
- }
-
- @Override
- public String calculateUserMessage(Context context, String effectName, Object parameterValue) {
- FilterGradRepresentation rep = getGradRepresentation();
- if (rep == null) {
- return mEffectName;
- }
- int val = rep.getParameter(mSliderMode);
- return mEffectName.toUpperCase() + ((val > 0) ? " +" : " ") + val;
- }
-
- private FilterGradRepresentation getGradRepresentation() {
- FilterRepresentation tmpRep = getLocalRepresentation();
- if (tmpRep instanceof FilterGradRepresentation) {
- return (FilterGradRepresentation) tmpRep;
- }
- return null;
- }
-
- @Override
- public int getMaximum() {
- FilterGradRepresentation rep = getGradRepresentation();
- if (rep == null) {
- return 0;
- }
- return rep.getParameterMax(mSliderMode);
- }
-
- @Override
- public int getMinimum() {
- FilterGradRepresentation rep = getGradRepresentation();
- if (rep == null) {
- return 0;
- }
- return rep.getParameterMin(mSliderMode);
- }
-
- @Override
- public int getDefaultValue() {
- return 0;
- }
-
- @Override
- public int getValue() {
- FilterGradRepresentation rep = getGradRepresentation();
- if (rep == null) {
- return 0;
- }
- return rep.getParameter(mSliderMode);
- }
-
- @Override
- public String getValueString() {
- return null;
- }
-
- @Override
- public void setValue(int value) {
- FilterGradRepresentation rep = getGradRepresentation();
- if (rep == null) {
- return;
- }
- rep.setParameter(mSliderMode, value);
- }
-
- @Override
- public String getParameterName() {
- return mEffectName;
- }
-
- @Override
- public String getParameterType() {
- return sParameterType;
- }
-
- @Override
- public void setController(Control c) {
-
- }
-
- @Override
- public void fireLeftAction() {
- FilterGradRepresentation rep = getGradRepresentation();
- if (rep == null) {
- return;
- }
- rep.addBand(MasterImage.getImage().getOriginalBounds());
- updateMenuItems(rep);
- updateSeekBar(rep);
-
- commitLocalRepresentation();
- mView.invalidate();
- }
-
- @Override
- public int getLeftIcon() {
- return ADD_ICON;
- }
-
- @Override
- public void fireRightAction() {
- FilterGradRepresentation rep = getGradRepresentation();
- if (rep == null) {
- return;
- }
- rep.deleteCurrentBand();
-
- updateMenuItems(rep);
- updateSeekBar(rep);
- commitLocalRepresentation();
- mView.invalidate();
- }
-
- @Override
- public int getRightIcon() {
- return DEL_ICON;
- }
-
- @Override
- public void setFilterView(FilterView editor) {
-
- }
-
- @Override
- public void copyFrom(Parameter src) {
-
- }
-
-}
diff --git a/src/com/android/gallery3d/filtershow/editors/EditorInfo.java b/src/com/android/gallery3d/filtershow/editors/EditorInfo.java
deleted file mode 100644
index 75afe49c2..000000000
--- a/src/com/android/gallery3d/filtershow/editors/EditorInfo.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
- * Copyright (C) 2013 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.gallery3d.filtershow.editors;
-
-public interface EditorInfo {
- public int getTextId();
- public int getOverlayId();
- public boolean getOverlayOnly();
-}
diff --git a/src/com/android/gallery3d/filtershow/editors/EditorMirror.java b/src/com/android/gallery3d/filtershow/editors/EditorMirror.java
deleted file mode 100644
index d6d9ee75d..000000000
--- a/src/com/android/gallery3d/filtershow/editors/EditorMirror.java
+++ /dev/null
@@ -1,109 +0,0 @@
-/*
- * Copyright (C) 2013 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.gallery3d.filtershow.editors;
-
-import android.content.Context;
-import android.util.Log;
-import android.view.View;
-import android.view.View.OnClickListener;
-import android.widget.Button;
-import android.widget.FrameLayout;
-import android.widget.LinearLayout;
-
-import com.android.gallery3d.R;
-import com.android.gallery3d.filtershow.filters.FilterMirrorRepresentation;
-import com.android.gallery3d.filtershow.filters.FilterRepresentation;
-import com.android.gallery3d.filtershow.imageshow.ImageMirror;
-import com.android.gallery3d.filtershow.imageshow.MasterImage;
-
-public class EditorMirror extends Editor implements EditorInfo {
- public static final String TAG = EditorMirror.class.getSimpleName();
- public static final int ID = R.id.editorFlip;
- ImageMirror mImageMirror;
-
- public EditorMirror() {
- super(ID);
- mChangesGeometry = true;
- }
-
- @Override
- public void createEditor(Context context, FrameLayout frameLayout) {
- super.createEditor(context, frameLayout);
- if (mImageMirror == null) {
- mImageMirror = new ImageMirror(context);
- }
- mView = mImageShow = mImageMirror;
- mImageMirror.setEditor(this);
- }
-
- @Override
- public void reflectCurrentFilter() {
- MasterImage master = MasterImage.getImage();
- master.setCurrentFilterRepresentation(master.getPreset()
- .getFilterWithSerializationName(FilterMirrorRepresentation.SERIALIZATION_NAME));
- super.reflectCurrentFilter();
- FilterRepresentation rep = getLocalRepresentation();
- if (rep == null || rep instanceof FilterMirrorRepresentation) {
- mImageMirror.setFilterMirrorRepresentation((FilterMirrorRepresentation) rep);
- } else {
- Log.w(TAG, "Could not reflect current filter, not of type: "
- + FilterMirrorRepresentation.class.getSimpleName());
- }
- mImageMirror.invalidate();
- }
-
- @Override
- public void openUtilityPanel(final LinearLayout accessoryViewList) {
- final Button button = (Button) accessoryViewList.findViewById(R.id.applyEffect);
- button.setOnClickListener(new OnClickListener() {
- @Override
- public void onClick(View arg0) {
- mImageMirror.flip();
- }
- });
- }
-
- @Override
- public void finalApplyCalled() {
- commitLocalRepresentation(mImageMirror.getFinalRepresentation());
- }
-
- @Override
- public int getTextId() {
- return R.string.mirror;
- }
-
- @Override
- public int getOverlayId() {
- return R.drawable.filtershow_button_geometry_flip;
- }
-
- @Override
- public boolean getOverlayOnly() {
- return true;
- }
-
- @Override
- public boolean showsSeekBar() {
- return false;
- }
-
- @Override
- public boolean showsPopupIndicator() {
- return false;
- }
-}
diff --git a/src/com/android/gallery3d/filtershow/editors/EditorPanel.java b/src/com/android/gallery3d/filtershow/editors/EditorPanel.java
deleted file mode 100644
index bc4ca6ab6..000000000
--- a/src/com/android/gallery3d/filtershow/editors/EditorPanel.java
+++ /dev/null
@@ -1,143 +0,0 @@
-/*
- * Copyright (C) 2013 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.gallery3d.filtershow.editors;
-
-import android.app.Activity;
-import android.os.Bundle;
-import android.support.v4.app.Fragment;
-import android.support.v4.app.FragmentTransaction;
-import android.view.LayoutInflater;
-import android.view.View;
-import android.view.ViewGroup;
-import android.widget.Button;
-import android.widget.ImageButton;
-import android.widget.LinearLayout;
-import com.android.gallery3d.R;
-import com.android.gallery3d.filtershow.FilterShowActivity;
-import com.android.gallery3d.filtershow.history.HistoryManager;
-import com.android.gallery3d.filtershow.category.MainPanel;
-import com.android.gallery3d.filtershow.imageshow.MasterImage;
-import com.android.gallery3d.filtershow.state.StatePanel;
-
-public class EditorPanel extends Fragment {
-
- private static final String LOGTAG = "EditorPanel";
-
- private LinearLayout mMainView;
- private Editor mEditor;
- private int mEditorID;
-
- public void setEditor(int editor) {
- mEditorID = editor;
- }
-
- @Override
- public void onAttach(Activity activity) {
- super.onAttach(activity);
- FilterShowActivity filterShowActivity = (FilterShowActivity) activity;
- mEditor = filterShowActivity.getEditor(mEditorID);
- }
-
- public void cancelCurrentFilter() {
- MasterImage masterImage = MasterImage.getImage();
- HistoryManager adapter = masterImage.getHistory();
-
- int position = adapter.undo();
- masterImage.onHistoryItemClick(position);
- ((FilterShowActivity)getActivity()).invalidateViews();
- }
-
- @Override
- public View onCreateView(LayoutInflater inflater, ViewGroup container,
- Bundle savedInstanceState) {
- FilterShowActivity activity = (FilterShowActivity) getActivity();
- if (mMainView != null) {
- if (mMainView.getParent() != null) {
- ViewGroup parent = (ViewGroup) mMainView.getParent();
- parent.removeView(mMainView);
- }
- showImageStatePanel(activity.isShowingImageStatePanel());
- return mMainView;
- }
- mMainView = (LinearLayout) inflater.inflate(R.layout.filtershow_editor_panel, null);
-
- View actionControl = mMainView.findViewById(R.id.panelAccessoryViewList);
- View editControl = mMainView.findViewById(R.id.controlArea);
- ImageButton cancelButton = (ImageButton) mMainView.findViewById(R.id.cancelFilter);
- ImageButton applyButton = (ImageButton) mMainView.findViewById(R.id.applyFilter);
- Button editTitle = (Button) mMainView.findViewById(R.id.applyEffect);
- cancelButton.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- cancelCurrentFilter();
- FilterShowActivity activity = (FilterShowActivity) getActivity();
- activity.backToMain();
- }
- });
-
- Button toggleState = (Button) mMainView.findViewById(R.id.toggle_state);
- mEditor = activity.getEditor(mEditorID);
- if (mEditor != null) {
- mEditor.setUpEditorUI(actionControl, editControl, editTitle, toggleState);
- mEditor.reflectCurrentFilter();
- if (mEditor.useUtilityPanel()) {
- mEditor.openUtilityPanel((LinearLayout) actionControl);
- }
- }
- applyButton.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- FilterShowActivity activity = (FilterShowActivity) getActivity();
- mEditor.finalApplyCalled();
- activity.backToMain();
- }
- });
-
- showImageStatePanel(activity.isShowingImageStatePanel());
- return mMainView;
- }
-
- @Override
- public void onDetach() {
- if (mEditor != null) {
- mEditor.detach();
- }
- super.onDetach();
- }
-
- public void showImageStatePanel(boolean show) {
- if (mMainView.findViewById(R.id.state_panel_container) == null) {
- return;
- }
- FragmentTransaction transaction = getChildFragmentManager().beginTransaction();
- Fragment panel = getActivity().getSupportFragmentManager().findFragmentByTag(
- MainPanel.FRAGMENT_TAG);
- if (panel == null || panel instanceof MainPanel) {
- transaction.setCustomAnimations(android.R.anim.fade_in, android.R.anim.fade_out);
- }
- if (show) {
- StatePanel statePanel = new StatePanel();
- transaction.replace(R.id.state_panel_container, statePanel, StatePanel.FRAGMENT_TAG);
- } else {
- Fragment statePanel = getChildFragmentManager().findFragmentByTag(StatePanel.FRAGMENT_TAG);
- if (statePanel != null) {
- transaction.remove(statePanel);
- }
- }
- transaction.commit();
- }
-}
diff --git a/src/com/android/gallery3d/filtershow/editors/EditorRedEye.java b/src/com/android/gallery3d/filtershow/editors/EditorRedEye.java
deleted file mode 100644
index b0e88dd44..000000000
--- a/src/com/android/gallery3d/filtershow/editors/EditorRedEye.java
+++ /dev/null
@@ -1,65 +0,0 @@
-/*
- * Copyright (C) 2012 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.gallery3d.filtershow.editors;
-
-import android.content.Context;
-import android.widget.FrameLayout;
-
-import com.android.gallery3d.R;
-import com.android.gallery3d.filtershow.filters.FilterRedEyeRepresentation;
-import com.android.gallery3d.filtershow.filters.FilterRepresentation;
-import com.android.gallery3d.filtershow.imageshow.ImageRedEye;
-
-/**
- * The editor with no slider for filters without UI
- */
-public class EditorRedEye extends Editor {
- public static int ID = R.id.editorRedEye;
- private final String LOGTAG = "EditorRedEye";
- ImageRedEye mImageRedEyes;
-
- public EditorRedEye() {
- super(ID);
- }
-
- protected EditorRedEye(int id) {
- super(id);
- }
-
- @Override
- public void createEditor(Context context, FrameLayout frameLayout) {
- super.createEditor(context, frameLayout);
- mView = mImageShow = mImageRedEyes= new ImageRedEye(context);
- mImageRedEyes.setEditor(this);
- }
-
- @Override
- public void reflectCurrentFilter() {
- super.reflectCurrentFilter();
- FilterRepresentation rep = getLocalRepresentation();
- if (rep != null && getLocalRepresentation() instanceof FilterRedEyeRepresentation) {
- FilterRedEyeRepresentation redEyeRep = (FilterRedEyeRepresentation) rep;
-
- mImageRedEyes.setRepresentation(redEyeRep);
- }
- }
-
- @Override
- public boolean showsSeekBar() {
- return false;
- }
-}
diff --git a/src/com/android/gallery3d/filtershow/editors/EditorRotate.java b/src/com/android/gallery3d/filtershow/editors/EditorRotate.java
deleted file mode 100644
index 9452bf0c0..000000000
--- a/src/com/android/gallery3d/filtershow/editors/EditorRotate.java
+++ /dev/null
@@ -1,112 +0,0 @@
-/*
- * Copyright (C) 2013 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.gallery3d.filtershow.editors;
-
-import android.content.Context;
-import android.util.Log;
-import android.view.View;
-import android.view.View.OnClickListener;
-import android.widget.Button;
-import android.widget.FrameLayout;
-import android.widget.LinearLayout;
-
-import com.android.gallery3d.R;
-import com.android.gallery3d.filtershow.filters.FilterRepresentation;
-import com.android.gallery3d.filtershow.filters.FilterRotateRepresentation;
-import com.android.gallery3d.filtershow.imageshow.ImageRotate;
-import com.android.gallery3d.filtershow.imageshow.MasterImage;
-
-public class EditorRotate extends Editor implements EditorInfo {
- public static final String TAG = EditorRotate.class.getSimpleName();
- public static final int ID = R.id.editorRotate;
- ImageRotate mImageRotate;
-
- public EditorRotate() {
- super(ID);
- mChangesGeometry = true;
- }
-
- @Override
- public void createEditor(Context context, FrameLayout frameLayout) {
- super.createEditor(context, frameLayout);
- if (mImageRotate == null) {
- mImageRotate = new ImageRotate(context);
- }
- mView = mImageShow = mImageRotate;
- mImageRotate.setEditor(this);
- }
-
- @Override
- public void reflectCurrentFilter() {
- MasterImage master = MasterImage.getImage();
- master.setCurrentFilterRepresentation(master.getPreset()
- .getFilterWithSerializationName(FilterRotateRepresentation.SERIALIZATION_NAME));
- super.reflectCurrentFilter();
- FilterRepresentation rep = getLocalRepresentation();
- if (rep == null || rep instanceof FilterRotateRepresentation) {
- mImageRotate.setFilterRotateRepresentation((FilterRotateRepresentation) rep);
- } else {
- Log.w(TAG, "Could not reflect current filter, not of type: "
- + FilterRotateRepresentation.class.getSimpleName());
- }
- mImageRotate.invalidate();
- }
-
- @Override
- public void openUtilityPanel(final LinearLayout accessoryViewList) {
- final Button button = (Button) accessoryViewList.findViewById(R.id.applyEffect);
- button.setOnClickListener(new OnClickListener() {
- @Override
- public void onClick(View arg0) {
- mImageRotate.rotate();
- String displayVal = mContext.getString(getTextId()) + " "
- + mImageRotate.getLocalValue();
- button.setText(displayVal);
- }
- });
- }
-
- @Override
- public void finalApplyCalled() {
- commitLocalRepresentation(mImageRotate.getFinalRepresentation());
- }
-
- @Override
- public int getTextId() {
- return R.string.rotate;
- }
-
- @Override
- public int getOverlayId() {
- return R.drawable.filtershow_button_geometry_rotate;
- }
-
- @Override
- public boolean getOverlayOnly() {
- return true;
- }
-
- @Override
- public boolean showsSeekBar() {
- return false;
- }
-
- @Override
- public boolean showsPopupIndicator() {
- return false;
- }
-}
diff --git a/src/com/android/gallery3d/filtershow/editors/EditorStraighten.java b/src/com/android/gallery3d/filtershow/editors/EditorStraighten.java
deleted file mode 100644
index ff84ba8f9..000000000
--- a/src/com/android/gallery3d/filtershow/editors/EditorStraighten.java
+++ /dev/null
@@ -1,103 +0,0 @@
-/*
- * Copyright (C) 2013 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.gallery3d.filtershow.editors;
-
-import android.content.Context;
-import android.util.Log;
-import android.widget.FrameLayout;
-
-import com.android.gallery3d.R;
-import com.android.gallery3d.filtershow.filters.FilterRepresentation;
-import com.android.gallery3d.filtershow.filters.FilterStraightenRepresentation;
-import com.android.gallery3d.filtershow.imageshow.ImageStraighten;
-import com.android.gallery3d.filtershow.imageshow.MasterImage;
-
-public class EditorStraighten extends Editor implements EditorInfo {
- public static final String TAG = EditorStraighten.class.getSimpleName();
- public static final int ID = R.id.editorStraighten;
- ImageStraighten mImageStraighten;
-
- public EditorStraighten() {
- super(ID);
- mShowParameter = SHOW_VALUE_INT;
- mChangesGeometry = true;
- }
-
- @Override
- public String calculateUserMessage(Context context, String effectName, Object parameterValue) {
- String apply = context.getString(R.string.apply_effect);
- apply += " " + effectName;
- return apply.toUpperCase();
- }
-
- @Override
- public void createEditor(Context context, FrameLayout frameLayout) {
- super.createEditor(context, frameLayout);
- if (mImageStraighten == null) {
- mImageStraighten = new ImageStraighten(context);
- }
- mView = mImageShow = mImageStraighten;
- mImageStraighten.setEditor(this);
- }
-
- @Override
- public void reflectCurrentFilter() {
- MasterImage master = MasterImage.getImage();
- master.setCurrentFilterRepresentation(master.getPreset().getFilterWithSerializationName(
- FilterStraightenRepresentation.SERIALIZATION_NAME));
- super.reflectCurrentFilter();
- FilterRepresentation rep = getLocalRepresentation();
- if (rep == null || rep instanceof FilterStraightenRepresentation) {
- mImageStraighten
- .setFilterStraightenRepresentation((FilterStraightenRepresentation) rep);
- } else {
- Log.w(TAG, "Could not reflect current filter, not of type: "
- + FilterStraightenRepresentation.class.getSimpleName());
- }
- mImageStraighten.invalidate();
- }
-
- @Override
- public void finalApplyCalled() {
- commitLocalRepresentation(mImageStraighten.getFinalRepresentation());
- }
-
- @Override
- public int getTextId() {
- return R.string.straighten;
- }
-
- @Override
- public int getOverlayId() {
- return R.drawable.filtershow_button_geometry_straighten;
- }
-
- @Override
- public boolean getOverlayOnly() {
- return true;
- }
-
- @Override
- public boolean showsSeekBar() {
- return false;
- }
-
- @Override
- public boolean showsPopupIndicator() {
- return false;
- }
-}
diff --git a/src/com/android/gallery3d/filtershow/editors/EditorTinyPlanet.java b/src/com/android/gallery3d/filtershow/editors/EditorTinyPlanet.java
deleted file mode 100644
index 9376fbef0..000000000
--- a/src/com/android/gallery3d/filtershow/editors/EditorTinyPlanet.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
- * Copyright (C) 2012 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.gallery3d.filtershow.editors;
-
-import android.content.Context;
-import android.widget.FrameLayout;
-
-import com.android.gallery3d.R;
-import com.android.gallery3d.filtershow.filters.FilterRepresentation;
-import com.android.gallery3d.filtershow.filters.FilterTinyPlanetRepresentation;
-import com.android.gallery3d.filtershow.imageshow.ImageTinyPlanet;
-
-public class EditorTinyPlanet extends BasicEditor {
- public static final int ID = R.id.tinyPlanetEditor;
- private static final String LOGTAG = "EditorTinyPlanet";
- ImageTinyPlanet mImageTinyPlanet;
-
- public EditorTinyPlanet() {
- super(ID, R.layout.filtershow_tiny_planet_editor, R.id.imageTinyPlanet);
- }
-
- @Override
- public void createEditor(Context context, FrameLayout frameLayout) {
- super.createEditor(context, frameLayout);
- mImageTinyPlanet = (ImageTinyPlanet) mImageShow;
- mImageTinyPlanet.setEditor(this);
- }
-
- @Override
- public void reflectCurrentFilter() {
- super.reflectCurrentFilter();
- FilterRepresentation rep = getLocalRepresentation();
- if (rep != null && rep instanceof FilterTinyPlanetRepresentation) {
- FilterTinyPlanetRepresentation drawRep = (FilterTinyPlanetRepresentation) rep;
- mImageTinyPlanet.setRepresentation(drawRep);
- }
- }
-
- public void updateUI() {
- if (mControl != null) {
- mControl.updateUI();
- }
- }
-}
diff --git a/src/com/android/gallery3d/filtershow/editors/EditorVignette.java b/src/com/android/gallery3d/filtershow/editors/EditorVignette.java
deleted file mode 100644
index 7127b2188..000000000
--- a/src/com/android/gallery3d/filtershow/editors/EditorVignette.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
- * Copyright (C) 2012 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.gallery3d.filtershow.editors;
-
-import android.content.Context;
-import android.widget.FrameLayout;
-
-import com.android.gallery3d.R;
-import com.android.gallery3d.filtershow.filters.FilterRepresentation;
-import com.android.gallery3d.filtershow.filters.FilterVignetteRepresentation;
-import com.android.gallery3d.filtershow.imageshow.ImageVignette;
-
-public class EditorVignette extends ParametricEditor {
- public static final int ID = R.id.vignetteEditor;
- private static final String LOGTAG = "EditorVignettePlanet";
- ImageVignette mImageVignette;
-
- public EditorVignette() {
- super(ID, R.layout.filtershow_vignette_editor, R.id.imageVignette);
- }
-
- @Override
- public void createEditor(Context context, FrameLayout frameLayout) {
- super.createEditor(context, frameLayout);
- mImageVignette = (ImageVignette) mImageShow;
- mImageVignette.setEditor(this);
- }
-
- @Override
- public void reflectCurrentFilter() {
- super.reflectCurrentFilter();
-
- FilterRepresentation rep = getLocalRepresentation();
- if (rep != null && getLocalRepresentation() instanceof FilterVignetteRepresentation) {
- FilterVignetteRepresentation drawRep = (FilterVignetteRepresentation) rep;
- mImageVignette.setRepresentation(drawRep);
- }
- }
-}
diff --git a/src/com/android/gallery3d/filtershow/editors/EditorZoom.java b/src/com/android/gallery3d/filtershow/editors/EditorZoom.java
deleted file mode 100644
index ea8e3d140..000000000
--- a/src/com/android/gallery3d/filtershow/editors/EditorZoom.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
- * Copyright (C) 2012 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.gallery3d.filtershow.editors;
-
-import com.android.gallery3d.R;
-
-public class EditorZoom extends BasicEditor {
- public static final int ID = R.id.imageZoom;
-
- public EditorZoom() {
- super(ID, R.layout.filtershow_zoom_editor,R.id.imageZoom);
- }
-}
diff --git a/src/com/android/gallery3d/filtershow/editors/ImageOnlyEditor.java b/src/com/android/gallery3d/filtershow/editors/ImageOnlyEditor.java
deleted file mode 100644
index d4e66edf8..000000000
--- a/src/com/android/gallery3d/filtershow/editors/ImageOnlyEditor.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
- * Copyright (C) 2012 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.gallery3d.filtershow.editors;
-
-import android.content.Context;
-import android.widget.FrameLayout;
-
-import com.android.gallery3d.R;
-import com.android.gallery3d.filtershow.imageshow.ImageShow;
-
-/**
- * The editor with no slider for filters without UI
- */
-public class ImageOnlyEditor extends Editor {
- public final static int ID = R.id.imageOnlyEditor;
- private final String LOGTAG = "ImageOnlyEditor";
-
- public ImageOnlyEditor() {
- super(ID);
- }
-
- protected ImageOnlyEditor(int id) {
- super(id);
- }
-
- public boolean useUtilityPanel() {
- return false;
- }
-
- @Override
- public void createEditor(Context context, FrameLayout frameLayout) {
- super.createEditor(context, frameLayout);
- mView = mImageShow = new ImageShow(context);
- }
-
-}
diff --git a/src/com/android/gallery3d/filtershow/editors/ParametricEditor.java b/src/com/android/gallery3d/filtershow/editors/ParametricEditor.java
deleted file mode 100644
index 9ec858ca5..000000000
--- a/src/com/android/gallery3d/filtershow/editors/ParametricEditor.java
+++ /dev/null
@@ -1,206 +0,0 @@
-/*
- * Copyright (C) 2013 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.gallery3d.filtershow.editors;
-
-import android.content.Context;
-import android.graphics.Point;
-import android.util.Log;
-import android.view.View;
-import android.view.ViewGroup;
-import android.view.ViewGroup.LayoutParams;
-import android.view.WindowManager;
-import android.widget.FrameLayout;
-import android.widget.LinearLayout;
-import android.widget.SeekBar;
-
-import com.android.gallery3d.R;
-import com.android.gallery3d.filtershow.controller.ActionSlider;
-import com.android.gallery3d.filtershow.controller.BasicSlider;
-import com.android.gallery3d.filtershow.controller.Control;
-import com.android.gallery3d.filtershow.controller.Parameter;
-import com.android.gallery3d.filtershow.controller.ParameterActionAndInt;
-import com.android.gallery3d.filtershow.controller.ParameterInteger;
-import com.android.gallery3d.filtershow.controller.ParameterStyles;
-import com.android.gallery3d.filtershow.controller.StyleChooser;
-import com.android.gallery3d.filtershow.controller.TitledSlider;
-import com.android.gallery3d.filtershow.filters.FilterBasicRepresentation;
-import com.android.gallery3d.filtershow.filters.FilterRepresentation;
-
-import java.lang.reflect.Constructor;
-import java.util.HashMap;
-
-public class ParametricEditor extends Editor {
- private int mLayoutID;
- private int mViewID;
- public static int ID = R.id.editorParametric;
- private final String LOGTAG = "ParametricEditor";
- protected Control mControl;
- public static final int MINIMUM_WIDTH = 600;
- public static final int MINIMUM_HEIGHT = 800;
- View mActionButton;
- View mEditControl;
- static HashMap<String, Class> portraitMap = new HashMap<String, Class>();
- static HashMap<String, Class> landscapeMap = new HashMap<String, Class>();
- static {
- portraitMap.put(ParameterInteger.sParameterType, BasicSlider.class);
- landscapeMap.put(ParameterInteger.sParameterType, TitledSlider.class);
- portraitMap.put(ParameterActionAndInt.sParameterType, ActionSlider.class);
- landscapeMap.put(ParameterActionAndInt.sParameterType, ActionSlider.class);
- portraitMap.put(ParameterStyles.sParameterType, StyleChooser.class);
- landscapeMap.put(ParameterStyles.sParameterType, StyleChooser.class);
- }
-
- static Constructor getConstructor(Class cl) {
- try {
- return cl.getConstructor(Context.class, ViewGroup.class);
- } catch (Exception e) {
- return null;
- }
- }
-
- public ParametricEditor() {
- super(ID);
- }
-
- protected ParametricEditor(int id) {
- super(id);
- }
-
- protected ParametricEditor(int id, int layoutID, int viewID) {
- super(id);
- mLayoutID = layoutID;
- mViewID = viewID;
- }
-
- @Override
- public String calculateUserMessage(Context context, String effectName, Object parameterValue) {
- String apply = "";
-
- if (mShowParameter == SHOW_VALUE_INT & useCompact(context)) {
- if (getLocalRepresentation() instanceof FilterBasicRepresentation) {
- FilterBasicRepresentation interval = (FilterBasicRepresentation) getLocalRepresentation();
- apply += " " + effectName.toUpperCase() + " " + interval.getStateRepresentation();
- } else {
- apply += " " + effectName.toUpperCase() + " " + parameterValue;
- }
- } else {
- apply += " " + effectName.toUpperCase();
- }
- return apply;
- }
-
- @Override
- public void createEditor(Context context, FrameLayout frameLayout) {
- super.createEditor(context, frameLayout);
- unpack(mViewID, mLayoutID);
- }
-
- @Override
- public void reflectCurrentFilter() {
- super.reflectCurrentFilter();
- if (getLocalRepresentation() != null
- && getLocalRepresentation() instanceof FilterBasicRepresentation) {
- FilterBasicRepresentation interval = (FilterBasicRepresentation) getLocalRepresentation();
- mControl.setPrameter(interval);
- }
- }
-
- @Override
- public Control[] getControls() {
- BasicSlider slider = new BasicSlider();
- return new Control[] {
- slider
- };
- }
-
- // TODO: need a better way to decide which representation
- static boolean useCompact(Context context) {
- WindowManager w = ((WindowManager) context.getSystemService(Context.WINDOW_SERVICE));
- Point size = new Point();
- w.getDefaultDisplay().getSize(size);
- if (size.x < size.y) { // if tall than wider
- return true;
- }
- if (size.x < MINIMUM_WIDTH) {
- return true;
- }
- if (size.y < MINIMUM_HEIGHT) {
- return true;
- }
- return false;
- }
-
- protected Parameter getParameterToEdit(FilterRepresentation rep) {
- if (this instanceof Parameter) {
- return (Parameter) this;
- } else if (rep instanceof Parameter) {
- return ((Parameter) rep);
- }
- return null;
- }
-
- @Override
- public void setUtilityPanelUI(View actionButton, View editControl) {
- mActionButton = actionButton;
- mEditControl = editControl;
- FilterRepresentation rep = getLocalRepresentation();
- Parameter param = getParameterToEdit(rep);
- if (param != null) {
- control(param, editControl);
- } else {
- mSeekBar = new SeekBar(editControl.getContext());
- LayoutParams lp = new LinearLayout.LayoutParams(
- LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT);
- mSeekBar.setLayoutParams(lp);
- ((LinearLayout) editControl).addView(mSeekBar);
- mSeekBar.setOnSeekBarChangeListener(this);
- }
- }
-
- protected void control(Parameter p, View editControl) {
- String pType = p.getParameterType();
- Context context = editControl.getContext();
- Class c = ((useCompact(context)) ? portraitMap : landscapeMap).get(pType);
-
- if (c != null) {
- try {
- mControl = (Control) c.newInstance();
- p.setController(mControl);
- mControl.setUp((ViewGroup) editControl, p, this);
- } catch (Exception e) {
- Log.e(LOGTAG, "Error in loading Control ", e);
- }
- } else {
- Log.e(LOGTAG, "Unable to find class for " + pType);
- for (String string : portraitMap.keySet()) {
- Log.e(LOGTAG, "for " + string + " use " + portraitMap.get(string));
- }
- }
- }
-
- @Override
- public void onProgressChanged(SeekBar sbar, int progress, boolean arg2) {
- }
-
- @Override
- public void onStartTrackingTouch(SeekBar arg0) {
- }
-
- @Override
- public void onStopTrackingTouch(SeekBar arg0) {
- }
-}
diff --git a/src/com/android/gallery3d/filtershow/editors/SwapButton.java b/src/com/android/gallery3d/filtershow/editors/SwapButton.java
deleted file mode 100644
index bb4432e28..000000000
--- a/src/com/android/gallery3d/filtershow/editors/SwapButton.java
+++ /dev/null
@@ -1,111 +0,0 @@
-/*
- * Copyright (C) 2013 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.gallery3d.filtershow.editors;
-
-import android.content.Context;
-import android.util.AttributeSet;
-import android.view.GestureDetector;
-import android.view.Menu;
-import android.view.MenuItem;
-import android.view.MotionEvent;
-import android.widget.Button;
-
-public class SwapButton extends Button implements GestureDetector.OnGestureListener {
-
- public static int ANIM_DURATION = 200;
-
- public interface SwapButtonListener {
- public void swapLeft(MenuItem item);
- public void swapRight(MenuItem item);
- }
-
- private GestureDetector mDetector;
- private SwapButtonListener mListener;
- private Menu mMenu;
- private int mCurrentMenuIndex;
-
- public SwapButton(Context context, AttributeSet attrs) {
- super(context, attrs);
- mDetector = new GestureDetector(context, this);
- }
-
- public SwapButtonListener getListener() {
- return mListener;
- }
-
- public void setListener(SwapButtonListener listener) {
- mListener = listener;
- }
-
- public boolean onTouchEvent(MotionEvent me) {
- if (!mDetector.onTouchEvent(me)) {
- return super.onTouchEvent(me);
- }
- return true;
- }
-
- @Override
- public boolean onDown(MotionEvent e) {
- return true;
- }
-
- @Override
- public void onShowPress(MotionEvent e) {
- }
-
- @Override
- public boolean onSingleTapUp(MotionEvent e) {
- callOnClick();
- return true;
- }
-
- @Override
- public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX, float distanceY) {
- return false;
- }
-
- @Override
- public void onLongPress(MotionEvent e) {
- }
-
- @Override
- public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) {
- if (mMenu == null) {
- return false;
- }
- if (e1.getX() - e2.getX() > 0) {
- // right to left
- mCurrentMenuIndex++;
- if (mCurrentMenuIndex == mMenu.size()) {
- mCurrentMenuIndex = 0;
- }
- if (mListener != null) {
- mListener.swapRight(mMenu.getItem(mCurrentMenuIndex));
- }
- } else {
- // left to right
- mCurrentMenuIndex--;
- if (mCurrentMenuIndex < 0) {
- mCurrentMenuIndex = mMenu.size() - 1;
- }
- if (mListener != null) {
- mListener.swapLeft(mMenu.getItem(mCurrentMenuIndex));
- }
- }
- return true;
- }
-}