< prev index next >

test/java/awt/Mixing/AWT_Mixing/OverlappingTestBase.java

Print this page

        

*** 23,38 **** import java.awt.*; import java.awt.event.*; import java.awt.peer.ComponentPeer; import java.lang.reflect.Constructor; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import java.util.ArrayList; import javax.swing.*; - import sun.awt.AWTAccessor; import sun.awt.EmbeddedFrame; import java.io.*; import test.java.awt.regtesthelpers.Util; /** --- 23,38 ---- import java.awt.*; import java.awt.event.*; import java.awt.peer.ComponentPeer; import java.lang.reflect.Constructor; + import java.lang.reflect.Field; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import java.util.ArrayList; import javax.swing.*; import sun.awt.EmbeddedFrame; import java.io.*; import test.java.awt.regtesthelpers.Util; /**
*** 72,81 **** --- 72,82 ---- private static final String[] simpleAwtControls = {"Button", "Checkbox", "Label", "TextArea"}; /** * Generic strings array. To be used for population of List based controls. */ protected static final String[] petStrings = {"Bird", "Cat", "Dog", "Rabbit", "Rhynocephalia Granda", "Bear", "Tiger", "Mustang"}; + static Field peerField; // "properties" /** * Tests customization. Set this variable to test only control from java.awt * <p>Usage of this variable should be marked with CR being the reason. * <p>Do not use this variable simultaneously with {@link OverlappingTestBase#skipClassNames}
*** 243,254 **** long frameWindow = 0; String getWindowMethodName = "getHWnd"; if (Toolkit.getDefaultToolkit().getClass().getName().contains("XToolkit")) { getWindowMethodName = "getWindow"; } ! ComponentPeer peer = AWTAccessor.getComponentAccessor() ! .getPeer(embedder); // System.err.println("Peer: " + peer); Method getWindowMethod = peer.getClass().getMethod(getWindowMethodName); frameWindow = (Long) getWindowMethod.invoke(peer); // System.err.println("frame peer ID: " + frameWindow); --- 244,254 ---- long frameWindow = 0; String getWindowMethodName = "getHWnd"; if (Toolkit.getDefaultToolkit().getClass().getName().contains("XToolkit")) { getWindowMethodName = "getWindow"; } ! ComponentPeer peer = (ComponentPeer) peerField.get(embedder); // System.err.println("Peer: " + peer); Method getWindowMethod = peer.getClass().getMethod(getWindowMethodName); frameWindow = (Long) getWindowMethod.invoke(peer); // System.err.println("frame peer ID: " + frameWindow);
*** 566,575 **** --- 566,581 ---- * Starting point for test runs. See usage at {@link OverlappingTestBase } * @param args regular main args, not used. * @throws InterruptedException */ public static void doMain(String args[]) throws InterruptedException { + try { + peerField = Component.class.getDeclaredField("peer"); + } catch (NoSuchFieldException e) { + throw new RuntimeException("peer field is not available"); + } + peerField.setAccessible(true); mainThread = Thread.currentThread(); try { init(); } catch (TestPassedException e) { //The test passed, so just return from main and harness will
< prev index next >