1 /*
2  * Copyright (c) 2007, 2014, Oracle and/or its affiliates. All rights reserved.
3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4  *
5  * This code is free software; you can redistribute it and/or modify it
6  * under the terms of the GNU General Public License version 2 only, as
7  * published by the Free Software Foundation.
8  *
9  * This code is distributed in the hope that it will be useful, but WITHOUT
10  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
12  * version 2 for more details (a copy is included in the LICENSE file that
13  * accompanied this code).
14  *
15  * You should have received a copy of the GNU General Public License version
16  * 2 along with this work; if not, write to the Free Software Foundation,
17  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18  *
19  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20  * or visit www.oracle.com if you need additional information or have any
21  * questions.
22  */
23 
24 import test.java.awt.regtesthelpers.Util;
25 
26 import java.awt.*;
27 import java.awt.datatransfer.StringSelection;
28 import java.awt.dnd.DragGestureListener;
29 import java.awt.dnd.DragSource;
30 import java.awt.dnd.DnDConstants;
31 import java.awt.dnd.DragGestureEvent;
32 
33 class SourceFrame extends Frame implements DragGestureListener {
34 
SourceFrame()35     SourceFrame() {
36         super("Source File List Frame");
37         initGUI();
38         new DragSource().createDefaultDragGestureRecognizer(this,
39                 DnDConstants.ACTION_COPY,this);
40     }
41 
initGUI()42     private void initGUI() {
43         this.addWindowListener(Util.getClosingWindowAdapter());
44         this.setLocation(300,250);
45         this.setSize(200,200);
46         this.setVisible(true);
47     }
48 
getNextLocationX()49     int getNextLocationX() {
50         return getX()+getWidth();
51     }
52 
getNextLocationY()53     int getNextLocationY() {
54         return getY();
55     }
56 
getDragSourcePointX()57     int getDragSourcePointX() {
58         return (int)getLocationOnScreen().getX()+(getWidth()/2);
59     }
60 
getDragSourcePointY()61    int getDragSourcePointY() {
62         return (int)getLocationOnScreen().getY()+ (getHeight()/2);
63     }
64 
dragGestureRecognized(DragGestureEvent dge)65     public void dragGestureRecognized(DragGestureEvent dge) {
66         dge.startDrag(null, new StringSelection("A TEXT"));
67     }
68 }
69