< prev index next >

src/java.desktop/share/classes/javax/swing/JTextField.java

Print this page

        

@@ -38,59 +38,59 @@
 import java.io.ObjectInputStream;
 import java.io.IOException;
 import java.io.Serializable;
 
 /**
- * <code>JTextField</code> is a lightweight component that allows the editing
+ * {@code JTextField} is a lightweight component that allows the editing
  * of a single line of text.
  * For information on and examples of using text fields,
  * see
  * <a href="http://docs.oracle.com/javase/tutorial/uiswing/components/textfield.html">How to Use Text Fields</a>
  * in <em>The Java Tutorial.</em>
  *
  * <p>
- * <code>JTextField</code> is intended to be source-compatible
- * with <code>java.awt.TextField</code> where it is reasonable to do so.  This
- * component has capabilities not found in the <code>java.awt.TextField</code>
+ * {@code JTextField} is intended to be source-compatible
+ * with {@code java.awt.TextField} where it is reasonable to do so.  This
+ * component has capabilities not found in the {@code java.awt.TextField}
  * class.  The superclass should be consulted for additional capabilities.
  * <p>
- * <code>JTextField</code> has a method to establish the string used as the
+ * {@code JTextField} has a method to establish the string used as the
  * command string for the action event that gets fired.  The
- * <code>java.awt.TextField</code> used the text of the field as the command
- * string for the <code>ActionEvent</code>.
- * <code>JTextField</code> will use the command
- * string set with the <code>setActionCommand</code> method if not <code>null</code>,
+ * {@code java.awt.TextField} used the text of the field as the command
+ * string for the {@code ActionEvent}.
+ * {@code JTextField} will use the command
+ * string set with the {@code setActionCommand} method if not {@code null},
  * otherwise it will use the text of the field as a compatibility with
- * <code>java.awt.TextField</code>.
+ * {@code java.awt.TextField}.
  * <p>
- * The method <code>setEchoChar</code> and <code>getEchoChar</code>
+ * The method {@code setEchoChar} and {@code getEchoChar}
  * are not provided directly to avoid a new implementation of a
  * pluggable look-and-feel inadvertently exposing password characters.
- * To provide password-like services a separate class <code>JPasswordField</code>
- * extends <code>JTextField</code> to provide this service with an independently
+ * To provide password-like services a separate class {@code JPasswordField}
+ * extends {@code JTextField} to provide this service with an independently
  * pluggable look-and-feel.
  * <p>
- * The <code>java.awt.TextField</code> could be monitored for changes by adding
- * a <code>TextListener</code> for <code>TextEvent</code>'s.
- * In the <code>JTextComponent</code> based
+ * The {@code java.awt.TextField} could be monitored for changes by adding
+ * a {@code TextListener} for {@code TextEvent}'s.
+ * In the {@code JTextComponent} based
  * components, changes are broadcasted from the model via a
- * <code>DocumentEvent</code> to <code>DocumentListeners</code>.
- * The <code>DocumentEvent</code> gives
+ * {@code DocumentEvent} to {@code DocumentListeners}.
+ * The {@code DocumentEvent} gives
  * the location of the change and the kind of change if desired.
  * The code fragment might look something like:
  * <pre><code>
  * &nbsp;   DocumentListener myListener = ??;
  * &nbsp;   JTextField myArea = ??;
  * &nbsp;   myArea.getDocument().addDocumentListener(myListener);
  * </code></pre>
  * <p>
- * The horizontal alignment of <code>JTextField</code> can be set to be left
+ * The horizontal alignment of {@code JTextField} can be set to be left
  * justified, leading justified, centered, right justified or trailing justified.
  * Right/trailing justification is useful if the required size
  * of the field text is smaller than the size allocated to it.
- * This is determined by the <code>setHorizontalAlignment</code>
- * and <code>getHorizontalAlignment</code> methods.  The default
+ * This is determined by the {@code setHorizontalAlignment}
+ * and {@code getHorizontalAlignment} methods.  The default
  * is to be leading justified.
  * <p>
  * How the text field consumes VK_ENTER events depends
  * on whether the text field has any action listeners.
  * If so, then VK_ENTER results in the listeners

@@ -147,11 +147,11 @@
  * Serialized objects of this class will not be compatible with
  * future Swing releases. The current serialization support is
  * appropriate for short term storage or RMI between applications running
  * the same version of Swing.  As of 1.4, support for long term storage
  * of all JavaBeans&trade;
- * has been added to the <code>java.beans</code> package.
+ * has been added to the {@code java.beans} package.
  * Please see {@link java.beans.XMLEncoder}.
  *
  * @beaninfo
  *   attribute: isContainer false
  * description: A component which allows for the editing of a single line of text.

@@ -164,34 +164,34 @@
  */
 @SuppressWarnings("serial") // Same-version serialization only
 public class JTextField extends JTextComponent implements SwingConstants {
 
     /**
-     * Constructs a new <code>TextField</code>.  A default model is created,
-     * the initial string is <code>null</code>,
+     * Constructs a new {@code TextField}.  A default model is created,
+     * the initial string is {@code null},
      * and the number of columns is set to 0.
      */
     public JTextField() {
         this(null, null, 0);
     }
 
     /**
-     * Constructs a new <code>TextField</code> initialized with the
+     * Constructs a new {@code TextField} initialized with the
      * specified text. A default model is created and the number of
      * columns is 0.
      *
-     * @param text the text to be displayed, or <code>null</code>
+     * @param text the text to be displayed, or {@code null}
      */
     public JTextField(String text) {
         this(null, text, 0);
     }
 
     /**
-     * Constructs a new empty <code>TextField</code> with the specified
+     * Constructs a new empty {@code TextField} with the specified
      * number of columns.
      * A default model is created and the initial string is set to
-     * <code>null</code>.
+     * {@code null}.
      *
      * @param columns  the number of columns to use to calculate
      *   the preferred width; if columns is set to zero, the
      *   preferred width will be whatever naturally results from
      *   the component implementation

@@ -199,38 +199,38 @@
     public JTextField(int columns) {
         this(null, null, columns);
     }
 
     /**
-     * Constructs a new <code>TextField</code> initialized with the
+     * Constructs a new {@code TextField} initialized with the
      * specified text and columns.  A default model is created.
      *
-     * @param text the text to be displayed, or <code>null</code>
+     * @param text the text to be displayed, or {@code null}
      * @param columns  the number of columns to use to calculate
      *   the preferred width; if columns is set to zero, the
      *   preferred width will be whatever naturally results from
      *   the component implementation
      */
     public JTextField(String text, int columns) {
         this(null, text, columns);
     }
 
     /**
-     * Constructs a new <code>JTextField</code> that uses the given text
+     * Constructs a new {@code JTextField} that uses the given text
      * storage model and the given number of columns.
      * This is the constructor through which the other constructors feed.
-     * If the document is <code>null</code>, a default model is created.
+     * If the document is {@code null}, a default model is created.
      *
-     * @param doc  the text storage to use; if this is <code>null</code>,
+     * @param doc  the text storage to use; if this is {@code null},
      *          a default will be provided by calling the
-     *          <code>createDefaultModel</code> method
-     * @param text  the initial string to display, or <code>null</code>
+     *          {@code createDefaultModel} method
+     * @param text  the initial string to display, or {@code null}
      * @param columns  the number of columns to use to calculate
-     *   the preferred width &gt;= 0; if <code>columns</code>
+     *   the preferred width &gt;= 0; if {@code columns}
      *   is set to zero, the preferred width will be whatever
      *   naturally results from the component implementation
-     * @exception IllegalArgumentException if <code>columns</code> &lt; 0
+     * @exception IllegalArgumentException if {@code columns < 0}
      */
     public JTextField(Document doc, String text, int columns) {
         if (columns < 0) {
             throw new IllegalArgumentException("columns less than zero.");
         }

@@ -277,17 +277,17 @@
         }
         super.setDocument(doc);
     }
 
     /**
-     * Calls to <code>revalidate</code> that come from within the
+     * Calls to {@code revalidate} that come from within the
      * textfield itself will
      * be handled by validating the textfield, unless the textfield
-     * is contained within a <code>JViewport</code>,
+     * is contained within a {@code JViewport},
      * in which case this returns false.
      *
-     * @return if the parent of this textfield is a <code>JViewPort</code>
+     * @return if the parent of this textfield is a {@code JViewPort}
      *          return false, otherwise return true
      *
      * @see JComponent#revalidate
      * @see JComponent#isValidateRoot
      * @see java.awt.Container#isValidateRoot

@@ -300,15 +300,15 @@
 
     /**
      * Returns the horizontal alignment of the text.
      * Valid keys are:
      * <ul>
-     * <li><code>JTextField.LEFT</code>
-     * <li><code>JTextField.CENTER</code>
-     * <li><code>JTextField.RIGHT</code>
-     * <li><code>JTextField.LEADING</code>
-     * <li><code>JTextField.TRAILING</code>
+     * <li>{@code JTextField.LEFT}
+     * <li>{@code JTextField.CENTER}
+     * <li>{@code JTextField.RIGHT}
+     * <li>{@code JTextField.LEADING}
+     * <li>{@code JTextField.TRAILING}
      * </ul>
      *
      * @return the horizontal alignment
      */
     public int getHorizontalAlignment() {

@@ -317,22 +317,22 @@
 
     /**
      * Sets the horizontal alignment of the text.
      * Valid keys are:
      * <ul>
-     * <li><code>JTextField.LEFT</code>
-     * <li><code>JTextField.CENTER</code>
-     * <li><code>JTextField.RIGHT</code>
-     * <li><code>JTextField.LEADING</code>
-     * <li><code>JTextField.TRAILING</code>
+     * <li>{@code JTextField.LEFT}
+     * <li>{@code JTextField.CENTER}
+     * <li>{@code JTextField.RIGHT}
+     * <li>{@code JTextField.LEADING}
+     * <li>{@code JTextField.TRAILING}
      * </ul>
-     * <code>invalidate</code> and <code>repaint</code> are called when the
+     * {@code invalidate} and {@code repaint} are called when the
      * alignment is set,
-     * and a <code>PropertyChange</code> event ("horizontalAlignment") is fired.
+     * and a {@code PropertyChange} event ("horizontalAlignment") is fired.
      *
      * @param alignment the alignment
-     * @exception IllegalArgumentException if <code>alignment</code>
+     * @exception IllegalArgumentException if {@code alignment}
      *  is not a valid key
      * @beaninfo
      *   preferred: true
      *       bound: true
      * description: Set the field alignment to LEFT, CENTER, RIGHT,

@@ -356,33 +356,33 @@
     }
 
     /**
      * Creates the default implementation of the model
      * to be used at construction if one isn't explicitly
-     * given.  An instance of <code>PlainDocument</code> is returned.
+     * given.  An instance of {@code PlainDocument} is returned.
      *
      * @return the default model implementation
      */
     protected Document createDefaultModel() {
         return new PlainDocument();
     }
 
     /**
-     * Returns the number of columns in this <code>TextField</code>.
+     * Returns the number of columns in this {@code TextField}.
      *
      * @return the number of columns &gt;= 0
      */
     public int getColumns() {
         return columns;
     }
 
     /**
-     * Sets the number of columns in this <code>TextField</code>,
+     * Sets the number of columns in this {@code TextField},
      * and then invalidate the layout.
      *
      * @param columns the number of columns &gt;= 0
-     * @exception IllegalArgumentException if <code>columns</code>
+     * @exception IllegalArgumentException if {@code columns}
      *          is less than 0
      * @beaninfo
      * description: the number of columns preferred for display
      */
     public void setColumns(int columns) {

@@ -413,12 +413,12 @@
         }
         return columnWidth;
     }
 
     /**
-     * Returns the preferred size <code>Dimensions</code> needed for this
-     * <code>TextField</code>.  If a non-zero number of columns has been
+     * Returns the preferred size {@code Dimensions} needed for this
+     * {@code TextField}.  If a non-zero number of columns has been
      * set, the width is set to the columns multiplied by
      * the column width.
      *
      * @return the dimension of this textfield
      */

