| /* |
| * Copyright (c) 1998, 2000, 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 javax.accessibility; |
| |
| |
| import java.util.*; |
| import java.awt.*; |
| import javax.swing.text.*; |
| |
| |
| /** |
| * Encapsulation of a link, or set of links (e.g. client side imagemap) |
| * in a Hypertext document |
| * |
| * @see Accessible |
| * @see Accessible#getAccessibleContext |
| * @see AccessibleContext |
| * @see AccessibleText |
| * @see AccessibleContext#getAccessibleText |
| * |
| * @author Peter Korn |
| */ |
| public abstract class AccessibleHyperlink implements AccessibleAction { |
| |
| /** |
| * Since the document a link is associated with may have |
| * changed, this method returns whether or not this Link is still valid |
| * (with respect to the document it references). |
| * |
| * @return a flag indicating whether this link is still valid with |
| * respect to the AccessibleHypertext it belongs to |
| */ |
| public abstract boolean isValid(); |
| |
| /** |
| * Returns the number of accessible actions available in this Link |
| * If there are more than one, the first one is NOT considered the |
| * "default" action of this LINK object (e.g. in an HTML imagemap). |
| * In general, links will have only one AccessibleAction in them. |
| * |
| * @return the zero-based number of Actions in this object |
| */ |
| public abstract int getAccessibleActionCount(); |
| |
| /** |
| * Performs the specified Action on the object |
| * |
| * @param i zero-based index of actions |
| * @return true if the action was performed; otherwise false. |
| * @see #getAccessibleActionCount |
| */ |
| public abstract boolean doAccessibleAction(int i); |
| |
| /** |
| * Returns a String description of this particular |
| * link action. This should be a text string |
| * associated with anchoring text, this should be the |
| * anchor text. E.g. from HTML: |
| * <a HREF="http://www.sun.com/access">Accessibility</a> |
| * this method would return "Accessibility". |
| * |
| * Similarly, from this HTML: |
| * <a HREF="#top"><img src="top-hat.gif" alt="top hat"></a> |
| * this method would return "top hat" |
| * |
| * @param i zero-based index of the actions |
| * @return a String description of the action |
| * @see #getAccessibleActionCount |
| */ |
| public abstract String getAccessibleActionDescription(int i); |
| |
| /** |
| * Returns an object that represents the link action, |
| * as appropriate for that link. E.g. from HTML: |
| * <a HREF="http://www.sun.com/access">Accessibility</a> |
| * this method would return a |
| * java.net.URL("http://www.sun.com/access.html"); |
| * |
| * @param i zero-based index of the actions |
| * @return an Object representing the hypertext link itself |
| * @see #getAccessibleActionCount |
| */ |
| public abstract Object getAccessibleActionObject(int i); |
| |
| /** |
| * Returns an object that represents the link anchor, |
| * as appropriate for that link. E.g. from HTML: |
| * <a href="http://www.sun.com/access">Accessibility</a> |
| * this method would return a String containing the text: |
| * "Accessibility". |
| * |
| * Similarly, from this HTML: |
| * <a HREF="#top"><img src="top-hat.gif" alt="top hat"></a> |
| * this might return the object ImageIcon("top-hat.gif", "top hat"); |
| * |
| * @param i zero-based index of the actions |
| * @return an Object representing the hypertext anchor |
| * @see #getAccessibleActionCount |
| */ |
| public abstract Object getAccessibleActionAnchor(int i); |
| |
| /** |
| * Gets the index with the hypertext document at which this |
| * link begins |
| * |
| * @return index of start of link |
| */ |
| public abstract int getStartIndex(); |
| |
| /** |
| * Gets the index with the hypertext document at which this |
| * link ends |
| * |
| * @return index of end of link |
| */ |
| public abstract int getEndIndex(); |
| } |