GWT 2.7.0

## com.google.gwt.user.client.ui
Class Hyperlink

    java.lang.Object
      com.google.gwt.user.client.ui.UIObject
          com.google.gwt.user.client.ui.Widget
              com.google.gwt.user.client.ui.Hyperlink

All Implemented Interfaces:
  HasClickHandlers, HasAttachHandlers, HasHandlers, HasDirectionEstimator, HasSafeHtml, EventListener, HasDirectionalSafeHtml, HasDirectionalText, HasHTML, HasText, HasVisibility, IsWidget, SourcesClickEvents

Direct Known Subclasses:
  InlineHyperlink

    public class Hyperlink

extends Widget
implements HasHTML, SourcesClickEvents, HasClickHandlers, HasDirectionEstimator, HasDirectionalSafeHtml

A widget that serves as an "internal" hyperlink. That is, it is a link to another state of the running application. When clicked, it will create a new history frame using `History.newItem(java.lang.String)`, but without reloading the page.

If you want an HTML hyperlink (<a> tag) without interacting with the history system, use `Anchor` instead.

Being a true hyperlink, it is also possible for the user to "right-click, open link in new window", which will cause the application to be loaded in a new window at the state specified by the hyperlink.

### Built-in Bidi Text Support

This widget is capable of automatically adjusting its direction according to its content. This feature is controlled by `setDirectionEstimator(boolean)` or passing a DirectionEstimator parameter to the constructor, and is off by default.

### CSS Style Rules

- .gwt-Hyperlink { }

### Example

>     public class HistoryExample implements EntryPoint, ValueChangeHandler<String> {

>       private Label lbl = new Label();

>       public void onModuleLoad() {
>         // Create three hyperlinks that change the application's history.
>         Hyperlink link0 = new Hyperlink("link to foo", "foo");
>         Hyperlink link1 = new Hyperlink("link to bar", "bar");
>         Hyperlink link2 = new Hyperlink("link to baz", "baz");

>         // If the application starts with no history token, redirect to a new
>         // 'baz' state.
>         String initToken = History.getToken();
>         if (initToken.length() == 0) {
>           History.newItem("baz");
>         }

>         // Add widgets to the root panel.
>         VerticalPanel panel = new VerticalPanel();
>         panel.add(lbl);
>         panel.add(link0);
>         panel.add(link1);
>         panel.add(link2);
>         RootPanel.get().add(panel);

>         // Add history listener
>         History.addValueChangeHandler(this);

>         // Now that we've setup our listener, fire the initial history state.
>         History.fireCurrentHistoryState();
>       }

>       public void onValueChange(ValueChangeEvent<String> event) {
>         // This method is called whenever the application's history changes. Set
>         // the label to reflect the current history token.
>         lbl.setText("The current history token is: " + event.getValue());
>       }
>     }

See Also:
  `Anchor`

Nested Class Summary

Nested classes/interfaces inherited from class com.google.gwt.user.client.ui.UIObject
`UIObject.DebugIdImpl, UIObject.DebugIdImplEnabled`

Field Summary
`static DirectionEstimator` | `DEFAULT_DIRECTION_ESTIMATOR`
`protected DirectionalTextHelper` | `directionalTextHelper`

Fields inherited from class com.google.gwt.user.client.ui.Widget
`eventsToSink`

Fields inherited from class com.google.gwt.user.client.ui.UIObject
`DEBUG_ID_PREFIX, MISSING_ELEMENT_ERROR, SETELEMENT_TWICE_ERROR`

Constructor Summary
`` | `Hyperlink()` Creates an empty hyperlink.
`protected` | `Hyperlink(Element elem)`
`` | `Hyperlink(SafeHtml html, DirectionEstimator directionEstimator, java.lang.String targetHistoryToken)` Creates a hyperlink with its html and target history token specified.
`` | `Hyperlink(SafeHtml html, HasDirection.Direction dir, java.lang.String targetHistoryToken)` Creates a hyperlink with its html and target history token specified.
`` | `Hyperlink(SafeHtml html, java.lang.String targetHistoryToken)` Creates a hyperlink with its html and target history token specified.
`` | `Hyperlink(java.lang.String text, boolean asHTML, java.lang.String targetHistoryToken)` Creates a hyperlink with its text and target history token specified.
`` | `Hyperlink(java.lang.String text, DirectionEstimator directionEstimator, java.lang.String targetHistoryToken)` Creates a hyperlink with its text and target history token specified.
`` | `Hyperlink(java.lang.String text, HasDirection.Direction dir, java.lang.String targetHistoryToken)` Creates a hyperlink with its text and target history token specified.
`` | `Hyperlink(java.lang.String text, java.lang.String targetHistoryToken)` Creates a hyperlink with its text and target history token specified.

