blob: b1a1bea9c0a4726bd913e91ed7f6ae3ddd47d950 [file] [log] [blame]
/*
* Copyright (c) 2007, 2015, 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.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
import java.awt.*;
import java.util.*;
/*
* @test
* @summary Check that Container methods do not throw unexpected exceptions
* in headless mode
* @run main/othervm -Djava.awt.headless=true HeadlessContainer
*/
public class HeadlessContainer {
public static void main(String args[]) {
Container lw = new java.awt.Container();
Component c1 = lw.add(new Component(){});
Component c2 = lw.add(new Component(){});
Component c3 = lw.add(new Component(){});
lw.getComponentCount();
lw.countComponents();
lw.getComponent(1);
lw.getComponent(2);
Component[] cs = lw.getComponents();
Insets ins = lw.getInsets();
ins = lw.insets();
lw.remove(1);
lw.remove((java.awt.Component) c2);
lw.removeAll();
lw.add(c1);
lw.add(c2);
lw.add(c3);
lw.getLayout();
lw.setLayout(new FlowLayout());
lw.doLayout();
lw.layout();
lw.invalidate();
lw.validate();
for (String font : Toolkit.getDefaultToolkit().getFontList()) {
for (int i = 8; i < 17; i++) {
Font f1 = new Font(font, Font.PLAIN, i);
Font f2 = new Font(font, Font.BOLD, i);
Font f3 = new Font(font, Font.ITALIC, i);
Font f4 = new Font(font, Font.BOLD | Font.ITALIC, i);
lw.setFont(f1);
lw.setFont(f2);
lw.setFont(f3);
lw.setFont(f4);
}
}
lw.getPreferredSize();
lw.preferredSize();
lw.getMinimumSize();
lw.minimumSize();
lw.getMaximumSize();
lw.getAlignmentX();
lw.getAlignmentY();
lw.getComponentAt(1, 2);
lw.locate(1, 2);
lw.getComponentAt(new Point(1, 2));
lw.isFocusCycleRoot(new Container());
lw.transferFocusBackward();
lw.getName();
lw.setName("goober");
lw.getName();
lw.getParent();
lw.getGraphicsConfiguration();
lw.getTreeLock();
lw.getToolkit();
lw.isValid();
lw.isDisplayable();
lw.isVisible();
lw.isShowing();
lw.isEnabled();
lw.setEnabled(false);
lw.setEnabled(true);
lw.enable();
lw.enable(false);
lw.enable(true);
lw.disable();
lw.isDoubleBuffered();
lw.enableInputMethods(false);
lw.enableInputMethods(true);
lw.setVisible(false);
lw.setVisible(true);
lw.show();
lw.show(false);
lw.show(true);
lw.hide();
lw.getForeground();
lw.setForeground(Color.red);
lw.isForegroundSet();
lw.getBackground();
lw.setBackground(Color.red);
lw.isBackgroundSet();
lw.getFont();
lw.isFontSet();
boolean exceptions = false;
try {
Container c = new Container();
lw = new java.awt.Container();
c.add(lw);
lw.getLocale();
} catch (IllegalComponentStateException e) {
exceptions = true;
}
if (!exceptions)
throw new RuntimeException("IllegalComponentStateException did not occur when expected");
for (Locale locale : Locale.getAvailableLocales())
lw.setLocale(locale);
lw.getColorModel();
lw.getLocation();
exceptions = false;
try {
lw.getLocationOnScreen();
} catch (IllegalComponentStateException e) {
exceptions = true;
}
if (!exceptions)
throw new RuntimeException("IllegalComponentStateException did not occur when expected");
lw.location();
lw.setLocation(1, 2);
lw.move(1, 2);
lw.setLocation(new Point(1, 2));
lw.getSize();
lw.size();
lw.setSize(1, 32);
lw.resize(1, 32);
lw.setSize(new Dimension(1, 32));
lw.resize(new Dimension(1, 32));
lw.getBounds();
lw.bounds();
lw.setBounds(10, 10, 10, 10);
lw.reshape(10, 10, 10, 10);
lw.setBounds(new Rectangle(10, 10, 10, 10));
lw.getX();
lw.getY();
lw.getWidth();
lw.getHeight();
lw.getBounds(new Rectangle(1, 1, 1, 1));
lw.getSize(new Dimension(1, 2));
lw.getLocation(new Point(1, 2));
lw.isOpaque();
lw.isLightweight();
lw.getGraphics();
for (String font : Toolkit.getDefaultToolkit().getFontList()) {
for (int j = 8; j < 17; j++) {
Font f1 = new Font(font, Font.PLAIN, j);
Font f2 = new Font(font, Font.BOLD, j);
Font f3 = new Font(font, Font.ITALIC, j);
Font f4 = new Font(font, Font.BOLD | Font.ITALIC, j);
lw.getFontMetrics(f1);
lw.getFontMetrics(f2);
lw.getFontMetrics(f3);
lw.getFontMetrics(f4);
}
}
Cursor c = new Cursor(Cursor.CROSSHAIR_CURSOR);
lw.setCursor(c);
lw.getCursor();
lw.isCursorSet();
lw.contains(1, 2);
lw.inside(1, 2);
lw.contains(new Point(1, 2));
lw.isFocusTraversable();
lw.isFocusable();
lw.setFocusable(true);
lw.setFocusable(false);
lw.requestFocus();
lw.requestFocusInWindow();
lw.transferFocus();
lw.getFocusCycleRootAncestor();
lw.nextFocus();
lw.transferFocusUpCycle();
lw.hasFocus();
lw.isFocusOwner();
lw.toString();
lw.setComponentOrientation(ComponentOrientation.LEFT_TO_RIGHT);
lw.setComponentOrientation(ComponentOrientation.RIGHT_TO_LEFT);
lw.setComponentOrientation(ComponentOrientation.UNKNOWN);
lw.getComponentOrientation();
lw.getAccessibleContext();
}
}