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
FieldsModifier and TypeFieldDescriptionstatic final DirectionEstimatorprotected final DirectionalTextHelperFields inherited from class com.google.gwt.user.client.ui.Widget
eventsToSinkFields inherited from class com.google.gwt.user.client.ui.UIObject
DEBUG_ID_PREFIX, MISSING_ELEMENT_ERROR, SETELEMENT_TWICE_ERROR -
Constructor Summary
ConstructorsModifierConstructorDescriptionCreates an empty hyperlink.protectedHyperlink(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.voidaddClickListener(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 theDirectionEstimatorobject.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.voidonBrowserEvent(Event event) Fired whenever a browser event is received.protected voidonEnsureDebugId(String baseID) Affected Elements: -wrapper = the div around the link.voidremoveClickListener(ClickListener listener) Deprecated.Use theHandlerRegistration.removeHandler()method on the object returned by an add*Handler method insteadvoidsetDirectionEstimator(boolean enabled) Toggles on / off direction estimation.voidsetDirectionEstimator(DirectionEstimator directionEstimator) Sets theDirectionEstimatorobject.voidSets this object's contents via known-safe HTML.voidsetHTML(SafeHtml html, HasDirection.Direction dir) Sets this object's html, also declaring its direction.voidSets this object's contents via HTML.voidsetTargetHistoryToken(String targetHistoryToken) Sets the history token referenced by this hyperlink.voidSets this object's text.voidsetText(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, unsinkEventsMethods 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, toStringMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods 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 (useAnchorinstead 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 (useAnchorinstead 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-trueto 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:HasClickHandlersAdds aClickEventhandler.- Specified by:
addClickHandlerin interfaceHasClickHandlers- Parameters:
handler- the click handler- Returns:
HandlerRegistrationused 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:SourcesClickEventsAdds a listener interface to receive click events.- Specified by:
addClickListenerin interfaceSourcesClickEvents- Parameters:
listener- the listener interface to add
-
getDirectionEstimator
Description copied from interface:HasDirectionEstimatorReturns theDirectionEstimatorobject.- Specified by:
getDirectionEstimatorin interfaceHasDirectionEstimator
-
getHTML
Description copied from interface:HasHTMLGets 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:HasTextGets this object's text. -
getTextDirection
Description copied from interface:HasDirectionalTextGets the direction of this object's text.- Specified by:
getTextDirectionin interfaceHasDirectionalText- Returns:
- the direction of this object's text
-
onBrowserEvent
Description copied from interface:EventListenerFired whenever a browser event is received.- Specified by:
onBrowserEventin interfaceEventListener- Overrides:
onBrowserEventin 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:SourcesClickEventsRemoves a previously added listener interface.- Specified by:
removeClickListenerin 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:
setDirectionEstimatorin interfaceHasDirectionEstimator- Parameters:
enabled- Whether to enable direction estimation. Iftrue, sets theDirectionEstimatorobject to a defaultDirectionEstimator.
-
setHTML
Description copied from interface:HasHTMLSets 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 (useAnchorinstead if you don't need history processing)
-
setText
Description copied from interface:HasTextSets this object's text. -
setText
Description copied from interface:HasDirectionalTextSets this object's text, also declaring its direction.- Specified by:
setTextin interfaceHasDirectionalText- Parameters:
text- the object's new textdir- the text's direction
-
onEnsureDebugId
Affected Elements:- -wrapper = the div around the link.
- Overrides:
onEnsureDebugIdin 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.