Method Summary
`HandlerRegistration` | `addClickHandler(ClickHandler handler)` Deprecated. Use `FocusWidget.addClickHandler(com.google.gwt.event.dom.client.ClickHandler)` instead and call History.newItem from the handler if you need to process the click before the history token is set.
`void` | `addClickListener(ClickListener listener)` Deprecated. Use `FocusWidget.addClickHandler(com.google.gwt.event.dom.client.ClickHandler)` instead and call History.newItem from the handler if you need to process the click before the history token is set.
`DirectionEstimator` | `getDirectionEstimator()` Returns the `DirectionEstimator` object.
`java.lang.String` | `getHTML()` Gets this object's contents as HTML.
`java.lang.String` | `getTargetHistoryToken()` Gets the history token referenced by this hyperlink.
`java.lang.String` | `getText()` Gets this object's text.
`HasDirection.Direction` | `getTextDirection()` Gets the direction of this object's text.
`void` | `onBrowserEvent(Event event)` Fired whenever a browser event is received.
`protected void` | `onEnsureDebugId(java.lang.String baseID)` Affected Elements: -wrapper = the div around the link.
`void` | `removeClickListener(ClickListener listener)` Deprecated. Use the `HandlerRegistration.removeHandler()` method on the object returned by an add*Handler method instead
`void` | `setDirectionEstimator(boolean enabled)` Toggles on / off direction estimation.
`void` | `setDirectionEstimator(DirectionEstimator directionEstimator)` Sets the `DirectionEstimator` object.
`void` | `setHTML(SafeHtml html)` Sets this object's contents via known-safe HTML.
`void` | `setHTML(SafeHtml html, HasDirection.Direction dir)` Sets this object's html, also declaring its direction.
`void` | `setHTML(java.lang.String html)` Sets this object's contents via HTML.
`void` | `setTargetHistoryToken(java.lang.String targetHistoryToken)` Sets the history token referenced by this hyperlink.
`void` | `setText(java.lang.String text)` Sets this object's text.
`void` | `setText(java.lang.String text, HasDirection.Direction dir)` Sets this object's text, also declaring its direction.

Methods inherited from class com.google.gwt.user.client.ui.Widget

`addAttachHandler, addBitlessDomHandler, addDomHandler, addHandler, asWidget, asWidgetOrNull, createHandlerManager, delegateEvent, doAttachChildren, doDetachChildren, ensureHandlers, fireEvent, getHandlerCount, getHandlerManager, getLayoutData, getParent, isAttached, isOrWasAttached, onAttach, onDetach, onLoad, onUnload, removeFromParent, replaceElement, setLayoutData, setParent, sinkEvents, unsinkEvents`

Methods inherited from class com.google.gwt.user.client.ui.UIObject

`addStyleDependentName, addStyleName, ensureDebugId, ensureDebugId, ensureDebugId, getAbsoluteLeft, getAbsoluteTop, getElement, getOffsetHeight, getOffsetWidth, getStyleElement, getStyleName, getStyleName, getStylePrimaryName, getStylePrimaryName, getTitle, isVisible, isVisible, removeStyleDependentName, removeStyleName, resolvePotentialElement, setElement, setElement, setHeight, setPixelSize, setSize, setStyleDependentName, setStyleName, setStyleName, setStyleName, setStyleName, setStylePrimaryName, setStylePrimaryName, setTitle, setVisible, setVisible, setWidth, sinkBitlessEvent, toString`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Methods inherited from interface com.google.gwt.event.shared.HasHandlers
`fireEvent`

Field Detail

### DEFAULT_DIRECTION_ESTIMATOR

    public static final DirectionEstimator DEFAULT_DIRECTION_ESTIMATOR

### directionalTextHelper

    protected final DirectionalTextHelper directionalTextHelper

Constructor Detail

### Hyperlink

    public Hyperlink()

  Creates an empty hyperlink.

### Hyperlink

    public Hyperlink(SafeHtml html,
                     java.lang.String targetHistoryToken)

  Creates a hyperlink with its html and target history token specified.

  Parameters:
    `html` - the hyperlink's safe html
    `targetHistoryToken` - the history token to which it will link
  See Also:
    `setTargetHistoryToken(java.lang.String)`

