16a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang/*
26a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang * Copyright (C) 2010 The Android Open Source Project
36a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang *
46a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang * Licensed under the Apache License, Version 2.0 (the "License");
56a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang * you may not use this file except in compliance with the License.
66a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang * You may obtain a copy of the License at
76a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang *
86a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang *      http://www.apache.org/licenses/LICENSE-2.0
96a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang *
106a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang * Unless required by applicable law or agreed to in writing, software
116a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang * distributed under the License is distributed on an "AS IS" BASIS,
126a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
136a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang * See the License for the specific language governing permissions and
146a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang * limitations under the License.
156a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang */
166a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang
176a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huangpackage com.android.gallery3d.photoeditor.actions;
186a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang
196a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huangimport android.content.Context;
206a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huangimport android.util.AttributeSet;
216a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang
226a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huangimport com.android.gallery3d.photoeditor.filters.ShadowFilter;
236a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang
246a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang/**
256a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang * An action handling shadow effect.
266a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang */
276a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huangpublic class ShadowAction extends EffectAction {
286a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang
296a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang    private static final float DEFAULT_SCALE = 0f;
306a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang
316a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang    public ShadowAction(Context context, AttributeSet attrs) {
326a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang        super(context, attrs);
336a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang    }
346a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang
356a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang    @Override
3604085c3b17e4b6da6fb951e2cdbd35dfa153bb87Yuli Huang    public void prepare() {
376a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang        final ShadowFilter filter = new ShadowFilter();
386a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang
3926c0354619d6229a937f4232e2c9744385c046adYuli Huang        ScaleSeekBar scalePicker = toolKit.addScalePicker(EffectToolKit.ScaleType.SHADOW);
406a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang        scalePicker.setOnScaleChangeListener(new ScaleSeekBar.OnScaleChangeListener() {
416a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang
426a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang            @Override
436a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang            public void onProgressChanged(float progress, boolean fromUser) {
446a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang                if (fromUser) {
45738e82e163f90e1fe7aeef8bd153dc7763631f30Yuli Huang                    filter.setScale(progress);
4604085c3b17e4b6da6fb951e2cdbd35dfa153bb87Yuli Huang                    notifyChanged(filter);
476a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang                }
486a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang            }
496a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang        });
506a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang        scalePicker.setProgress(DEFAULT_SCALE);
516a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang    }
526a12ad70df5da5052a8381e2cdda79e6a314cee9Yuli Huang}
53