Package 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 bysetDirectionEstimator(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:
-
Nested Class Summary
Nested classes/interfaces inherited from class com.google.gwt.user.client.ui.UIObject
UIObject.DebugIdImpl, UIObject.DebugIdImplEnabled
-
Field Summary
Modifier and TypeFieldDescriptionstatic final DirectionEstimator
protected final 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
ModifierConstructorDescriptionCreates an empty hyperlink.protected
Hyperlink
(SafeHtml html, HasDirection.Direction dir, String targetHistoryToken) Creates a hyperlink with its html and target history token specified.Hyperlink
(SafeHtml html, DirectionEstimator directionEstimator, String targetHistoryToken) Creates a hyperlink with its html and target history token specified.Creates a hyperlink with its html and target history token specified.Creates a hyperlink with its text and target history token specified.Hyperlink
(String text, HasDirection.Direction dir, String targetHistoryToken) Creates a hyperlink with its text and target history token specified.Hyperlink
(String text, DirectionEstimator directionEstimator, String targetHistoryToken) Creates a hyperlink with its text and target history token specified.Creates a hyperlink with its text and target history token specified. -
Method Summary
Modifier and TypeMethodDescriptionaddClickHandler
(ClickHandler handler) Deprecated.void
addClickListener
(ClickListener listener) Deprecated.UseFocusWidget.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.Returns theDirectionEstimator
object.getHTML()
Gets this object's contents as HTML.Gets the history token referenced by this hyperlink.getText()
Gets this object's text.Gets the direction of this object's text.void
onBrowserEvent
(Event event) Fired whenever a browser event is received.protected void
onEnsureDebugId
(String baseID) Affected Elements: -wrapper = the div around the link.void
removeClickListener
(ClickListener listener) Deprecated.Use theHandlerRegistration.removeHandler()
method on the object returned by an add*Handler method insteadvoid
setDirectionEstimator
(boolean enabled) Toggles on / off direction estimation.void
setDirectionEstimator
(DirectionEstimator directionEstimator) Sets theDirectionEstimator
object.void
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
Sets this object's contents via HTML.void
setTargetHistoryToken
(String targetHistoryToken) Sets the history token referenced by this hyperlink.void
Sets this object's text.void
setText
(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 Details
-
DEFAULT_DIRECTION_ESTIMATOR
-
directionalTextHelper
-
-
Constructor Details
-
Hyperlink
public Hyperlink()Creates an empty hyperlink. -
Hyperlink
Creates a hyperlink with its text and target history token specified.- Parameters:
text
- the hyperlink's texttargetHistoryToken
- the history token to which it will link, which may not be null (useAnchor
instead if you don't need history processing)
-
Hyperlink
Creates a hyperlink with its text and target history token specified.- Parameters:
text
- the hyperlink's textdir
- the text's directiontargetHistoryToken
- the history token to which it will link, which may not be null (useAnchor
instead if you don't need history processing)
-
Hyperlink
Creates a hyperlink with its text and target history token specified.- Parameters:
text
- the hyperlink's textasHTML
-true
to treat the specified text as htmltargetHistoryToken
- the history token to which it will link- See Also:
-
Hyperlink
-
-
Method Details
-
addClickHandler
Deprecated.UseFocusWidget.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 aClickEvent
handler.- Specified by:
addClickHandler
in interfaceHasClickHandlers
- Parameters:
handler
- the click handler- Returns:
HandlerRegistration
used to remove this handler
-
addClickListener
Deprecated.UseFocusWidget.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 interfaceSourcesClickEvents
- Parameters:
listener
- the listener interface to add
-
getDirectionEstimator
Description copied from interface:HasDirectionEstimator
Returns theDirectionEstimator
object.- Specified by:
getDirectionEstimator
in interfaceHasDirectionEstimator
-
getHTML
Description copied from interface:HasHTML
Gets this object's contents as HTML. -
getTargetHistoryToken
Gets the history token referenced by this hyperlink.- Returns:
- the target history token
- See Also:
-
getText
Description copied from interface:HasText
Gets this object's text. -
getTextDirection
Description copied from interface:HasDirectionalText
Gets the direction of this object's text.- Specified by:
getTextDirection
in interfaceHasDirectionalText
- Returns:
- the direction of this object's text
-
onBrowserEvent
Description copied from interface:EventListener
Fired whenever a browser event is received.- Specified by:
onBrowserEvent
in interfaceEventListener
- Overrides:
onBrowserEvent
in classWidget
- Parameters:
event
- the event received
-
removeClickListener
Deprecated.Use theHandlerRegistration.removeHandler()
method on the object returned by an add*Handler method insteadDescription copied from interface:SourcesClickEvents
Removes a previously added listener interface.- Specified by:
removeClickListener
in interfaceSourcesClickEvents
- 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 interfaceHasDirectionEstimator
- Parameters:
enabled
- Whether to enable direction estimation. Iftrue
, sets theDirectionEstimator
object to a defaultDirectionEstimator
.
-
setHTML
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 usingHasText.setText(String)
whenever possible. -
setTargetHistoryToken
Sets the history token referenced by this hyperlink. This is the history token that will be passed toHistory.newItem(java.lang.String)
when this link is clicked.- Parameters:
targetHistoryToken
- the new history token, which may not be null (useAnchor
instead if you don't need history processing)
-
setText
Description copied from interface:HasText
Sets this object's text. -
setText
Description copied from interface:HasDirectionalText
Sets this object's text, also declaring its direction.- Specified by:
setText
in interfaceHasDirectionalText
- Parameters:
text
- the object's new textdir
- the text's direction
-
onEnsureDebugId
Affected Elements:- -wrapper = the div around the link.
- Overrides:
onEnsureDebugId
in classUIObject
- Parameters:
baseID
- the base ID used by the main element- See Also:
-
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.