aboutsummaryrefslogtreecommitdiff
path: root/libjava/classpath/java/awt/peer/ComponentPeer.java
diff options
context:
space:
mode:
Diffstat (limited to 'libjava/classpath/java/awt/peer/ComponentPeer.java')
-rw-r--r--libjava/classpath/java/awt/peer/ComponentPeer.java532
1 files changed, 0 insertions, 532 deletions
diff --git a/libjava/classpath/java/awt/peer/ComponentPeer.java b/libjava/classpath/java/awt/peer/ComponentPeer.java
deleted file mode 100644
index 736cdf3..0000000
--- a/libjava/classpath/java/awt/peer/ComponentPeer.java
+++ /dev/null
@@ -1,532 +0,0 @@
-/* ComponentPeer.java -- Toplevel component peer
- Copyright (C) 1999, 2000, 2002 Free Software Foundation, Inc.
-
-This file is part of GNU Classpath.
-
-GNU Classpath is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
-
-GNU Classpath 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 for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Classpath; see the file COPYING. If not, write to the
-Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-02110-1301 USA.
-
-Linking this library statically or dynamically with other modules is
-making a combined work based on this library. Thus, the terms and
-conditions of the GNU General Public License cover the whole
-combination.
-
-As a special exception, the copyright holders of this library give you
-permission to link this library with independent modules to produce an
-executable, regardless of the license terms of these independent
-modules, and to copy and distribute the resulting executable under
-terms of your choice, provided that you also meet, for each linked
-independent module, the terms and conditions of the license of that
-module. An independent module is a module which is not derived from
-or based on this library. If you modify this library, you may extend
-this exception to your version of the library, but you are not
-obligated to do so. If you do not wish to do so, delete this
-exception statement from your version. */
-
-
-package java.awt.peer;
-
-import java.awt.AWTEvent;
-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.Point;
-import java.awt.Rectangle;
-import java.awt.Toolkit;
-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 sun.awt.CausedFocusEvent;
-
-/**
- * Defines the methods that a component peer is required to implement.
- */
-public interface ComponentPeer
-{
- /**
- * Returns the construction status of the specified image. This is called
- * by {@link Component#checkImage(Image, int, int, ImageObserver)}.
- *
- * @param img the image
- * @param width the width of the image
- * @param height the height of the image
- * @param ob the image observer to be notified of updates of the status
- *
- * @return a bitwise ORed set of ImageObserver flags
- */
- int checkImage(Image img, int width, int height,
- ImageObserver ob);
-
- /**
- * Creates an image by starting the specified image producer. This is called
- * by {@link Component#createImage(ImageProducer)}.
- *
- * @param prod the image producer to be used to create the image
- *
- * @return the created image
- */
- Image createImage(ImageProducer prod);
-
- /**
- * Creates an empty image with the specified <code>width</code> and
- * <code>height</code>.
- *
- * @param width the width of the image to be created
- * @param height the height of the image to be created
- *
- * @return the created image
- */
- Image createImage(int width, int height);
-
- /**
- * Disables the component. This is called by {@link Component#disable()}.
- */
- void disable();
-
- /**
- * Disposes the component peer. This should release all resources held by the
- * peer. This is called when the component is no longer in use.
- */
- void dispose();
-
- /**
- * Enables the component. This is called by {@link Component#enable()}.
- */
- void enable();
-
- /**
- * Returns the color model of the component. This is currently not used.
- *
- * @return the color model of the component
- */
- ColorModel getColorModel();
-
- /**
- * Returns the font metrics for the specified font. This is called by
- * {@link Component#getFontMetrics(Font)}.
- *
- * @param f the font for which to query the font metrics
- *
- * @return the font metrics for the specified font
- */
- FontMetrics getFontMetrics(Font f);
-
- /**
- * Returns a {@link Graphics} object suitable for drawing on this component.
- * This is called by {@link Component#getGraphics()}.
- *
- * @return a graphics object suitable for drawing on this component
- */
- Graphics getGraphics();
-
- /**
- * Returns the location of this component in screen coordinates. This is
- * called by {@link Component#getLocationOnScreen()}.
- *
- * @return the location of this component in screen coordinates
- */
- Point getLocationOnScreen();
-
- /**
- * Returns the minimum size for the component. This is called by
- * {@link Component#getMinimumSize()}.
- *
- * @return the minimum size for the component
- *
- * @specnote Presumably this method got added to replace minimumSize().
- * However, testing shows that this is never called in the RI
- * (tested with JDK5), but instead minimumSize() is called
- * directly. It is advisable to implement this method to delegate
- * to minimumSize() and put the real implementation in there.
- */
- Dimension getMinimumSize();
-
- /**
- * Returns the preferred size for the component. This is called by
- * {@link Component#getPreferredSize()}.
- *
- * @return the preferred size for the component
- *
- * @specnote Presumably this method got added to replace preferredSize().
- * However, testing shows that this is never called in the RI
- * (tested with JDK5), but instead preferredSize() is called
- * directly. It is advisable to implement this method to delegate
- * to preferredSize() and put the real implementation in there.
- */
- Dimension getPreferredSize();
-
- /**
- * Returns the toolkit that created this peer.
- *
- * @return the toolkit that created this peer
- */
- Toolkit getToolkit();
-
- /**
- * Handles the given event. This is called from
- * {@link Component#dispatchEvent(AWTEvent)} to give the peer a chance to
- * react to events for the component.
- *
- * @param e the event
- */
- void handleEvent(AWTEvent e);
-
- /**
- * Makes the component invisible. This is called from
- * {@link Component#hide()}.
- */
- void hide();
-
- /**
- * Returns <code>true</code> if the component can receive keyboard input
- * focus. This is called from {@link Component#isFocusTraversable()}.
- *
- * @specnote Part of the earlier 1.1 API, replaced by isFocusable().
- */
- boolean isFocusTraversable();
-
- /**
- * Returns <code>true</code> if the component can receive keyboard input
- * focus. This is called from {@link Component#isFocusable()}.
- */
- boolean isFocusable();
-
- /**
- * Returns the minimum size for the component. This is called by
- * {@link Component#minimumSize()}.
- *
- * @return the minimum size for the component
- */
- Dimension minimumSize();
-
- /**
- * Returns the preferred size for the component. This is called by
- * {@link Component#getPreferredSize()}.
- *
- * @return the preferred size for the component
- */
- Dimension preferredSize();
-
- void paint(Graphics graphics);
-
- /**
- * Prepares an image for rendering on this component. This is called by
- * {@link Component#prepareImage(Image, int, int, ImageObserver)}.
- *
- * @param img the image to prepare
- * @param width the desired width of the rendered image
- * @param height the desired height of the rendered image
- * @param ob the image observer to be notified of updates in the preparation
- * process
- *
- * @return <code>true</code> if the image has been fully prepared,
- * <code>false</code> otherwise (in which case the image observer
- * receives updates)
- */
- boolean prepareImage(Image img, int width, int height,
- ImageObserver ob);
-
- void print(Graphics graphics);
-
- /**
- * Repaints the specified rectangle of this component. This is called from
- * {@link Component#repaint(long, int, int, int, int)}.
- *
- * @param tm number of milliseconds to wait with repainting
- * @param x the X coordinate of the upper left corner of the damaged rectangle
- * @param y the Y coordinate of the upper left corner of the damaged rectangle
- * @param width the width of the damaged rectangle
- * @param height the height of the damaged rectangle
- */
- void repaint(long tm, int x, int y, int width, int height);
-
- /**
- * Requests that this component receives the focus. This is called from
- * {@link Component#requestFocus()}.
- *
- * @specnote Part of the earlier 1.1 API, apparently replaced by argument
- * form of the same method.
- */
- void requestFocus();
-
- /**
- * Requests that this component receives the focus. This is called from
- * {@link Component#requestFocus()}.
- *
- * This method is only called for heavyweight component's peers. Lightweight
- * components ask their nearest heavyweight component to request focus.
- * It's up to the heavyweight peer to decide if any of it's lightweight
- * descendants are allowed to receive keyboard input focus or not. If the
- * focus request is finally approved, then the peer must post a FOCUS_GAINED
- * event for the requested component.
- *
- * @param request the component for which the focus is requested
- * @param temporary indicates if the focus change is temporary (true) or
- * permanent (false)
- * @param allowWindowFocus indicates if it's allowed to change window focus
- * @param time the timestamp
- */
- boolean requestFocus(Component request, boolean temporary,
- boolean allowWindowFocus, long time);
-
- /**
- * Notifies the peer that the bounds of this component have changed. This
- * is called by {@link Component#reshape(int, int, int, int)}.
- *
- * @param x the X coordinate of the upper left corner of the component
- * @param y the Y coordinate of the upper left corner of the component
- * @param width the width of the component
- * @param height the height of the component
- */
- void reshape(int x, int y, int width, int height);
-
- /**
- * Sets the background color of the component. This is called by
- * {@link Component#setBackground(Color)}.
- *
- * @param color the background color to set
- */
- void setBackground(Color color);
-
- /**
- * Notifies the peer that the bounds of this component have changed. This
- * is called by {@link Component#setBounds(int, int, int, int)}.
- *
- * @param x the X coordinate of the upper left corner of the component
- * @param y the Y coordinate of the upper left corner of the component
- * @param width the width of the component
- * @param height the height of the component
- */
- void setBounds(int x, int y, int width, int height);
-
- /**
- * Sets the cursor of the component. This is called by
- * {@link Component#setCursor(Cursor)}.
- *
- * @specnote Part of the earlier 1.1 API, apparently no longer needed.
- */
- void setCursor(Cursor cursor);
-
- /**
- * Sets the enabled/disabled state of this component. This is called by
- * {@link Component#setEnabled(boolean)}.
- *
- * @param enabled <code>true</code> to enable the component,
- * <code>false</code> to disable it
- */
- void setEnabled(boolean enabled);
-
- /**
- * Sets the font of the component. This is called by
- * {@link Component#setFont(Font)}.
- *
- * @param font the font to set
- */
- void setFont(Font font);
-
- /**
- * Sets the foreground color of the component. This is called by
- * {@link Component#setForeground(Color)}.
- *
- * @param color the foreground color to set
- */
- void setForeground(Color color);
-
- /**
- * Sets the visibility state of the component. This is called by
- * {@link Component#setVisible(boolean)}.
- *
- * @param visible <code>true</code> to make the component visible,
- * <code>false</code> to make it invisible
- */
- void setVisible(boolean visible);
-
- /**
- * Makes the component visible. This is called by {@link Component#show()}.
- */
- void show();
-
- /**
- * Get the graphics configuration of the component. The color model
- * of the component can be derived from the configuration.
- *
- * @return the graphics configuration of the component
- */
- GraphicsConfiguration getGraphicsConfiguration();
-
- /**
- * Part of an older API, no longer needed.
- */
- void setEventMask(long mask);
-
- /**
- * Returns <code>true</code> if this component has been obscured,
- * <code>false</code> otherwise. This will only work if
- * {@link #canDetermineObscurity()} also returns <code>true</code>.
- *
- * @return <code>true</code> if this component has been obscured,
- * <code>false</code> otherwise.
- */
- boolean isObscured();
-
- /**
- * Returns <code>true</code> if this component peer can determine if the
- * component has been obscured, <code>false</code> otherwise.
- *
- * @return <code>true</code> if this component peer can determine if the
- * component has been obscured, <code>false</code> otherwise
- */
- boolean canDetermineObscurity();
-
- /**
- * Coalesces the specified paint event.
- *
- * @param e the paint event
- */
- void coalescePaintEvent(PaintEvent e);
-
- /**
- * Updates the cursor.
- */
- void updateCursorImmediately();
-
- /**
- * Returns true, if this component can handle wheel scrolling,
- * <code>false</code> otherwise.
- *
- * @return true, if this component can handle wheel scrolling,
- * <code>false</code> otherwise
- */
- boolean handlesWheelScrolling();
-
- /**
- * A convenience method that creates a volatile image. The volatile
- * image is created on the screen device on which this component is
- * displayed, in the device's current graphics configuration.
- *
- * @param width width of the image
- * @param height height of the image
- *
- * @see VolatileImage
- *
- * @since 1.2
- */
- VolatileImage createVolatileImage(int width, int height);
-
- /**
- * Create a number of image buffers that implement a buffering
- * strategy according to the given capabilities.
- *
- * @param numBuffers the number of buffers
- * @param caps the buffering capabilities
- *
- * @throws AWTException if the specified buffering strategy is not
- * implemented
- *
- * @since 1.2
- */
- void createBuffers(int numBuffers, BufferCapabilities caps)
- throws AWTException;
-
- /**
- * Return the back buffer of this component.
- *
- * @return the back buffer of this component.
- *
- * @since 1.2
- */
- Image getBackBuffer();
-
- /**
- * Perform a page flip, leaving the contents of the back buffer in
- * the specified state.
- *
- * @param contents the state in which to leave the back buffer
- *
- * @since 1.2
- */
- void flip(BufferCapabilities.FlipContents contents);
-
- /**
- * Destroy the resources created by createBuffers.
- *
- * @since 1.2
- */
- void destroyBuffers();
-
- /**
- * Get the bounds of this component peer.
- *
- * @return component peer bounds
- * @since 1.5
- */
- Rectangle getBounds();
-
- /**
- * Reparent this component under another container.
- *
- * @param parent
- * @since 1.5
- */
- void reparent(ContainerPeer parent);
-
- /**
- * Set the bounds of this component peer.
- *
- * @param x the new x co-ordinate
- * @param y the new y co-ordinate
- * @param width the new width
- * @param height the new height
- * @param z the new stacking level
- * @since 1.5
- */
- void setBounds (int x, int y, int width, int height, int z);
-
- /**
- * Check if this component supports being reparented.
- *
- * @return true if this component can be reparented,
- * false otherwise.
- * @since 1.5
- */
- boolean isReparentSupported();
-
- /**
- * Layout this component peer.
- *
- * @since 1.5
- */
- void layout();
-
-
- /**
- * Requests the focus on the component.
- */
- boolean requestFocus(Component lightweightChild, boolean temporary,
- boolean focusedWindowChangeAllowed, long time,
- CausedFocusEvent.Cause cause);
-
-}