annotate dwt/dnd/DragSourceListener.d @ 135:242e33c0e383

Added dnd source, ByteArrayTransfer,Clipboard completed
author Frank Benoit <benoit@tionex.de>
date Wed, 13 Feb 2008 04:51:22 +0100
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
135
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
1 /*******************************************************************************
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
2 * Copyright (c) 2000, 2003 IBM Corporation and others.
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
3 * All rights reserved. This program and the accompanying materials
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
4 * are made available under the terms of the Eclipse Public License v1.0
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
5 * which accompanies this distribution, and is available at
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
6 * http://www.eclipse.org/legal/epl-v10.html
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
7 *
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
8 * Contributors:
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
9 * IBM Corporation - initial API and implementation
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
10 * Port to the D programming language:
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
11 * Frank Benoit <benoit@tionex.de>
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
12 *******************************************************************************/
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
13 module dwt.dnd.DragSourceListener;
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
14
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
15 import dwt.internal.DWTEventListener;
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
16 import dwt.dnd.DragSourceEvent;
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
17
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
18 /**
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
19 * The <code>DragSourceListener</code> class provides event notification to the application for DragSource events.
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
20 *
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
21 * <p>When the user drops data on a <code>DropTarget</code>, the application which defines the <code>DragSource</code>
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
22 * must provide the dropped data by implementing <code>dragSetData</code>. In the dragSetData, the application
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
23 * must support all the data types that were specified in the DragSource#setTransfer method.</p>
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
24 *
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
25 * <p>After the drop has completed successfully or has been aborted, the application which defines the
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
26 * <code>DragSource</code> is required to take the appropriate cleanup action. In the case of a successful
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
27 * <b>move</b> operation, the application must remove the data that was transferred.</p>
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
28 *
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
29 */
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
30 public interface DragSourceListener : DWTEventListener {
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
31
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
32 /**
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
33 * The user has begun the actions required to drag the widget. This event gives the application
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
34 * the chance to decide if a drag should be started.
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
35 *
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
36 * <p>The following fields in the DragSourceEvent apply:
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
37 * <ul>
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
38 * <li>(in)widget
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
39 * <li>(in)time
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
40 * <li>(in,out)doit
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
41 * </ul></p>
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
42 *
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
43 * @param event the information associated with the drag start event
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
44 *
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
45 * @see DragSourceEvent
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
46 */
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
47 public void dragStart(DragSourceEvent event);
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
48
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
49 /**
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
50 * The data is required from the drag source.
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
51 *
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
52 * <p>The following fields in the DragSourceEvent apply:
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
53 * <ul>
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
54 * <li>(in)widget
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
55 * <li>(in)time
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
56 * <li>(in)dataType - the type of data requested.
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
57 * <li>(out)data - the application inserts the actual data here (must match the dataType)
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
58 * </ul></p>
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
59 *
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
60 * @param event the information associated with the drag set data event
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
61 *
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
62 * @see DragSourceEvent
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
63 */
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
64 public void dragSetData(DragSourceEvent event);
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
65
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
66 /**
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
67 * The drop has successfully completed(mouse up over a valid target) or has been terminated (such as hitting
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
68 * the ESC key). Perform cleanup such as removing data from the source side on a successful move operation.
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
69 *
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
70 * <p>The following fields in the DragSourceEvent apply:
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
71 * <ul>
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
72 * <li>(in)widget
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
73 * <li>(in)time
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
74 * <li>(in)doit
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
75 * <li>(in)detail
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
76 * </ul></p>
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
77 *
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
78 * @param event the information associated with the drag finished event
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
79 *
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
80 * @see DragSourceEvent
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
81 */
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
82 public void dragFinished(DragSourceEvent event);
242e33c0e383 Added dnd source, ByteArrayTransfer,Clipboard completed
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
83 }