summaryrefslogtreecommitdiffstats
path: root/libjava/classpath/java/awt/TextField.java
diff options
context:
space:
mode:
authormark <mark@138bc75d-0d04-0410-961f-82ee72b054a4>2006-08-14 23:12:35 +0000
committermark <mark@138bc75d-0d04-0410-961f-82ee72b054a4>2006-08-14 23:12:35 +0000
commitffde862e033a0825e1e9972a89c0f1f80b261a8e (patch)
tree97037d2c09c8384d80531f67ec36a01205df6bdb /libjava/classpath/java/awt/TextField.java
parentb415ff10527e977c3758234fd930e2c027bfa17d (diff)
downloadppe42-gcc-ffde862e033a0825e1e9972a89c0f1f80b261a8e.tar.gz
ppe42-gcc-ffde862e033a0825e1e9972a89c0f1f80b261a8e.zip
2006-08-14 Mark Wielaard <mark@klomp.org>
Imported GNU Classpath 0.92 * HACKING: Add more importing hints. Update automake version requirement. * configure.ac (gconf-peer): New enable AC argument. Add --disable-gconf-peer and --enable-default-preferences-peer to classpath configure when gconf is disabled. * scripts/makemake.tcl: Set gnu/java/util/prefs/gconf and gnu/java/awt/dnd/peer/gtk to bc. Classify gnu/java/security/Configuration.java as generated source file. * gnu/java/lang/management/VMGarbageCollectorMXBeanImpl.java, gnu/java/lang/management/VMMemoryPoolMXBeanImpl.java, gnu/java/lang/management/VMClassLoadingMXBeanImpl.java, gnu/java/lang/management/VMRuntimeMXBeanImpl.java, gnu/java/lang/management/VMMemoryManagerMXBeanImpl.java, gnu/java/lang/management/VMThreadMXBeanImpl.java, gnu/java/lang/management/VMMemoryMXBeanImpl.java, gnu/java/lang/management/VMCompilationMXBeanImpl.java: New VM stub classes. * java/lang/management/VMManagementFactory.java: Likewise. * java/net/VMURLConnection.java: Likewise. * gnu/java/nio/VMChannel.java: Likewise. * java/lang/Thread.java (getState): Add stub implementation. * java/lang/Class.java (isEnum): Likewise. * java/lang/Class.h (isEnum): Likewise. * gnu/awt/xlib/XToolkit.java (getClasspathTextLayoutPeer): Removed. * javax/naming/spi/NamingManager.java: New override for StackWalker functionality. * configure, sources.am, Makefile.in, gcj/Makefile.in, include/Makefile.in, testsuite/Makefile.in: Regenerated. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@116139 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava/classpath/java/awt/TextField.java')
-rw-r--r--libjava/classpath/java/awt/TextField.java738
1 files changed, 336 insertions, 402 deletions
diff --git a/libjava/classpath/java/awt/TextField.java b/libjava/classpath/java/awt/TextField.java
index 23d3d918ff4..b76f393a0b6 100644
--- a/libjava/classpath/java/awt/TextField.java
+++ b/libjava/classpath/java/awt/TextField.java
@@ -1,5 +1,5 @@
/* TextField.java -- A one line text entry field
- Copyright (C) 1999, 2002, 2004 Free Software Foundation, Inc.
+ Copyright (C) 1999, 2002, 2004, 2006, Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -48,450 +48,369 @@ import javax.accessibility.AccessibleContext;
import javax.accessibility.AccessibleStateSet;
/**
- * This class implements a single line text entry field widget
- *
- * @author Aaron M. Renn (arenn@urbanophile.com)
- */
-public class TextField extends TextComponent
-{
-
-/*
- * Static Variables
- */
-
-// Serialization constant
-private static final long serialVersionUID = -2966288784432217853L;
-
-/*************************************************************************/
-
-/*
- * Instance Variables
- */
-
-/**
- * @serial The number of columns in the text entry field.
- */
-private int columns;
-
-/**
- * @serial The character that is echoed when doing protected input
- */
-private char echoChar;
-
-// List of registered ActionListener's for this object.
-private ActionListener action_listeners;
-
-/*************************************************************************/
-
-/*
- * Constructors
- */
-
-/**
- * Initializes a new instance of <code>TextField</code> that is empty
- * and has one column.
+ * This class implements a single line text entry field widget
*
- * @exception HeadlessException If GraphicsEnvironment.isHeadless() is true,
- */
-public
-TextField()
-{
- this("", 1);
-}
-
-/*************************************************************************/
-
-/**
- * Initializes a new instance of <code>TextField</code> containing
- * the specified text. The number of columns will be equal to the
- * length of the text string.
- *
- * @param text The text to display in the field.
- *
- * @exception HeadlessException If GraphicsEnvironment.isHeadless() is true,
- */
-public
-TextField(String text)
-{
- this(text, text.length());
-}
-
-/*************************************************************************/
-
-/**
- * Initializes a new instance of <code>TextField</code> that is empty
- * and has the specified number of columns.
- *
- * @param columns The number of columns in the text field.
- *
- * @exception HeadlessException If GraphicsEnvironment.isHeadless() is true,
- */
-public
-TextField(int columns)
-{
- this("", columns);
-}
-
-/*************************************************************************/
-
-/**
- * Initializes a new instance of <code>TextField</code> with the
- * specified text and number of columns.
- *
- * @param text The text to display in the field.
- * @param columns The number of columns in the field.
- *
- * @exception HeadlessException If GraphicsEnvironment.isHeadless() is true,
- */
-public
-TextField(String text, int columns)
-{
- super(text);
- this.columns = columns;
-
- if (GraphicsEnvironment.isHeadless())
- throw new HeadlessException ();
-}
-
-/*************************************************************************/
-
-/*
- * Instance Methods
+ * @author Aaron M. Renn (arenn@urbanophile.com)
*/
-
-/**
- * Returns the number of columns in the field.
- *
- * @return The number of columns in the field.
- */
-public int
-getColumns()
-{
- return(columns);
-}
-
-/*************************************************************************/
-
-/**
- * Sets the number of columns in this field to the specified value.
- *
- * @param columns The new number of columns in the field.
- *
- * @exception IllegalArgumentException If columns is less than zero.
- */
-public synchronized void
-setColumns(int columns)
-{
- if (columns < 0)
- throw new IllegalArgumentException("Value is less than zero: " +
- columns);
-
- this.columns = columns;
- // FIXME: How to we communicate this to our peer?
-}
-
-/*************************************************************************/
-
-/**
- * Returns the character that is echoed to the screen when a text
- * field is protected (such as when a password is being entered).
- *
- * @return The echo character for this text field.
- */
-public char
-getEchoChar()
-{
- return(echoChar);
-}
-
-/*************************************************************************/
-
-/**
- * Sets the character that is echoed when protected input such as
- * a password is displayed.
- *
- * @param echoChar The new echo character.
- */
-public void
-setEchoChar(char echoChar)
+public class TextField extends TextComponent
{
- setEchoCharacter (echoChar);
-}
-
-/*************************************************************************/
+
+ /**
+ * The number used to generate the name returned by getName.
+ */
+ private static transient long next_textfield_number;
-/**
- * Sets the character that is echoed when protected input such as
- * a password is displayed.
- *
- * @param echoChar The new echo character.
- *
- * @deprecated This method is deprecated in favor of
- * <code>setEchoChar()</code>
- */
-public void
-setEchoCharacter(char echoChar)
-{
- this.echoChar = echoChar;
+
+ private static final long serialVersionUID = -2966288784432217853L;
- TextFieldPeer peer = (TextFieldPeer) getPeer ();
- if (peer != null)
- peer.setEchoChar (echoChar);
-}
-/*************************************************************************/
+ /**
+ * @serial The number of columns in the text entry field.
+ */
+ private int columns;
-/**
- * Tests whether or not this text field has an echo character set
- * so that characters the user type are not echoed to the screen.
- *
- * @return <code>true</code> if an echo character is set,
- * <code>false</code> otherwise.
- */
-public boolean
-echoCharIsSet()
-{
- if (echoChar == '\u0000')
- return(false);
- else
- return(true);
-}
+ /**
+ * @serial The character that is echoed when doing protected input
+ */
+ private char echoChar;
-/*************************************************************************/
+ // List of registered ActionListener's for this object.
+ private ActionListener action_listeners;
-/**
- * Returns the minimum size for this text field.
- *
- * @return The minimum size for this text field.
- */
-public Dimension
-getMinimumSize()
-{
- return getMinimumSize (getColumns ());
-}
+ /**
+ * Initializes a new instance of <code>TextField</code> that is empty
+ * and has one column.
+ *
+ * @exception HeadlessException If GraphicsEnvironment.isHeadless() is true,
+ */
+ public TextField()
+ {
+ this("", 0);
+ }
-/*************************************************************************/
+ /**
+ * Initializes a new instance of <code>TextField</code> containing
+ * the specified text. The number of columns will be equal to the
+ * length of the text string.
+ *
+ * @param text The text to display in the field.
+ *
+ * @exception HeadlessException If GraphicsEnvironment.isHeadless() is true,
+ */
+ public TextField(String text)
+ {
+ this(text, (text == null) ? 0 : text.length());
+ }
-/**
- * Returns the minimum size of a text field with the specified number
- * of columns.
- *
- * @param columns The number of columns to get the minimum size for.
- */
-public Dimension
-getMinimumSize(int columns)
-{
- return minimumSize (columns);
-}
+ /**
+ * Initializes a new instance of <code>TextField</code> that is empty
+ * and has the specified number of columns.
+ *
+ * @param columns The number of columns in the text field.
+ *
+ * @exception HeadlessException If GraphicsEnvironment.isHeadless() is true,
+ */
+ public TextField(int columns)
+ {
+ this("", columns);
+ }
-/*************************************************************************/
+ /**
+ * Initializes a new instance of <code>TextField</code> with the
+ * specified text and number of columns.
+ *
+ * @param text The text to display in the field.
+ * @param columns The number of columns in the field.
+ *
+ * @exception HeadlessException If GraphicsEnvironment.isHeadless() is true,
+ */
+ public TextField(String text, int columns)
+ {
+ super(text);
+
+ if (columns < 0)
+ this.columns = 0;
+ else
+ this.columns = columns;
-/**
- * Returns the minimum size for this text field.
- *
- * @return The minimum size for this text field.
- *
- * @deprecated This method is deprecated in favor of
- * <code>getMinimumSize()</code>.
- */
-public Dimension
-minimumSize()
-{
- return minimumSize (getColumns ());
-}
+ if (GraphicsEnvironment.isHeadless())
+ throw new HeadlessException ();
+ }
-/*************************************************************************/
+ /**
+ * Returns the number of columns in the field.
+ *
+ * @return The number of columns in the field.
+ */
+ public int getColumns()
+ {
+ return(columns);
+ }
-/**
- * Returns the minimum size of a text field with the specified number
- * of columns.
- *
- * @param columns The number of columns to get the minimum size for.
- *
- * @deprecated This method is deprecated in favor of
- * <code>getMinimumSize(int)</code>.
- */
-public Dimension
-minimumSize(int columns)
-{
- TextFieldPeer peer = (TextFieldPeer) getPeer ();
- if (peer == null)
- return null; // FIXME: What do we do if there is no peer?
+ /**
+ * Sets the number of columns in this field to the specified value.
+ *
+ * @param columns The new number of columns in the field.
+ *
+ * @exception IllegalArgumentException If columns is less than zero.
+ */
+ public synchronized void setColumns(int columns)
+ {
+ if (columns < 0)
+ throw new IllegalArgumentException("Value is less than zero: " +
+ columns);
- return peer.getMinimumSize (columns);
-}
+ this.columns = columns;
+ // FIXME: How to we communicate this to our peer?
+ }
-/*************************************************************************/
+ /**
+ * Returns the character that is echoed to the screen when a text
+ * field is protected (such as when a password is being entered).
+ *
+ * @return The echo character for this text field.
+ */
+ public char getEchoChar()
+ {
+ return(echoChar);
+ }
-/**
- * Returns the preferred size for this text field.
- *
- * @return The preferred size for this text field.
- */
-public Dimension
-getPreferredSize()
-{
- return getPreferredSize (getColumns ());
-}
+ /**
+ * Sets the character that is echoed when protected input such as
+ * a password is displayed.
+ *
+ * @param echoChar The new echo character.
+ */
+ public void setEchoChar(char echoChar)
+ {
+ setEchoCharacter(echoChar);
+ }
-/*************************************************************************/
+ /**
+ * Sets the character that is echoed when protected input such as
+ * a password is displayed.
+ *
+ * @param echoChar The new echo character.
+ *
+ * @deprecated This method is deprecated in favor of
+ * <code>setEchoChar()</code>
+ */
+ public void setEchoCharacter(char echoChar)
+ {
+ this.echoChar = echoChar;
-/**
- * Returns the preferred size of a text field with the specified number
- * of columns.
- *
- * @param columns The number of columns to get the preferred size for.
- */
-public Dimension
-getPreferredSize(int columns)
-{
- return preferredSize (columns);
-}
+ TextFieldPeer peer = (TextFieldPeer) getPeer ();
+ if (peer != null)
+ peer.setEchoChar (echoChar);
+ }
-/*************************************************************************/
+ /**
+ * Tests whether or not this text field has an echo character set
+ * so that characters the user type are not echoed to the screen.
+ *
+ * @return <code>true</code> if an echo character is set,
+ * <code>false</code> otherwise.
+ */
+ public boolean echoCharIsSet()
+ {
+ if (echoChar == '\u0000')
+ return(false);
+ else
+ return(true);
+ }
-/**
- * Returns the preferred size for this text field.
- *
- * @return The preferred size for this text field.
- *
- * @deprecated This method is deprecated in favor of
- * <code>getPreferredSize()</code>.
- */
-public Dimension
-preferredSize()
-{
- return preferredSize (getColumns ());
-}
+ /**
+ * Returns the minimum size for this text field.
+ *
+ * @return The minimum size for this text field.
+ */
+ public Dimension getMinimumSize()
+ {
+ return getMinimumSize (getColumns ());
+ }
-/*************************************************************************/
+ /**
+ * Returns the minimum size of a text field with the specified number
+ * of columns.
+ *
+ * @param columns The number of columns to get the minimum size for.
+ */
+ public Dimension getMinimumSize(int columns)
+ {
+ return minimumSize(columns);
+ }
-/**
- * Returns the preferred size of a text field with the specified number
- * of columns.
- *
- * @param columns The number of columns to get the preferred size for.
- *
- * @deprecated This method is deprecated in favor of
- * <code>getPreferredSize(int)</code>.
- */
-public Dimension
-preferredSize(int columns)
-{
- TextFieldPeer peer = (TextFieldPeer) getPeer ();
- if (peer == null)
- return new Dimension (0, 0);
+ /**
+ * Returns the minimum size for this text field.
+ *
+ * @return The minimum size for this text field.
+ *
+ * @deprecated This method is deprecated in favor of
+ * <code>getMinimumSize()</code>.
+ */
+ public Dimension minimumSize()
+ {
+ return minimumSize(getColumns ());
+ }
- return peer.getPreferredSize (columns);
-}
+ /**
+ * Returns the minimum size of a text field with the specified number
+ * of columns.
+ *
+ * @param columns The number of columns to get the minimum size for.
+ *
+ * @deprecated This method is deprecated in favor of
+ * <code>getMinimumSize(int)</code>.
+ */
+ public Dimension minimumSize(int columns)
+ {
+ TextFieldPeer peer = (TextFieldPeer) getPeer ();
+ if (peer == null)
+ return null; // FIXME: What do we do if there is no peer?
-/*************************************************************************/
+ return peer.getMinimumSize (columns);
+ }
-/**
- * Notifies this object that it should create its native peer.
- */
-public void
-addNotify()
-{
- if (getPeer() != null)
- return;
+ /**
+ * Returns the preferred size for this text field.
+ *
+ * @return The preferred size for this text field.
+ */
+ public Dimension getPreferredSize()
+ {
+ return getPreferredSize(getColumns ());
+ }
- setPeer((ComponentPeer)getToolkit().createTextField(this));
- super.addNotify();
-}
+ /**
+ * Returns the preferred size of a text field with the specified number
+ * of columns.
+ *
+ * @param columns The number of columns to get the preferred size for.
+ */
+ public Dimension getPreferredSize(int columns)
+ {
+ return preferredSize(columns);
+ }
-/*************************************************************************/
+ /**
+ * Returns the preferred size for this text field.
+ *
+ * @return The preferred size for this text field.
+ *
+ * @deprecated This method is deprecated in favor of
+ * <code>getPreferredSize()</code>.
+ */
+ public Dimension preferredSize()
+ {
+ return preferredSize(getColumns ());
+ }
-/**
- * Addes a new listener to the list of action listeners for this
- * object.
- *
- * @param listener The listener to add to the list.
- */
-public synchronized void
-addActionListener(ActionListener listener)
-{
- action_listeners = AWTEventMulticaster.add(action_listeners, listener);
+ /**
+ * Returns the preferred size of a text field with the specified number
+ * of columns.
+ *
+ * @param columns The number of columns to get the preferred size for.
+ *
+ * @deprecated This method is deprecated in favor of
+ * <code>getPreferredSize(int)</code>.
+ */
+ public Dimension preferredSize(int columns)
+ {
+ TextFieldPeer peer = (TextFieldPeer) getPeer ();
+ if (peer == null)
+ return new Dimension (0, 0);
- enableEvents(AWTEvent.ACTION_EVENT_MASK);
-}
+ return peer.getPreferredSize (columns);
+ }
-/*************************************************************************/
+ /**
+ * Notifies this object that it should create its native peer.
+ */
+ public void addNotify()
+ {
+ if (getPeer() != null)
+ return;
-/**
- * Removes the specified listener from the list of action listeners
- * for this object.
- *
- * @param listener The listener to remove from the list.
- */
-public synchronized void
-removeActionListener(ActionListener listener)
-{
- action_listeners = AWTEventMulticaster.remove(action_listeners, listener);
-}
+ setPeer((ComponentPeer)getToolkit().createTextField(this));
+ super.addNotify();
+ }
-/*************************************************************************/
+ /**
+ * Addes a new listener to the list of action listeners for this
+ * object.
+ *
+ * @param listener The listener to add to the list.
+ */
+ public synchronized void addActionListener(ActionListener listener)
+ {
+ action_listeners = AWTEventMulticaster.add(action_listeners, listener);
-/**
- * Processes the specified event. If the event is an instance of
- * <code>ActionEvent</code> then <code>processActionEvent()</code> is
- * called to process it, otherwise the event is sent to the
- * superclass.
- *
- * @param event The event to process.
- */
-protected void
-processEvent(AWTEvent event)
-{
- if (event instanceof ActionEvent)
- processActionEvent((ActionEvent)event);
- else
- super.processEvent(event);
-}
+ enableEvents(AWTEvent.ACTION_EVENT_MASK);
+ }
-/*************************************************************************/
+ /**
+ * Removes the specified listener from the list of action listeners
+ * for this object.
+ *
+ * @param listener The listener to remove from the list.
+ */
+ public synchronized void removeActionListener(ActionListener listener)
+ {
+ action_listeners = AWTEventMulticaster.remove(action_listeners, listener);
+ }
-/**
- * Processes an action event by calling any registered listeners.
- * Note to subclasses: This method is not called unless action events
- * are enabled on this object. This will be true if any listeners
- * are registered, or if action events were specifically enabled
- * using <code>enableEvents()</code>.
- *
- * @param event The event to process.
- */
-protected void
-processActionEvent(ActionEvent event)
-{
- if (action_listeners != null)
- action_listeners.actionPerformed(event);
-}
+ /**
+ * Processes the specified event. If the event is an instance of
+ * <code>ActionEvent</code> then <code>processActionEvent()</code> is
+ * called to process it, otherwise the event is sent to the
+ * superclass.
+ *
+ * @param event The event to process.
+ */
+ protected void processEvent(AWTEvent event)
+ {
+ if (event instanceof ActionEvent)
+ processActionEvent((ActionEvent)event);
+ else
+ super.processEvent(event);
+ }
-void
-dispatchEventImpl(AWTEvent e)
-{
- if (e.id <= ActionEvent.ACTION_LAST
- && e.id >= ActionEvent.ACTION_FIRST
- && (action_listeners != null
- || (eventMask & AWTEvent.ACTION_EVENT_MASK) != 0))
- processEvent(e);
- else
- super.dispatchEventImpl(e);
-}
+ /**
+ * Processes an action event by calling any registered listeners.
+ * Note to subclasses: This method is not called unless action events
+ * are enabled on this object. This will be true if any listeners
+ * are registered, or if action events were specifically enabled
+ * using <code>enableEvents()</code>.
+ *
+ * @param event The event to process.
+ */
+ protected void processActionEvent(ActionEvent event)
+ {
+ if (action_listeners != null)
+ action_listeners.actionPerformed(event);
+ }
-/*************************************************************************/
+ void dispatchEventImpl(AWTEvent e)
+ {
+ if (e.id <= ActionEvent.ACTION_LAST
+ && e.id >= ActionEvent.ACTION_FIRST
+ && (action_listeners != null
+ || (eventMask & AWTEvent.ACTION_EVENT_MASK) != 0))
+ processEvent(e);
+ else
+ super.dispatchEventImpl(e);
+ }
-/**
+ /**
* Returns a debug string for this object.
*
* @return A debug string for this object.
*/
-protected String
-paramString()
-{
- return(getClass().getName() + "(columns=" + getColumns() + ",echoChar=" +
- getEchoChar());
-}
+ protected String paramString()
+ {
+ return(getClass().getName() + "(columns=" + getColumns() + ",echoChar=" +
+ getEchoChar());
+ }
/**
* Returns an array of all the objects currently registered as FooListeners
@@ -521,6 +440,21 @@ paramString()
{
return (ActionListener[]) getListeners (ActionListener.class);
}
+
+ /**
+ * Generate a unique name for this <code>TextField</code>.
+ *
+ * @return A unique name for this <code>TextField</code>.
+ */
+ String generateName()
+ {
+ return "textfield" + getUniqueLong();
+ }
+
+ private static synchronized long getUniqueLong()
+ {
+ return next_textfield_number++;
+ }
protected class AccessibleAWTTextField extends AccessibleAWTTextComponent
{
@@ -541,4 +475,4 @@ paramString()
return new AccessibleAWTTextField();
}
-} // class TextField
+}
OpenPOWER on IntegriCloud