Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
PojavLauncherTeam
GitHub Repository: PojavLauncherTeam/openjdk-multiarch-jdk8u
Path: blob/aarch64-shenandoah-jdk8u272-b10/jdk/test/java/awt/Mixing/AWT_Mixing/JInternalFrameOverlapping.java
47626 views
1
/*
2
* Copyright (c) 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
25
import java.awt.Point;
26
import java.awt.Robot;
27
import java.awt.event.MouseAdapter;
28
import java.awt.event.MouseEvent;
29
import javax.swing.JButton;
30
import javax.swing.JDesktopPane;
31
import javax.swing.JFrame;
32
import javax.swing.JInternalFrame;
33
import test.java.awt.regtesthelpers.Util;
34
35
/**
36
* AWT/Swing overlapping test for {@link javax.swing.JInternalFrame } component.
37
* <p>See base class for test info.
38
*/
39
/*
40
@test
41
@summary Overlapping test for javax.swing.JScrollPane
42
@author [email protected]: area=awt.mixing
43
@library ../../regtesthelpers
44
@build Util
45
@run main JInternalFrameOverlapping
46
*/
47
public class JInternalFrameOverlapping extends OverlappingTestBase {
48
49
private boolean lwClicked = true;
50
private Point lLoc;
51
52
protected boolean performTest() {
53
54
55
// run robot
56
Robot robot = Util.createRobot();
57
robot.setAutoDelay(ROBOT_DELAY);
58
59
clickAndBlink(robot, lLoc);
60
61
return lwClicked;
62
}
63
64
/**
65
* Creating two JInternalFrames in JDesktopPanes. Put lightweight component into one frame and heavyweight into another.
66
*/
67
@Override
68
protected void prepareControls() {
69
JDesktopPane desktopPane = new JDesktopPane();
70
71
JFrame frame = new JFrame("Test Window");
72
frame.setSize(300, 300);
73
frame.setContentPane(desktopPane);
74
frame.setVisible(true);
75
JInternalFrame bottomFrame = new JInternalFrame("bottom frame", false, false, false, false);
76
bottomFrame.setSize(220, 220);
77
desktopPane.add(bottomFrame);
78
bottomFrame.setVisible(true);
79
80
super.propagateAWTControls(bottomFrame);
81
JInternalFrame topFrame = new JInternalFrame("top frame", false, false, false, false);
82
topFrame.setSize(200, 200);
83
JButton jbutton = new JButton("LW Button") {{
84
addMouseListener(new MouseAdapter() {
85
86
@Override
87
public void mouseClicked(MouseEvent e) {
88
lwClicked = true;
89
}
90
});
91
}};
92
topFrame.add(jbutton);
93
desktopPane.add(topFrame);
94
topFrame.setVisible(true);
95
lLoc = jbutton.getLocationOnScreen();
96
lLoc.translate(jbutton.getWidth()/2, jbutton.getWidth()/2); //click at middle of the button
97
}
98
99
// this strange plumbing stuff is required due to "Standard Test Machinery" in base class
100
public static void main(String args[]) throws InterruptedException {
101
instance = new JInternalFrameOverlapping();
102
OverlappingTestBase.doMain(args);
103
}
104
105
}
106
107