< prev index next >

test/jdk/java/awt/dnd/ImageDecoratedDnDNegative/ImageDecoratedDnDNegative.java

Print this page

        

@@ -1,7 +1,7 @@
 /*
- * Copyright (c) 2009, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2009, 2018, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
  * under the terms of the GNU General Public License version 2 only, as
  * published by the Free Software Foundation.

@@ -20,39 +20,27 @@
  * or visit www.oracle.com if you need additional information or have any
  * questions.
  */
 
 /*
-  test %W% %E%
-  @bug 4874070 7146550
+  @test
+  @key headful
+  @bug 4874070
   @summary Tests basic DnD functionality
-  @author Your Name: Alexey Utkin area=dnd
-  @run applet ImageDecoratedDnDNegative.html
+  @run main ImageDecoratedDnDNegative
 */
 
-import java.applet.Applet;
 import java.awt.*;
 import java.awt.Robot;
 import java.awt.event.InputEvent;
 import java.awt.event.KeyEvent;
 import java.awt.geom.Point2D;
 
 
 import java.awt.dnd.DragSource;
 
-
-public class ImageDecoratedDnDNegative extends Applet {
-    //Declare things used in the test, like buttons and labels here
-
-    public void init() {
-        //Create instructions for the user here, as well as set up
-        // the environment -- set the layout manager, add buttons,
-        // etc.
-        this.setLayout(new BorderLayout());
-
-        String[] instructions =
-                {
+/*
                         "Automatic test.",
                         "A Frame, which contains a yellow button labeled \"Drag ME!\" and ",
                         "a red panel, will appear below. ",
                         "1. The button would be clicked and dragged to the red panel. ",
                         "2. When the mouse enters the red panel during the drag, the panel ",

@@ -64,16 +52,14 @@
                         "the desktop and IE ).",
                         "3. The mouse would be released.",
                         "The panel should turn red again and a yellow button labeled ",
                         "\"Drag ME!\" should appear inside the panel. You should be able ",
                         "to repeat this operation multiple times."
-                };
-        Sysout.createDialogWithInstructions(instructions);
-
-    }//End  init()
+ */
+public class ImageDecoratedDnDNegative {
 
-    public void moveTo(
+    public static void moveTo(
         Robot r,
         Point b,
         Point e)
     {
         Point2D.Double ee = new Point2D.Double(e.getX(), e.getY());

@@ -93,11 +79,11 @@
                 (int)ee.getX(),
                 (int)ee.getY());
         r.delay(5);
     }
 
-    public void start() {
+    public static void main(final String[] args) {
         Frame f = new Frame("Use keyboard for DnD change");
         Panel mainPanel;
         Component dragSource, dropTarget;
 
         f.setBounds(0, 400, 200, 200);

@@ -112,19 +98,21 @@
         dragSource = new DnDSource("Drag ME! (" + (DragSource.isDragImageSupported()?"with ":"without") + " image)" );
 
         mainPanel.add(dragSource, "North");
         mainPanel.add(dropTarget, "Center");
         f.add(mainPanel, BorderLayout.CENTER);
-
+        f.setUndecorated(true);
+        f.setLocationRelativeTo(null);
         f.setVisible(true);
 
         Point sourcePoint = dragSource.getLocationOnScreen();
         Dimension d = dragSource.getSize();
         sourcePoint.translate(d.width / 2, d.height / 2);
 
         try {
             Robot robot = new Robot();
+            robot.waitForIdle();
             robot.mouseMove(sourcePoint.x, sourcePoint.y);
             Point start = new Point(
                     sourcePoint.x,
                     sourcePoint.y);
             Point out = new Point(

@@ -153,114 +141,7 @@
             }
         } catch( Exception e){
             e.printStackTrace();
             throw new RuntimeException("test failed: drop was not successful with exception " + e);
         }
-    }// start()
-}// class DnDAcceptanceTest
-
-
-/**
- * *************************************************
- * Standard Test Machinery
- * DO NOT modify anything below -- it's a standard
- * chunk of code whose purpose is to make user
- * interaction uniform, and thereby make it simpler
- * to read and understand someone else's test.
- * **************************************************
- */
-class Sysout {
-    private static TestDialog dialog;
-
-    public static void createDialogWithInstructions(String[] instructions) {
-        dialog = new TestDialog(new Frame(), "Instructions");
-        dialog.printInstructions(instructions);
-        dialog.show();
-        println("Any messages for the tester will display here.");
-    }
-
-    public static void createDialog() {
-        dialog = new TestDialog(new Frame(), "Instructions");
-        String[] defInstr = {"Instructions will appear here. ", ""};
-        dialog.printInstructions(defInstr);
-        dialog.show();
-        println("Any messages for the tester will display here.");
-    }
-
-
-    public static void printInstructions(String[] instructions) {
-        dialog.printInstructions(instructions);
     }
-
-
-    public static void println(String messageIn) {
-        dialog.displayMessage(messageIn);
-    }
-
-}// Sysout  class
-
-
-class TestDialog extends Dialog {
-
-    TextArea instructionsText;
-    TextArea messageText;
-    int maxStringLength = 80;
-
-    //DO NOT call this directly, go through Sysout
-    public TestDialog(Frame frame, String name) {
-        super(frame, name);
-        int scrollBoth = TextArea.SCROLLBARS_BOTH;
-        instructionsText = new TextArea("", 15, maxStringLength, scrollBoth);
-        add("North", instructionsText);
-
-        messageText = new TextArea("", 5, maxStringLength, scrollBoth);
-        add("South", messageText);
-
-        pack();
-
-        show();
-    }// TestDialog()
-
-    //DO NOT call this directly, go through Sysout
-    public void printInstructions(String[] instructions) {
-        //Clear out any current instructions
-        instructionsText.setText("");
-
-        //Go down array of instruction strings
-
-        String printStr, remainingStr;
-        for (int i = 0; i < instructions.length; i++) {
-            //chop up each into pieces maxSringLength long
-            remainingStr = instructions[i];
-            while (remainingStr.length() > 0) {
-                //if longer than max then chop off first max chars to print
-                if (remainingStr.length() >= maxStringLength) {
-                    //Try to chop on a word boundary
-                    int posOfSpace = remainingStr.
-                            lastIndexOf(' ', maxStringLength - 1);
-
-                    if (posOfSpace <= 0) posOfSpace = maxStringLength - 1;
-
-                    printStr = remainingStr.substring(0, posOfSpace + 1);
-                    remainingStr = remainingStr.substring(posOfSpace + 1);
-                }
-                //else just print
-                else {
-                    printStr = remainingStr;
-                    remainingStr = "";
-                }
-
-                instructionsText.append(printStr + "\n");
-
-            }// while
-
-        }// for
-
-    }//printInstructions()
-
-    //DO NOT call this directly, go through Sysout
-    public void displayMessage(String messageIn) {
-        messageText.append(messageIn + "\n");
-    }
-
-}// TestDialog  class
-
+}// class DnDAcceptanceTest
< prev index next >