1 /* 2 * Copyright (C) 2010 The Android Open Source Project 3 * 4 * Licensed under the Eclipse Public License, Version 1.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.eclipse.org/org/documents/epl-v10.php 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17 package com.android.ide.eclipse.adt.internal.editors.layout.gle2; 18 19 import org.eclipse.swt.dnd.DropTargetEvent; 20 import org.eclipse.swt.dnd.DropTargetListener; 21 22 /** 23 * A {@link DropGesture} is a {@link Gesture} which deals with drag and drop, so 24 * it has additional hooks for indicating whether the current position is 25 * "valid", and in general gets access to the system drag and drop data 26 * structures. See the {@link Gesture} documentation for more details on whether 27 * you should choose a plain {@link Gesture} or a {@link DropGesture}. 28 */ 29 public abstract class DropGesture extends Gesture { 30 /** 31 * The cursor has entered the drop target boundaries. 32 * 33 * @param event The {@link DropTargetEvent} for this drag and drop event 34 * @see DropTargetListener#dragEnter(DropTargetEvent) 35 */ dragEnter(DropTargetEvent event)36 public void dragEnter(DropTargetEvent event) { 37 } 38 39 /** 40 * The cursor is moving over the drop target. 41 * 42 * @param event The {@link DropTargetEvent} for this drag and drop event 43 * @see DropTargetListener#dragOver(DropTargetEvent) 44 */ dragOver(DropTargetEvent event)45 public void dragOver(DropTargetEvent event) { 46 } 47 48 /** 49 * The operation being performed has changed (usually due to the user 50 * changing the selected modifier key(s) while dragging). 51 * 52 * @param event The {@link DropTargetEvent} for this drag and drop event 53 * @see DropTargetListener#dragOperationChanged(DropTargetEvent) 54 */ dragOperationChanged(DropTargetEvent event)55 public void dragOperationChanged(DropTargetEvent event) { 56 } 57 58 /** 59 * The cursor has left the drop target boundaries OR the drop has been 60 * canceled OR the data is about to be dropped. 61 * 62 * @param event The {@link DropTargetEvent} for this drag and drop event 63 * @see DropTargetListener#dragLeave(DropTargetEvent) 64 */ dragLeave(DropTargetEvent event)65 public void dragLeave(DropTargetEvent event) { 66 } 67 68 /** 69 * The drop is about to be performed. The drop target is given a last chance 70 * to change the nature of the drop. 71 * 72 * @param event The {@link DropTargetEvent} for this drag and drop event 73 * @see DropTargetListener#dropAccept(DropTargetEvent) 74 */ dropAccept(DropTargetEvent event)75 public void dropAccept(DropTargetEvent event) { 76 } 77 78 /** 79 * The data is being dropped. The data field contains java format of the 80 * data being dropped. 81 * 82 * @param event The {@link DropTargetEvent} for this drag and drop event 83 * @see DropTargetListener#drop(DropTargetEvent) 84 */ drop(final DropTargetEvent event)85 public void drop(final DropTargetEvent event) { 86 } 87 } 88