| /* |
| * Copyright (c) 2000, 2016, 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.event.FocusEvent.Cause; |
| 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, 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; |
| } |
| } |