diff options
Diffstat (limited to 'src/com/android/gallery3d/filtershow/state/DragListener.java')
-rw-r--r-- | src/com/android/gallery3d/filtershow/state/DragListener.java | 110 |
1 files changed, 0 insertions, 110 deletions
diff --git a/src/com/android/gallery3d/filtershow/state/DragListener.java b/src/com/android/gallery3d/filtershow/state/DragListener.java deleted file mode 100644 index 1aa81ed69..000000000 --- a/src/com/android/gallery3d/filtershow/state/DragListener.java +++ /dev/null @@ -1,110 +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.state; - -import android.view.DragEvent; -import android.view.View; -import android.widget.ArrayAdapter; -import android.widget.LinearLayout; - -class DragListener implements View.OnDragListener { - - private static final String LOGTAG = "DragListener"; - private PanelTrack mStatePanelTrack; - private static float sSlope = 0.2f; - - public DragListener(PanelTrack statePanelTrack) { - mStatePanelTrack = statePanelTrack; - } - - private void setState(DragEvent event) { - float translation = event.getY() - mStatePanelTrack.getTouchPoint().y; - float alpha = 1.0f - (Math.abs(translation) - / mStatePanelTrack.getCurrentView().getHeight()); - if (mStatePanelTrack.getOrientation() == LinearLayout.VERTICAL) { - translation = event.getX() - mStatePanelTrack.getTouchPoint().x; - alpha = 1.0f - (Math.abs(translation) - / mStatePanelTrack.getCurrentView().getWidth()); - mStatePanelTrack.getCurrentView().setTranslationX(translation); - } else { - mStatePanelTrack.getCurrentView().setTranslationY(translation); - } - mStatePanelTrack.getCurrentView().setBackgroundAlpha(alpha); - } - - @Override - public boolean onDrag(View v, DragEvent event) { - switch (event.getAction()) { - case DragEvent.ACTION_DRAG_STARTED: { - break; - } - case DragEvent.ACTION_DRAG_LOCATION: { - if (mStatePanelTrack.getCurrentView() != null) { - setState(event); - View over = mStatePanelTrack.findChildAt((int) event.getX(), - (int) event.getY()); - if (over != null && over != mStatePanelTrack.getCurrentView()) { - StateView stateView = (StateView) over; - if (stateView != mStatePanelTrack.getCurrentView()) { - int pos = mStatePanelTrack.findChild(over); - int origin = mStatePanelTrack.findChild( - mStatePanelTrack.getCurrentView()); - ArrayAdapter array = (ArrayAdapter) mStatePanelTrack.getAdapter(); - if (origin != -1 && pos != -1) { - State current = (State) array.getItem(origin); - array.remove(current); - array.insert(current, pos); - mStatePanelTrack.fillContent(false); - mStatePanelTrack.setCurrentView(mStatePanelTrack.getChildAt(pos)); - } - } - } - } - break; - } - case DragEvent.ACTION_DRAG_ENTERED: { - mStatePanelTrack.setExited(false); - if (mStatePanelTrack.getCurrentView() != null) { - mStatePanelTrack.getCurrentView().setVisibility(View.VISIBLE); - } - return true; - } - case DragEvent.ACTION_DRAG_EXITED: { - if (mStatePanelTrack.getCurrentView() != null) { - setState(event); - mStatePanelTrack.getCurrentView().setVisibility(View.INVISIBLE); - } - mStatePanelTrack.setExited(true); - break; - } - case DragEvent.ACTION_DROP: { - break; - } - case DragEvent.ACTION_DRAG_ENDED: { - if (mStatePanelTrack.getCurrentView() != null - && mStatePanelTrack.getCurrentView().getAlpha() > sSlope) { - setState(event); - } - mStatePanelTrack.checkEndState(); - break; - } - default: - break; - } - return true; - } -} |