309 lines
7.6 KiB
Java
309 lines
7.6 KiB
Java
/*
|
|
* Copyright (c) 2000, 2013, 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. Oracle designates this
|
|
* particular file as subject to the "Classpath" exception as provided
|
|
* by Oracle in the LICENSE file that accompanied this code.
|
|
*
|
|
* 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.
|
|
*/
|
|
|
|
package sun.awt;
|
|
|
|
import java.awt.AWTException;
|
|
import java.awt.BufferCapabilities;
|
|
import java.awt.Color;
|
|
import java.awt.Component;
|
|
import java.awt.Cursor;
|
|
import java.awt.Dimension;
|
|
import java.awt.Font;
|
|
import java.awt.FontMetrics;
|
|
import java.awt.Graphics;
|
|
import java.awt.GraphicsConfiguration;
|
|
import java.awt.Image;
|
|
import java.awt.Insets;
|
|
import java.awt.MenuBar;
|
|
import java.awt.Point;
|
|
import java.awt.Event;
|
|
import java.awt.event.PaintEvent;
|
|
import java.awt.image.ColorModel;
|
|
import java.awt.image.ImageObserver;
|
|
import java.awt.image.ImageProducer;
|
|
import java.awt.image.VolatileImage;
|
|
import java.awt.peer.CanvasPeer;
|
|
import java.awt.peer.LightweightPeer;
|
|
import java.awt.peer.PanelPeer;
|
|
import java.awt.peer.ComponentPeer;
|
|
import java.awt.peer.ContainerPeer;
|
|
import java.awt.Rectangle;
|
|
import sun.java2d.pipe.Region;
|
|
|
|
|
|
/**
|
|
* Implements the LightweightPeer interface for use in lightweight components
|
|
* that have no native window associated with them. This gets created by
|
|
* default in Component so that Component and Container can be directly
|
|
* extended to create useful components written entirely in java. These
|
|
* components must be hosted somewhere higher up in the component tree by a
|
|
* native container (such as a Frame).
|
|
*
|
|
* This implementation provides no useful semantics and serves only as a
|
|
* marker. One could provide alternative implementations in java that do
|
|
* something useful for some of the other peer interfaces to minimize the
|
|
* native code.
|
|
*
|
|
* This was renamed from java.awt.LightweightPeer (a horrible and confusing
|
|
* name) and moved from java.awt.Toolkit into sun.awt as a public class in
|
|
* its own file.
|
|
*
|
|
* @author Timothy Prinzing
|
|
* @author Michael Martak
|
|
*/
|
|
|
|
public class NullComponentPeer implements LightweightPeer,
|
|
CanvasPeer, PanelPeer {
|
|
|
|
public boolean isObscured() {
|
|
return false;
|
|
}
|
|
|
|
public boolean canDetermineObscurity() {
|
|
return false;
|
|
}
|
|
|
|
public boolean isFocusable() {
|
|
return false;
|
|
}
|
|
|
|
public void setVisible(boolean b) {
|
|
}
|
|
|
|
public void show() {
|
|
}
|
|
|
|
public void hide() {
|
|
}
|
|
|
|
public void setEnabled(boolean b) {
|
|
}
|
|
|
|
public void enable() {
|
|
}
|
|
|
|
public void disable() {
|
|
}
|
|
|
|
public void paint(Graphics g) {
|
|
}
|
|
|
|
public void repaint(long tm, int x, int y, int width, int height) {
|
|
}
|
|
|
|
public void print(Graphics g) {
|
|
}
|
|
|
|
public void setBounds(int x, int y, int width, int height, int op) {
|
|
}
|
|
|
|
public void reshape(int x, int y, int width, int height) {
|
|
}
|
|
|
|
public void coalescePaintEvent(PaintEvent e) {
|
|
}
|
|
|
|
public boolean handleEvent(Event e) {
|
|
return false;
|
|
}
|
|
|
|
public void handleEvent(java.awt.AWTEvent arg0) {
|
|
}
|
|
|
|
public Dimension getPreferredSize() {
|
|
return new Dimension(1,1);
|
|
}
|
|
|
|
public Dimension getMinimumSize() {
|
|
return new Dimension(1,1);
|
|
}
|
|
|
|
public ColorModel getColorModel() {
|
|
return null;
|
|
}
|
|
|
|
public Graphics getGraphics() {
|
|
return null;
|
|
}
|
|
|
|
public GraphicsConfiguration getGraphicsConfiguration() {
|
|
return null;
|
|
}
|
|
|
|
public FontMetrics getFontMetrics(Font font) {
|
|
return null;
|
|
}
|
|
|
|
public void dispose() {
|
|
// no native code
|
|
}
|
|
|
|
public void setForeground(Color c) {
|
|
}
|
|
|
|
public void setBackground(Color c) {
|
|
}
|
|
|
|
public void setFont(Font f) {
|
|
}
|
|
|
|
public void updateCursorImmediately() {
|
|
}
|
|
|
|
public void setCursor(Cursor cursor) {
|
|
}
|
|
|
|
public boolean requestFocus
|
|
(Component lightweightChild, boolean temporary,
|
|
boolean focusedWindowChangeAllowed, long time, CausedFocusEvent.Cause cause) {
|
|
return false;
|
|
}
|
|
|
|
public Image createImage(ImageProducer producer) {
|
|
return null;
|
|
}
|
|
|
|
public Image createImage(int width, int height) {
|
|
return null;
|
|
}
|
|
|
|
public boolean prepareImage(Image img, int w, int h, ImageObserver o) {
|
|
return false;
|
|
}
|
|
|
|
public int checkImage(Image img, int w, int h, ImageObserver o) {
|
|
return 0;
|
|
}
|
|
|
|
public Dimension preferredSize() {
|
|
return getPreferredSize();
|
|
}
|
|
|
|
public Dimension minimumSize() {
|
|
return getMinimumSize();
|
|
}
|
|
|
|
public Point getLocationOnScreen() {
|
|
return new Point(0,0);
|
|
}
|
|
|
|
public Insets getInsets() {
|
|
return insets();
|
|
}
|
|
|
|
public void beginValidate() {
|
|
}
|
|
|
|
public void endValidate() {
|
|
}
|
|
|
|
public Insets insets() {
|
|
return new Insets(0, 0, 0, 0);
|
|
}
|
|
|
|
public boolean isPaintPending() {
|
|
return false;
|
|
}
|
|
|
|
public boolean handlesWheelScrolling() {
|
|
return false;
|
|
}
|
|
|
|
public VolatileImage createVolatileImage(int width, int height) {
|
|
return null;
|
|
}
|
|
|
|
public void beginLayout() {
|
|
}
|
|
|
|
public void endLayout() {
|
|
}
|
|
|
|
public void createBuffers(int numBuffers, BufferCapabilities caps)
|
|
throws AWTException {
|
|
throw new AWTException(
|
|
"Page-flipping is not allowed on a lightweight component");
|
|
}
|
|
public Image getBackBuffer() {
|
|
throw new IllegalStateException(
|
|
"Page-flipping is not allowed on a lightweight component");
|
|
}
|
|
public void flip(int x1, int y1, int x2, int y2,
|
|
BufferCapabilities.FlipContents flipAction)
|
|
{
|
|
throw new IllegalStateException(
|
|
"Page-flipping is not allowed on a lightweight component");
|
|
}
|
|
public void destroyBuffers() {
|
|
}
|
|
|
|
/**
|
|
* @see java.awt.peer.ComponentPeer#isReparentSupported
|
|
*/
|
|
public boolean isReparentSupported() {
|
|
return false;
|
|
}
|
|
|
|
/**
|
|
* @see java.awt.peer.ComponentPeer#reparent
|
|
*/
|
|
public void reparent(ContainerPeer newNativeParent) {
|
|
throw new UnsupportedOperationException();
|
|
}
|
|
|
|
public void layout() {
|
|
}
|
|
|
|
public Rectangle getBounds() {
|
|
return new Rectangle(0, 0, 0, 0);
|
|
}
|
|
|
|
|
|
/**
|
|
* Applies the shape to the native component window.
|
|
* @since 1.7
|
|
*/
|
|
public void applyShape(Region shape) {
|
|
}
|
|
|
|
/**
|
|
* Lowers this component at the bottom of the above HW peer. If the above parameter
|
|
* is null then the method places this component at the top of the Z-order.
|
|
*/
|
|
public void setZOrder(ComponentPeer above) {
|
|
}
|
|
|
|
public boolean updateGraphicsData(GraphicsConfiguration gc) {
|
|
return false;
|
|
}
|
|
|
|
public GraphicsConfiguration getAppropriateGraphicsConfiguration(
|
|
GraphicsConfiguration gc)
|
|
{
|
|
return gc;
|
|
}
|
|
}
|