@@ -433,11 +433,11 @@
     }
 
     /**
      * Sets the current font.  This removes cached row height and column
      * width so the new font will be reflected.
-     * <code>revalidate</code> is called after setting the font.
+     * {@code revalidate} is called after setting the font.
      *
      * @param f the new font
      */
     public void setFont(Font f) {
         super.setFont(f);

@@ -467,14 +467,14 @@
             listenerList.remove(ActionListener.class, l);
         }
     }
 
     /**
-     * Returns an array of all the <code>ActionListener</code>s added
+     * Returns an array of all the {@code ActionListener}s added
      * to this JTextField with addActionListener().
      *
-     * @return all of the <code>ActionListener</code>s added or an empty
+     * @return all of the {@code ActionListener}s added or an empty
      *         array if no listeners have been added
      * @since 1.4
      */
     public synchronized ActionListener[] getActionListeners() {
         return listenerList.getListeners(ActionListener.class);

@@ -523,38 +523,38 @@
 
     private Action action;
     private PropertyChangeListener actionPropertyChangeListener;
 
     /**
-     * Sets the <code>Action</code> for the <code>ActionEvent</code> source.
-     * The new <code>Action</code> replaces
-     * any previously set <code>Action</code> but does not affect
-     * <code>ActionListeners</code> independently
-     * added with <code>addActionListener</code>.
-     * If the <code>Action</code> is already a registered
-     * <code>ActionListener</code>
-     * for the <code>ActionEvent</code> source, it is not re-registered.
+     * Sets the {@code Action} for the {@code ActionEvent} source.
+     * The new {@code Action} replaces
+     * any previously set {@code Action} but does not affect
+     * {@code ActionListeners} independently
+     * added with {@code addActionListener}.
+     * If the {@code Action} is already a registered
+     * {@code ActionListener}
+     * for the {@code ActionEvent} source, it is not re-registered.
      * <p>
-     * Setting the <code>Action</code> results in immediately changing
+     * Setting the {@code Action} results in immediately changing
      * all the properties described in <a href="Action.html#buttonActions">
-     * Swing Components Supporting <code>Action</code></a>.
+     * Swing Components Supporting {@code Action}</a>.
      * Subsequently, the textfield's properties are automatically updated
-     * as the <code>Action</code>'s properties change.
+     * as the {@code Action}'s properties change.
      * <p>
      * This method uses three other methods to set
-     * and help track the <code>Action</code>'s property values.
-     * It uses the <code>configurePropertiesFromAction</code> method
+     * and help track the {@code Action}'s property values.
+     * It uses the {@code configurePropertiesFromAction} method
      * to immediately change the textfield's properties.
-     * To track changes in the <code>Action</code>'s property values,
-     * this method registers the <code>PropertyChangeListener</code>
-     * returned by <code>createActionPropertyChangeListener</code>. The
+     * To track changes in the {@code Action}'s property values,
+     * this method registers the {@code PropertyChangeListener}
+     * returned by {@code createActionPropertyChangeListener}. The
      * default {@code PropertyChangeListener} invokes the
      * {@code actionPropertyChanged} method when a property in the
      * {@code Action} changes.
      *
-     * @param a the <code>Action</code> for the <code>JTextField</code>,
-     *          or <code>null</code>
+     * @param a the {@code Action} for the {@code JTextField},
+     *          or {@code null}
      * @since 1.3
      * @see Action
      * @see #getAction
      * @see #configurePropertiesFromAction
      * @see #createActionPropertyChangeListener

@@ -597,32 +597,32 @@
         }
         return isListener;
     }
 
     /**
-     * Returns the currently set <code>Action</code> for this
-     * <code>ActionEvent</code> source, or <code>null</code>
-     * if no <code>Action</code> is set.
+     * Returns the currently set {@code Action} for this
+     * {@code ActionEvent} source, or {@code null}
+     * if no {@code Action} is set.
      *
-     * @return the <code>Action</code> for this <code>ActionEvent</code> source,
-     *          or <code>null</code>
+     * @return the {@code Action} for this {@code ActionEvent} source,
+     *          or {@code null}
      * @since 1.3
      * @see Action
      * @see #setAction
      */
     public Action getAction() {
         return action;
     }
 
     /**
      * Sets the properties on this textfield to match those in the specified
-     * <code>Action</code>.  Refer to <a href="Action.html#buttonActions">
-     * Swing Components Supporting <code>Action</code></a> for more
+     * {@code Action}.  Refer to <a href="Action.html#buttonActions">
+     * Swing Components Supporting {@code Action}</a> for more
      * details as to which properties this sets.
      *
-     * @param a the <code>Action</code> from which to get the properties,
-     *          or <code>null</code>
+     * @param a the {@code Action} from which to get the properties,
+     *          or {@code null}
      * @since 1.3
      * @see Action
      * @see #setAction
      */
     protected void configurePropertiesFromAction(Action a) {

@@ -639,14 +639,14 @@
      * need to invoke this. Subclasses that support additional {@code Action}
      * properties should override this and
      * {@code configurePropertiesFromAction}.
      * <p>
      * Refer to the table at <a href="Action.html#buttonActions">
-     * Swing Components Supporting <code>Action</code></a> for a list of
+     * Swing Components Supporting {@code Action}</a> for a list of
      * the properties this method sets.
      *
-     * @param action the <code>Action</code> associated with this textfield
+     * @param action the {@code Action} associated with this textfield
      * @param propertyName the name of the property that changed
      * @since 1.6
      * @see Action
      * @see #configurePropertiesFromAction
      */

@@ -664,17 +664,17 @@
         setActionCommand((action == null) ? null :
                          (String)action.getValue(Action.ACTION_COMMAND_KEY));
     }
 
     /**
-     * Creates and returns a <code>PropertyChangeListener</code> that is
+     * Creates and returns a {@code PropertyChangeListener} that is
      * responsible for listening for changes from the specified
-     * <code>Action</code> and updating the appropriate properties.
+     * {@code Action} and updating the appropriate properties.
      * <p>
      * <b>Warning:</b> If you subclass this do not create an anonymous
      * inner class.  If you do the lifetime of the textfield will be tied to
-     * that of the <code>Action</code>.
+     * that of the {@code Action}.
      *
      * @param a the textfield's action
      * @return a {@code PropertyChangeListener} that is responsible for
      *         listening for changes from the specified {@code Action} and
      *         updating the appropriate properties

@@ -716,11 +716,11 @@
         return TextAction.augmentList(super.getActions(), defaultActions);
     }
 
     /**
      * Processes action events occurring on this textfield by
-     * dispatching them to any registered <code>ActionListener</code> objects.
+     * dispatching them to any registered {@code ActionListener} objects.
      * This is normally called by the controller registered with
      * textfield.
      */
     public void postActionEvent() {
         fireActionPerformed();

@@ -735,11 +735,11 @@
      * the area that was allocated to the field.
      *
      * <p>
      * The fields look-and-feel implementation manages
      * the values of the minimum, maximum, and extent
-     * properties on the <code>BoundedRangeModel</code>.
+     * properties on the {@code BoundedRangeModel}.
      *
      * @return the visibility
      * @see BoundedRangeModel
      */
     public BoundedRangeModel getHorizontalVisibility() {

@@ -782,11 +782,11 @@
             visibility.setValue(x1 - visibility.getExtent());
         }
     }
 
     /**
-     * Returns true if the receiver has an <code>ActionListener</code>
+     * Returns true if the receiver has an {@code ActionListener}
      * installed.
      */
     boolean hasActionListener() {
         // Guaranteed to return a non-null array
         Object[] listeners = listenerList.getListenerList();

@@ -859,12 +859,12 @@
 
     }
 
 
     /**
-     * See <code>readObject</code> and <code>writeObject</code> in
-     * <code>JComponent</code> for more
+     * See {@code readObject} and {@code writeObject} in
+     * {@code JComponent} for more
      * information about serialization in Swing.
      */
     private void writeObject(ObjectOutputStream s) throws IOException {
         s.defaultWriteObject();
         if (getUIClassID().equals(uiClassID)) {

@@ -876,17 +876,17 @@
         }
     }
 
 
     /**
-     * Returns a string representation of this <code>JTextField</code>.
+     * Returns a string representation of this {@code JTextField}.
      * This method is intended to be used only for debugging purposes,
      * and the content and format of the returned string may vary between
      * implementations. The returned string may be empty but may not
-     * be <code>null</code>.
+     * be {@code null}.
      *
-     * @return  a string representation of this <code>JTextField</code>
+     * @return  a string representation of this {@code JTextField}
      */
     protected String paramString() {
         String horizontalAlignmentString;
         if (horizontalAlignment == LEFT) {
             horizontalAlignmentString = "LEFT";

@@ -914,40 +914,40 @@
 // Accessibility support
 ////////////////
 
 
     /**
-     * Gets the <code>AccessibleContext</code> associated with this
-     * <code>JTextField</code>. For <code>JTextFields</code>,
-     * the <code>AccessibleContext</code> takes the form of an
-     * <code>AccessibleJTextField</code>.
-     * A new <code>AccessibleJTextField</code> instance is created
+     * Gets the {@code AccessibleContext} associated with this
+     * {@code JTextField}. For {@code JTextFields},
+     * the {@code AccessibleContext} takes the form of an
+     * {@code AccessibleJTextField}.
+     * A new {@code AccessibleJTextField} instance is created
      * if necessary.
      *
-     * @return an <code>AccessibleJTextField</code> that serves as the
-     *         <code>AccessibleContext</code> of this <code>JTextField</code>
+     * @return an {@code AccessibleJTextField} that serves as the
+     *         {@code AccessibleContext} of this {@code JTextField}
      */
     public AccessibleContext getAccessibleContext() {
         if (accessibleContext == null) {
             accessibleContext = new AccessibleJTextField();
         }
         return accessibleContext;
     }
 
     /**
      * This class implements accessibility support for the
-     * <code>JTextField</code> class.  It provides an implementation of the
+     * {@code JTextField} class.  It provides an implementation of the
      * Java Accessibility API appropriate to text field user-interface
      * elements.
      * <p>
      * <strong>Warning:</strong>
      * Serialized objects of this class will not be compatible with
      * future Swing releases. The current serialization support is
      * appropriate for short term storage or RMI between applications running
      * the same version of Swing.  As of 1.4, support for long term storage
      * of all JavaBeans&trade;
-     * has been added to the <code>java.beans</code> package.
+     * has been added to the {@code java.beans} package.
      * Please see {@link java.beans.XMLEncoder}.
      */
     @SuppressWarnings("serial") // Same-version serialization only
     protected class AccessibleJTextField extends AccessibleJTextComponent {
 
< prev index next >