### Hyperlink

    public Hyperlink(SafeHtml html,
                     HasDirection.Direction dir,
                     java.lang.String targetHistoryToken)

  Creates a hyperlink with its html and target history token specified.

  Parameters:
    `html` - the hyperlink's safe html
    `dir` - the html's direction
    `targetHistoryToken` - the history token to which it will link
  See Also:
    `setTargetHistoryToken(java.lang.String)`

### Hyperlink

    public Hyperlink(SafeHtml html,
                     DirectionEstimator directionEstimator,
                     java.lang.String targetHistoryToken)

  Creates a hyperlink with its html and target history token specified.

  Parameters:
    `html` - the hyperlink's safe html
    `directionEstimator` - A DirectionEstimator object used for automatic direction adjustment. For convenience, `DEFAULT_DIRECTION_ESTIMATOR` can be used.
    `targetHistoryToken` - the history token to which it will link
  See Also:
    `setTargetHistoryToken(java.lang.String)`

### Hyperlink

    public Hyperlink(java.lang.String text,
                     java.lang.String targetHistoryToken)

  Creates a hyperlink with its text and target history token specified.

  Parameters:
    `text` - the hyperlink's text
    `targetHistoryToken` - the history token to which it will link, which may not be null (use `Anchor` instead if you don't need history processing)

### Hyperlink

    public Hyperlink(java.lang.String text,
                     HasDirection.Direction dir,
                     java.lang.String targetHistoryToken)

  Creates a hyperlink with its text and target history token specified.

  Parameters:
    `text` - the hyperlink's text
    `dir` - the text's direction
    `targetHistoryToken` - the history token to which it will link, which may not be null (use `Anchor` instead if you don't need history processing)

### Hyperlink

    public Hyperlink(java.lang.String text,
                     DirectionEstimator directionEstimator,
                     java.lang.String targetHistoryToken)

  Creates a hyperlink with its text and target history token specified.

  Parameters:
    `text` - the hyperlink's text
    `directionEstimator` - A DirectionEstimator object used for automatic direction adjustment. For convenience, `DEFAULT_DIRECTION_ESTIMATOR` can be used.
    `targetHistoryToken` - the history token to which it will link, which may not be null (use `Anchor` instead if you don't need history processing)

### Hyperlink

    public Hyperlink(java.lang.String text,
                     boolean asHTML,
                     java.lang.String targetHistoryToken)

  Creates a hyperlink with its text and target history token specified.

  Parameters:
    `text` - the hyperlink's text
    `asHTML` - `true` to treat the specified text as html
    `targetHistoryToken` - the history token to which it will link
  See Also:
    `setTargetHistoryToken(java.lang.String)`

### Hyperlink

    protected Hyperlink(Element elem)

Method Detail

### addClickHandler

    @Deprecated
    public HandlerRegistration addClickHandler(ClickHandler handler)

  Deprecated. Use `FocusWidget.addClickHandler(com.google.gwt.event.dom.client.ClickHandler)` instead and call History.newItem from the handler if you need to process the click before the history token is set.

  Description copied from interface: `HasClickHandlers`
  Adds a `ClickEvent` handler.

  Specified by:
    `addClickHandler` in interface `HasClickHandlers`
  Parameters:
    `handler` - the click handler
  Returns:
    `HandlerRegistration` used to remove this handler

### addClickListener

    @Deprecated
    public void addClickListener(ClickListener listener)

  Deprecated. Use `FocusWidget.addClickHandler(com.google.gwt.event.dom.client.ClickHandler)` instead and call History.newItem from the handler if you need to process the click before the history token is set.

  Description copied from interface: `SourcesClickEvents`
  Adds a listener interface to receive click events.

  Specified by:
    `addClickListener` in interface `SourcesClickEvents`
  Parameters:
    `listener` - the listener interface to add

### getDirectionEstimator

    public DirectionEstimator getDirectionEstimator()

  Description copied from interface: `HasDirectionEstimator`
  Returns the `DirectionEstimator` object.

  Specified by:
    `getDirectionEstimator` in interface `HasDirectionEstimator`

### getHTML

    public java.lang.String getHTML()

  Description copied from interface: `HasHTML`
  Gets this object's contents as HTML.

  Specified by:
    `getHTML` in interface `HasHTML`
  Returns:
    the object's HTML

### getTargetHistoryToken

    public java.lang.String getTargetHistoryToken()

  Gets the history token referenced by this hyperlink.

  Returns:
    the target history token
  See Also:
    `setTargetHistoryToken(java.lang.String)`

### getText

    public java.lang.String getText()

  Description copied from interface: `HasText`
  Gets this object's text.

  Specified by:
    `getText` in interface `HasText`
  Returns:
    the object's text

### getTextDirection

    public HasDirection.Direction getTextDirection()

  Description copied from interface: `HasDirectionalText`
  Gets the direction of this object's text.

  Specified by:
    `getTextDirection` in interface `HasDirectionalText`
  Returns:
    the direction of this object's text

### onBrowserEvent

    public void onBrowserEvent(Event event)

  Description copied from interface: `EventListener`
  Fired whenever a browser event is received.

  Specified by:
    `onBrowserEvent` in interface `EventListener`
  Overrides:
    `onBrowserEvent` in class `Widget`
  Parameters:
    `event` - the event received

### removeClickListener

    @Deprecated
    public void removeClickListener(ClickListener listener)

  Deprecated. Use the `HandlerRegistration.removeHandler()` method on the object returned by an add*Handler method instead

  Description copied from interface: `SourcesClickEvents`
  Removes a previously added listener interface.

  Specified by:
    `removeClickListener` in interface `SourcesClickEvents`
  Parameters:
    `listener` - the listener interface to remove

### setDirectionEstimator

    public void setDirectionEstimator(boolean enabled)

  Toggles on / off direction estimation.

  See note at `setDirectionEstimator(DirectionEstimator)`.

  Specified by:
    `setDirectionEstimator` in interface `HasDirectionEstimator`
  Parameters:
    `enabled` - Whether to enable direction estimation. If `true`, sets the `DirectionEstimator` object to a default `DirectionEstimator`.

### setDirectionEstimator

    public void setDirectionEstimator(DirectionEstimator directionEstimator)

  Sets the `DirectionEstimator` object.

  Note: DirectionEstimator should be set before the widget has any content; it's highly recommended to set it using a constructor. Reason: if the widget already has non-empty content, this will update its direction according to the new estimator's result. This may cause flicker, and thus should be avoided.

  Specified by:
    `setDirectionEstimator` in interface `HasDirectionEstimator`
  Parameters:
    `directionEstimator` - The `DirectionEstimator` to be set. `null` means turning off direction estimation.

### setHTML

    public void setHTML(SafeHtml html)

  Description copied from interface: `HasSafeHtml`
  Sets this object's contents via known-safe HTML.

  The object will behave exactly the same as when a widget's `HasHTML.setHTML(String)` method is invoked; however the `SafeHtml` passed to this method observes the contract that it can be used in an HTML context without causing unsafe script execution. Thus, unlike `HasHTML.setHTML(String)`, using this method cannot result in Cross-Site Scripting security vulnerabilities.

  Specified by:
    `setHTML` in interface `HasSafeHtml`
  Parameters:
    `html` - the object's new HTML, represented as a `SafeHtml` object

### setHTML

    public void setHTML(java.lang.String html)

  Description copied from interface: `HasHTML`
  Sets this object's contents via HTML. Use care when setting an object's HTML; it is an easy way to expose script-based security problems. Consider using `HasText.setText(String)` whenever possible.

  Specified by:
    `setHTML` in interface `HasHTML`
  Parameters:
    `html` - the object's new HTML

### setHTML

    public void setHTML(SafeHtml html,
                        HasDirection.Direction dir)

  Description copied from interface: `HasDirectionalSafeHtml`
  Sets this object's html, also declaring its direction.

  Specified by:
    `setHTML` in interface `HasDirectionalSafeHtml`
  Parameters:
    `html` - the object's new html
    `dir` - the html's direction

### setTargetHistoryToken

    public void setTargetHistoryToken(java.lang.String targetHistoryToken)

  Sets the history token referenced by this hyperlink. This is the history token that will be passed to `History.newItem(java.lang.String)` when this link is clicked.

  Parameters:
    `targetHistoryToken` - the new history token, which may not be null (use `Anchor` instead if you don't need history processing)

### setText

    public void setText(java.lang.String text)

  Description copied from interface: `HasText`
  Sets this object's text.

  Specified by:
    `setText` in interface `HasText`
  Parameters:
    `text` - the object's new text

### setText

    public void setText(java.lang.String text,
                        HasDirection.Direction dir)

  Description copied from interface: `HasDirectionalText`
  Sets this object's text, also declaring its direction.

  Specified by:
    `setText` in interface `HasDirectionalText`
  Parameters:
    `text` - the object's new text
    `dir` - the text's direction

### onEnsureDebugId

    protected void onEnsureDebugId(java.lang.String baseID)

  Affected Elements:
  - -wrapper = the div around the link.

  Overrides:
    `onEnsureDebugId` in class `UIObject`
  Parameters:
    `baseID` - the base ID used by the main element
  See Also:
    `UIObject.onEnsureDebugId(String)`

GWT 2.7.0