|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objecteu.webtoolkit.jwt.WObject
eu.webtoolkit.jwt.WWidget
public abstract class WWidget
The abstract base class for a user-interface component.
The user-interface is organized in a tree structure, in which each nodes is a
widgets. All widgets, except for the application's root widget and
dialogs, have a parent which is usually a WContainerWidget.
This is an abstract base class. Implementations derive either from the
abstract WWebWidget (for basic widgets with a direct HTML
counter-part) or from the abstract WCompositeWidget (for anything
else). To add a WWebWidget directly to a parent container, either specify the
parent in the constructor (which is conventionally the last constructor
argument), or add the widget to the parent using
WContainerWidget#addWidget(). Alternatively, you may add the widget to a
layout manager set for a WContainerWidget.
A widget provides methods to manage its decorative style base on CSS. It also provides access to CSS-based layout, which you may not use when the widget is not inserted into a layout manager.
| Constructor Summary | |
|---|---|
protected |
WWidget()
Creates a widget. |
protected |
WWidget(WContainerWidget parent)
Creates a widget. |
| Method Summary | |
|---|---|
void |
acceptDrops(java.lang.String mimeType)
Sets a mime type to be accepted for dropping. |
void |
acceptDrops(java.lang.String mimeType,
java.lang.String hoverStyleClass)
Sets a mime type to be accepted for dropping. |
protected WCssTextRule |
addCssRule(java.lang.String selector,
java.lang.String declarations)
|
protected WCssTextRule |
addCssRule(java.lang.String selector,
java.lang.String declarations,
java.lang.String ruleName)
|
void |
addStyleClass(java.lang.String styleClass)
Adds a CSS style class. |
abstract void |
addStyleClass(java.lang.String styleClass,
boolean force)
Adds a CSS style class. |
void |
animateHide(WAnimation animation)
Hides the widget using an animation. |
void |
animateShow(WAnimation animation)
Shows the widget using an animation. |
protected int |
boxBorder(Orientation orientation)
Returns the widget's built-in border width. |
protected int |
boxPadding(Orientation orientation)
Returns the widget's built-in padding. |
abstract void |
callJavaScriptMember(java.lang.String name,
java.lang.String args)
Calls a JavaScript member. |
protected boolean |
containsExposed(WWidget w)
|
void |
disable()
Disable thes widget. |
abstract void |
doJavaScript(java.lang.String js)
Executes the given JavaScript statements when the widget is rendered or updated. |
protected void |
dropEvent(WDropEvent event)
Handles a drop event. |
void |
enable()
Enables the widget. |
protected abstract void |
enableAjax()
Progresses to an Ajax-enabled widget. |
abstract WWidget |
find(java.lang.String name)
Finds a descendent widget by name. |
abstract java.lang.String |
getAttributeValue(java.lang.String name)
Returns an attribute value. |
abstract java.util.EnumSet<Side> |
getClearSides()
Returns the sides that should remain empty. |
abstract WCssDecorationStyle |
getDecorationStyle()
Returns the decoration style of this widget. |
protected void |
getDrop(java.lang.String sourceId,
java.lang.String mimeType,
WMouseEvent event)
|
abstract Side |
getFloatSide()
Returns the CSS float side. |
abstract WLength |
getHeight()
Returns the height. |
abstract java.lang.String |
getJavaScriptMember(java.lang.String name)
Returns the value of a JavaScript member. |
java.lang.String |
getJsRef()
Returns a JavaScript expression to the corresponding DOM node. |
abstract WLength |
getLineHeight()
Returns the CSS line height for contained text. |
abstract WLength |
getMargin(Side side)
Returns a CSS margin set. |
abstract WLength |
getMaximumHeight()
Returns the maximum height. |
abstract WLength |
getMaximumWidth()
Returns the maximum width. |
abstract WLength |
getMinimumHeight()
Returns the minimum height. |
abstract WLength |
getMinimumWidth()
Returns the minimum width. |
abstract WLength |
getOffset(Side side)
Returns a CSS offset. |
WWidget |
getParent()
Returns the parent widget. |
abstract PositionScheme |
getPositionScheme()
Returns the CSS position scheme. |
abstract java.lang.String |
getStyleClass()
Returns the CSS style class. |
abstract int |
getTabIndex()
Returns the tab index. |
abstract WString |
getToolTip()
Returns the tooltip. |
abstract AlignmentFlag |
getVerticalAlignment()
Returns the vertical alignment. |
abstract WLength |
getVerticalAlignmentLength()
Returns the fixed vertical alignment that was set. |
abstract WLength |
getWidth()
Returns the width. |
void |
hide()
Hides the widget. |
void |
htmlText(java.io.Writer out)
Streams the (X)HTML representation. |
abstract boolean |
isDisabled()
Returns whether the widget is set disabled. |
abstract boolean |
isEnabled()
Returns whether the widget is enabled. |
abstract boolean |
isHidden()
Returns whether the widget is set hidden. |
abstract boolean |
isHiddenKeepsGeometry()
Returns whether the widget keeps its geometry when hidden. |
abstract boolean |
isInline()
Returns whether the widget is displayed inline or as block. |
boolean |
isLayoutSizeAware()
Returns whether the widget is layout size aware. |
abstract boolean |
isLoaded()
Returns whether this widget has been loaded. |
abstract boolean |
isPopup()
Returns whether the widget is overlayed. |
boolean |
isRendered()
Returns whether the widget is rendered. |
abstract boolean |
isVisible()
Returns whether the widget is visible. |
protected void |
layoutSizeChanged(int width,
int height)
Virtual method that indicates a size change. |
abstract void |
load()
Loads content just before the widget is used. |
void |
positionAt(WWidget widget)
Positions a widget next to another widget. |
void |
positionAt(WWidget widget,
Orientation orientation)
Positions a widget next to another widget. |
protected abstract void |
propagateSetEnabled(boolean enabled)
Propagates that a widget was enabled or disabled through children. |
void |
refresh()
Refresh the widget. |
void |
remove()
Destructor. |
void |
removeStyleClass(java.lang.String styleClass)
Removes a CSS style class. |
abstract void |
removeStyleClass(java.lang.String styleClass,
boolean force)
Removes a CSS style class. |
void |
resize(int widthPixels,
int heightPixels)
Resizes the widget. |
void |
resize(WLength width,
WLength height)
Resizes the widget. |
abstract void |
setAttributeValue(java.lang.String name,
java.lang.String value)
Sets an attribute value. |
abstract void |
setClearSides(java.util.EnumSet<Side> sides)
Sets the sides that should be cleared of floats. |
void |
setClearSides(Side side,
Side... sides)
Sets the sides that should be cleared of floats. |
abstract void |
setDecorationStyle(WCssDecorationStyle style)
Sets a CSS decoration style. |
abstract void |
setDisabled(boolean disabled)
Sets whether the widget is disabled. |
abstract void |
setFloatSide(Side s)
Specifies a CSS float side. |
void |
setHeight(WLength height)
Sets the height. |
void |
setHidden(boolean hidden)
Hides or shows the widget. |
abstract void |
setHidden(boolean hidden,
WAnimation animation)
Hides or shows the widget. |
abstract void |
setHiddenKeepsGeometry(boolean enabled)
Sets whether the widget keeps its geometry when hidden. |
abstract void |
setId(java.lang.String id)
Sets the CSS Id. |
abstract void |
setInline(boolean inlined)
Sets whether the widget is displayed inline or as a block. |
abstract void |
setJavaScriptMember(java.lang.String name,
java.lang.String value)
Sets a JavaScript member. |
protected void |
setLayoutSizeAware(boolean aware)
Sets the widget to be aware of its size set by a layout manager. |
abstract void |
setLineHeight(WLength height)
Sets the CSS line height for contained text. |
void |
setMargin(int pixels)
Sets CSS margins around the widget. |
void |
setMargin(int pixels,
java.util.EnumSet<Side> sides)
Sets CSS margins around the widget. |
void |
setMargin(int pixels,
Side side,
Side... sides)
Sets CSS margins around the widget. |
void |
setMargin(WLength margin)
Sets CSS margins around the widget. |
abstract void |
setMargin(WLength margin,
java.util.EnumSet<Side> sides)
Sets CSS margins around the widget. |
void |
setMargin(WLength margin,
Side side,
Side... sides)
Sets CSS margins around the widget. |
abstract void |
setMaximumSize(WLength width,
WLength height)
Sets a maximum size. |
abstract void |
setMinimumSize(WLength width,
WLength height)
Sets a minimum size. |
void |
setOffsets(int pixels)
Sets CSS offsets for a non-statically positioned widget. |
void |
setOffsets(int pixels,
java.util.EnumSet<Side> sides)
Sets CSS offsets for a non-statically positioned widget. |
void |
setOffsets(int pixels,
Side side,
Side... sides)
Sets CSS offsets for a non-statically positioned widget. |
void |
setOffsets(WLength offset)
Sets CSS offsets for a non-statically positioned widget. |
abstract void |
setOffsets(WLength offset,
java.util.EnumSet<Side> sides)
Sets CSS offsets for a non-statically positioned widget. |
void |
setOffsets(WLength offset,
Side side,
Side... sides)
Sets CSS offsets for a non-statically positioned widget. |
abstract void |
setPopup(boolean popup)
Lets the widget overlay over other sibling widgets. |
abstract void |
setPositionScheme(PositionScheme scheme)
Sets the CSS position scheme. |
abstract void |
setSelectable(boolean selectable)
Sets as selectable. |
abstract void |
setStyleClass(java.lang.String styleClass)
Sets (one or more) CSS style classes. |
abstract void |
setTabIndex(int index)
Sets the tab index. |
void |
setToolTip(java.lang.CharSequence text)
Sets a tooltip. |
abstract void |
setToolTip(java.lang.CharSequence text,
TextFormat textFormat)
Sets a tooltip. |
void |
setVerticalAlignment(AlignmentFlag alignment)
Sets the vertical alignment. |
abstract void |
setVerticalAlignment(AlignmentFlag alignment,
WLength length)
Sets the vertical alignment. |
void |
setWidth(WLength width)
Sets the width. |
void |
show()
Shows the widget. |
void |
stopAcceptDrops(java.lang.String mimeType)
Indicates that a mime type is no longer accepted for dropping. |
void |
toggleStyleClass(java.lang.String styleClass,
boolean add)
|
void |
toggleStyleClass(java.lang.String styleClass,
boolean add,
boolean force)
|
static WString |
tr(java.lang.String key)
Short hand for WString#tr(). |
| Methods inherited from class eu.webtoolkit.jwt.WObject |
|---|
getId, getObjectName, setObjectName |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
protected WWidget(WContainerWidget parent)
When a parent container is specified, the widget is added to the
container, using WContainerWidget#addWidget().
protected WWidget()
Calls this((WContainerWidget)null)
| Method Detail |
|---|
public void remove()
Deletes a widget and all children (recursively). If the widget is contained in another widget, it is removed first.
remove in class WObjectWContainerWidget.removeWidget(WWidget widget)public WWidget getParent()
With a few exceptions, the parent is a WContainerWidget, and has
been set implicitly when adding the widget to a container using
WContainerWidget#addWidget(), by passing a container as a parent to the
constructor, or by inserting the widget into a layout manager.
public abstract void setPositionScheme(PositionScheme scheme)
Establishes how the widget must be layed-out relative to its siblings. The default position scheme is Static.
This applies to CSS-based layout.
PositionScheme,
getPositionScheme()public abstract PositionScheme getPositionScheme()
This applies to CSS-based layout.
PositionScheme,
setPositionScheme(PositionScheme scheme)
public abstract void setOffsets(WLength offset,
java.util.EnumSet<Side> sides)
The argument sides may be a combination of Side.Left, Side.Right, Side.Top, and Side.Bottom.
This applies only to widgets that have a position scheme that is
PositionScheme.Relative, PositionScheme.Absolute, or
PositionScheme.Fixed, and has a slightly different meaning for
these three cases.
For a relatively positioned widget, an
offset applies relative to the position the widget would have when
layed-out using a static position scheme.
The widget may be shifted to the left or right by specifying an offset
for the left or right) side. The
widget may be shifted vertically, by specifying an offset for the
top or bottom side.
For an absolutely positioned widget, an
offset specifies a distance of the corresponding side of the widget with
respect to the corresponding side of the reference parent widget. Thus,
setting all offsets to 0 result in a widget that spans the entire
reference widget. The reference parent widget is the first ancestor
widget that is a table cell, or a widget with a relative, absolute or
fixed position scheme.
For an fixed positioned widget, an offset
specifies a distance of the corresponding side of the widget with respect
to the browser window, regardless of scrolling. Thus, setting all offsets
to 0 result in a widget that spans the entire browser window.
This applies to CSS-based layout.
getOffset(Side side)
public final void setOffsets(WLength offset,
Side side,
Side... sides)
Calls setOffsets(offset, EnumSet.of(side, sides))
public final void setOffsets(WLength offset)
Calls setOffsets(offset, Side.All)
public void setOffsets(int pixels,
java.util.EnumSet<Side> sides)
This is a convenience method for applying offsets in pixel units.
setOffsets(WLength offset, EnumSet sides)
public final void setOffsets(int pixels,
Side side,
Side... sides)
Calls setOffsets(pixels,
EnumSet.of(side, sides))
public final void setOffsets(int pixels)
Calls setOffsets(pixels,
Side.All)
public abstract WLength getOffset(Side side)
This applies to CSS-based layout.
setOffsets(WLength offset, EnumSet sides)
public void resize(WLength width,
WLength height)
Specify a new size for this widget, by specifying width and height. By
default a widget has automatic width and height, see
WLength#isAuto().
This applies to CSS-based layout, and only
block widgets can be given a
size reliably.
When inserted in a layout manager, the widget may be informed about its
current size using setLayoutSizeAware(). If you have defined a
"wtResize()" JavaScript method for the widget,
then this method will also be called. operation.
getWidth(),
getHeight()
public void resize(int widthPixels,
int heightPixels)
This is a convenience method for resizing a widget using pixel units.
resize(WLength width, WLength height)public abstract WLength getWidth()
Returns the width set for this widget. This is not a calculated width,
based on layout, but the width as specified with
resize().
This applies to CSS-based layout.
resize(WLength width, WLength height),
getHeight()public void setWidth(WLength width)
This is a convenience method to change only the width of a widget, and is implemented as:
resize(width, height())
resize(WLength width, WLength height),
setHeight(WLength height)public abstract WLength getHeight()
Returns the height set for this widget. This is not a calculated height,
based on layout, but the height as specified previously with
resize().
This applies to CSS-based layout.
resize(WLength width, WLength height),
getWidth()public void setHeight(WLength height)
This is a convenience method to change only the width of a widget, and is implemented as:
resize(width(), height)
This applies to CSS-based layout.
resize(WLength width, WLength height),
setWidth(WLength width)
public abstract void setMinimumSize(WLength width,
WLength height)
Specify a minimum size for this widget.
The default minimum width and height is 0. The special value
WLength.Auto indicates that the initial width is used as minimum
size.
When the widget size is actively managed (using e.g. a layout manager), these sizes are taken into account.
resize(WLength width, WLength height),
getMinimumWidth(),
getMinimumHeight()public abstract WLength getMinimumWidth()
Returns the minimum width set for this widget with
setMinimumSize().
setMinimumSize(WLength width, WLength height),
getMinimumHeight()public abstract WLength getMinimumHeight()
Returns the minmum height set for this widget with
setMinimumSize().
setMinimumSize(WLength width, WLength height),
getMinimumWidth()
public abstract void setMaximumSize(WLength width,
WLength height)
Specifies a maximum size for this widget.
The default maximum width and height are WLength.Auto, indicating
no maximum size.
resize(WLength width, WLength height),
setMinimumSize(WLength width, WLength height)public abstract WLength getMaximumWidth()
Returns the maximum width set for this widget with
setMaximumSize().
setMaximumSize(WLength width, WLength height),
getMaximumHeight()public abstract WLength getMaximumHeight()
Returns the minmum height set for this widget with
setMaximumSize().
setMaximumSize(WLength width, WLength height),
getMaximumWidth()
public void positionAt(WWidget widget,
Orientation orientation)
Positions this absolutely positioned widget next to another
widget. Both widgets must be visible.
When orientation = Orientation.Vertical, the widget
is displayed below the other widget (or above in case there is not enough
room below). It is aligned so that the left edges align (or the right
edges if there is not enough room to the right).
Conversely, when orientation =
Orientation.Horizontal, the widget is displayed to the right of
the other widget (or to the left in case there is not enough room to the
right). It is aligned so that the top edges align (or the bottom edges if
there is not enough room below).
Note: This only works if JavaScript is available.
public final void positionAt(WWidget widget)
Calls positionAt(widget, Orientation.Vertical)
public abstract void setLineHeight(WLength height)
public abstract WLength getLineHeight()
public abstract void setFloatSide(Side s)
This only applies to widgets with a PositionScheme.Static
getPositionScheme().
This lets the widget float to one of the sides of the parent widget, at
the current line. A typical use is to position images within text. Valid
values for Side or java None , Side.Left or
Side.Right.
This applies to CSS-based layout.
public abstract Side getFloatSide()
setFloatSide(Side s)public abstract void setClearSides(java.util.EnumSet<Side> sides)
This pushes the widget down until it is not surrounded by floats at the
sides (which may be a combination of Side.Left and
Side.Right).
This applies to CSS-based layout.
setFloatSide(Side s)
public final void setClearSides(Side side,
Side... sides)
Calls setClearSides(EnumSet.of(side,
sides))
public abstract java.util.EnumSet<Side> getClearSides()
setClearSides(EnumSet sides)
public abstract void setMargin(WLength margin,
java.util.EnumSet<Side> sides)
Setting margin has the effect of adding a distance between the widget and surrounding widgets. The default margin (with an automatic length) is zero.
Use any combination of Side.Left, Side.Right,
Side.Bottom, or Side.Top.
This applies to CSS-based layout.
getMargin(Side side)
public final void setMargin(WLength margin,
Side side,
Side... sides)
Calls setMargin(margin,
EnumSet.of(side, sides))
public final void setMargin(WLength margin)
Calls setMargin(margin,
Side.All)
public void setMargin(int pixels,
java.util.EnumSet<Side> sides)
This is a convenience method for setting margins in pixel units.
setMargin(WLength margin, EnumSet sides)
public final void setMargin(int pixels,
Side side,
Side... sides)
Calls setMargin(pixels,
EnumSet.of(side, sides))
public final void setMargin(int pixels)
Calls setMargin(pixels,
Side.All)
public abstract WLength getMargin(Side side)
This applies to CSS-based layout.
setMargin(WLength margin, EnumSet sides)public abstract void setHiddenKeepsGeometry(boolean enabled)
Normally, a widget that is hidden will no longer occupy space, causing a reflow of sibling widgets. Using this method you may change this behavior to keep an (open) space when hidden.
Note: Currently you can only set this before initial rendering.
setHidden(boolean hidden, WAnimation animation)public abstract boolean isHiddenKeepsGeometry()
setHiddenKeepsGeometry(boolean enabled)
public abstract void setHidden(boolean hidden,
WAnimation animation)
Hides or show the widget (including all its descendant widgets). When
setting hidden = false, this widget and all
descendant widgets that are not hidden will be shown. A widget is only
visible if it and all its ancestors in the widget tree are visible, which
may be checked using isVisible().
public final void setHidden(boolean hidden)
Calls setHidden(hidden, new WAnimation())
public abstract boolean isHidden()
A widget that is not hidden may still be not visible when one of its
ancestor widgets is hidden. Use isVisible()
to check the visibility of a widget.
setHidden(boolean hidden, WAnimation animation),
isVisible()public abstract boolean isVisible()
A widget is visible if it is not hidden, and none of its ancestors are
hidden. This method returns the true visibility, while
isHidden() returns whether a widget has been
explicitly hidden.
Note that a widget may be at the same time not hidden, and not visible, in case one of its ancestors was hidden.
isHidden()public abstract void setDisabled(boolean disabled)
Enables or disables the widget (including all its descendant widgets). setDisabled(false) will enable this widget and all descendant widgets that are not disabled. A widget is only enabled if it and all its ancestors in the widget tree are disabled.
Typically, a disabled form widget will not allow changing the value, and disabled widgets will not react to mouse click events.
disable(),
enable()public abstract boolean isDisabled()
A widget that is not set disabled may still be disabled when one of its
ancestor widgets is set disabled. Use isEnabled() to find out whether a widget is enabled.
setDisabled(boolean disabled),
isEnabled()public abstract boolean isEnabled()
A widget is enabled if it is not disabled, and none of its ancestors are
disabled. This method returns whether the widget is rendered as enabled,
while isDisabled() returns whether a widget
has been explicitly disabled.
Note that a widget may be at the same time not enabled, and not disabled, in case one of its ancestors was disabled.
isDisabled()public abstract void setPopup(boolean popup)
A widget that isPopup() will be rendered on top
of any other sibling widget contained within the same parent (including
other popup widgets previously added to the container).
This will only have an effect when the widgetis either
PositionScheme.Absolute or PositionScheme.Fixed
getPositionScheme().
This applies to CSS-based layout, and configures the z-index property.
public abstract boolean isPopup()
This applies to CSS-based layout.
setPopup(boolean popup)public abstract void setInline(boolean inlined)
This option changes whether this widget must be rendered in line with
sibling widgets wrapping at the right edge of the parent container (like
text), or whether this widget must be rendered as a rectangular block
that stacks vertically with sibling widgets (unless a CSS float property
is applied). Depending on the widget type, the default value is inline
(such as for example for WText, or WPushButton), or block
(such as for example for a WContainerWidget).
This applies to CSS-based layout.
public abstract boolean isInline()
setInline(boolean inlined)public abstract void setDecorationStyle(WCssDecorationStyle style)
This copies the style over its current
getDecorationStyle()
public abstract WCssDecorationStyle getDecorationStyle()
This groups all decorative aspects of the widget, which do not affect the widget layout (except for the border properties which may behave like extra margin around the widget).
When a decoration style has not been previously set, it returns a default decoration style object.
setDecorationStyle(WCssDecorationStyle style)public abstract void setStyleClass(java.lang.String styleClass)
You may set one or more space separated style classes. CSS style class works in conjunction with style sheet, and provides a flexible way to provide many widgets the same markup.
Setting an empty string removes the style class(es).
WApplication.getStyleSheet()public abstract java.lang.String getStyleClass()
setStyleClass(String styleClass)
public abstract void addStyleClass(java.lang.String styleClass,
boolean force)
When force = true, a JavaScript call will be
used to add the style class to the DOM element (if JavaScript is
available). This may be necessary when client-side JavaScript manipulates
the same style class.
public final void addStyleClass(java.lang.String styleClass)
Calls addStyleClass(styleClass, false)
public abstract void removeStyleClass(java.lang.String styleClass,
boolean force)
When force = true, a JavaScript call will be
used to remove the style class from the DOM element (if JavaScript is
available). This may be necessary when client-side JavaScript manipulates
the same style class.
public final void removeStyleClass(java.lang.String styleClass)
Calls removeStyleClass(styleClass, false)
public void toggleStyleClass(java.lang.String styleClass,
boolean add,
boolean force)
public final void toggleStyleClass(java.lang.String styleClass,
boolean add)
public abstract void setVerticalAlignment(AlignmentFlag alignment,
WLength length)
This only applies to inline widgets, and determines how to position itself on the current line, with respect to sibling inline widgets.
This applies to CSS-based layout.
public final void setVerticalAlignment(AlignmentFlag alignment)
Calls
setVerticalAlignment(alignment, WLength.Auto)
public abstract AlignmentFlag getVerticalAlignment()
This applies to CSS-based layout.
setVerticalAlignment(AlignmentFlag alignment, WLength
length)public abstract WLength getVerticalAlignmentLength()
This applies to CSS-based layout.
setVerticalAlignment(AlignmentFlag alignment, WLength
length)
public abstract void setToolTip(java.lang.CharSequence text,
TextFormat textFormat)
The tooltip is displayed when the cursor hovers over the widget.
When textFormat is XHTMLText, the tooltip may contain any
valid XHTML snippet. The tooltip will then be rendered using JavaScript.
public final void setToolTip(java.lang.CharSequence text)
Calls setToolTip(text, TextFormat.PlainText)
public abstract WString getToolTip()
public void refresh()
The refresh method is invoked when the locale is changed using
WApplication#setLocale() or
when the user hit the refresh button.
The widget must actualize its contents in response.
public java.lang.String getJsRef()
You may want to use this in conjunction with JSlot or
doJavaScript() in custom
JavaScript code.
isRendered()
public abstract void setAttributeValue(java.lang.String name,
java.lang.String value)
Associate an extra attribute with this widget, with the given value. This is only useful when processing dom nodes associated with widgets in custom JavaScript code.
JSlot,
doJavaScript(String js)public abstract java.lang.String getAttributeValue(java.lang.String name)
setAttributeValue(String name, String value)
public abstract void setJavaScriptMember(java.lang.String name,
java.lang.String value)
This binds a JavaScript member, which is set as a JavaScript property to the DOM object that implements this widget. The value may be any JavaScript expression, including a function.
Members that start with "wt" are reserved for
internal use. You may define a member
"wtResize(self, width, height)" method if your
widget needs active layout management. If defined, this method will be
used by layout managers and when doing
resize() to set the
size of the widget, instead of setting the CSS width and height
properties.
public abstract java.lang.String getJavaScriptMember(java.lang.String name)
setJavaScriptMember(String name, String value)
public abstract void callJavaScriptMember(java.lang.String name,
java.lang.String args)
This calls a JavaScript member.
setJavaScriptMember(String name, String value)public static WString tr(java.lang.String key)
WString#tr().
Creates a localized string with the given key.
public abstract void load()
When the widget is inserted in the widget hierarchy, this method is called. Widgets that get inserted in the widget hierarchy will be rendered. Visible widgets are rendered immediately, and invisible widgets in the back-ground (or not for a plain HTML session). This method is called when the widget is directly or indirectly inserted into the widget tree.
The default implementation simply propagates the load signal to its children. You may want to override this method to delay loading of resource-intensive contents.
During the life-time of a widget, this method may be called multiple times, so you should make sure that you do a deferred initializiation only once.
public abstract boolean isLoaded()
load()public abstract void setTabIndex(int index)
For widgets that receive focus, focus is passed on to the next widget in the tabbing chain based on their tab index. When the user navigates through form widgets using the keyboard, widgets receive focus starting from the element with the lowest tab index to elements with the highest tab index.
A tab index only applies to widgets than can receive focus (which are
WFormWidget, WAnchor, WPushButton), but setting a
tab index on any other type of widget will propagate to its contained
form widgets.
Widgets with a same tab index will receive focus in the same order as they are inserted in the widget tree.
The default tab index is 0.
public abstract int getTabIndex()
setTabIndex(int index)
public void acceptDrops(java.lang.String mimeType,
java.lang.String hoverStyleClass)
You may specify a style class that is applied to the widget when the specified mimetype hovers on top of it.
dropEvent(WDropEvent event),
WInteractWidget.setDraggable(String mimeType, WWidget dragWidget,
boolean isDragWidgetOnly, WObject sourceObject),
stopAcceptDrops(String mimeType)public final void acceptDrops(java.lang.String mimeType)
Calls acceptDrops(mimeType, "")
public void stopAcceptDrops(java.lang.String mimeType)
acceptDrops(String mimeType, String hoverStyleClass)public abstract void setId(java.lang.String id)
Sets a custom Id. Note that the Id must be unique across the whole widget tree, can only be set right after construction and cannot be changed. This is mostly useful for in tests using a test plan that manipulates DOM elements by Id.
By default, auto-generated id's are used.
WObject.getId()public abstract WWidget find(java.lang.String name)
WObject.setObjectName(String name)public void htmlText(java.io.Writer out)
Streams the widget as UTF8-encoded (HTML-compatible) XHTML.
This may be useful as a debugging tool for the web-savvy, or in other rare situations. Usually, you will not deal directly with HTML, and calling this method on a widget that is rendered may interfere with the library keeping track of changes to the widget.
public abstract void setSelectable(boolean selectable)
When a widget is made unselectable, a selection of text (or images) will not be visible (but may still be possible).
By default, the widget inherits this property from its parent, and this
property propagates to all children. The top level container (
WApplication#getRoot()) selectable by
default.
public abstract void doJavaScript(java.lang.String js)
Calling
WApplication#doJavaScript() with JavaScript code that refers to a widget
using getJsRef(), that is still to be rendered
may cause JavaScript errors because the corresponding DOM node does not
exist. This happens for example when a widget is created, but not yet
inserted in the widget tree.
This method guarantees that the JavaScript code is only run when the
corresponding DOM node (using getJsRef())
resolves to a valid DOM object.
getJsRef()public boolean isRendered()
getJsRef()public void hide()
setHidden(boolean hidden, WAnimation animation)public void animateHide(WAnimation animation)
To hide the widget, the animation is replayed in reverse.
setHidden(boolean hidden, WAnimation animation)public void show()
setHidden(boolean hidden, WAnimation animation)public void animateShow(WAnimation animation)
setHidden(boolean hidden, WAnimation animation)public void enable()
This calls setDisabled(false).
public void disable()
This calls setDisabled(true).
public boolean isLayoutSizeAware()
setLayoutSizeAware(boolean aware)protected void setLayoutSizeAware(boolean aware)
When the widget is inserted in a layout manager, it will be resized to fit within the constraints imposed by the layout manager. By default, this done client-side only by setting the CSS height (and if needed, width) properties of the DOM element corresponding to the widget.
A widget may define a JavaScript method,
"wtResize(self, width, height)", to actively
manage its client-side width and height, if it wants to react to these
client-side size hints in a custom way (see
setJavaScriptMember()).
By setting sizeAware to true, the widget will propagate the
width and height provided by the layout manager to the virtual
layoutSizeChanged() method, so that you may for example change the size
of contained children in a particular way (doing a custom, manual,
layout).
layoutSizeChanged(int width, int height)
protected void layoutSizeChanged(int width,
int height)
This method propagates the client-side width and height of the widget when the widget is contained by a layout manager and setLayoutSizeAware(true) was called.
setLayoutSizeAware(boolean aware)protected void dropEvent(WDropEvent event)
Reimplement this method to handle a drop events for mime types you declared to accept using acceptDrops.
The default implementation simply completes the drag and drop operation as if nothing happened.
acceptDrops(String mimeType, String hoverStyleClass),
WInteractWidget.setDraggable(String mimeType, WWidget dragWidget,
boolean isDragWidgetOnly, WObject sourceObject)protected abstract void enableAjax()
This method is called when the progressive bootstrap method is used, and support for AJAX has been detected. The default behavior will upgrade the widget's event handling to use AJAX instead of full page reloads, and propagate the call to its children.
You may want to reimplement this method if you want to make changes to widget when AJAX is enabled. You should always call the base implementation.
WApplication.enableAjax()protected int boxPadding(Orientation orientation)
This is used by the layout managers to correct for a built-in padding which interferes with setting a widget's width (or height) to 100%.
A layout manager needs to set the width to 100% only for form widgets (
WTextArea, WLineEdit, WComboBox, etc...).
Therefore, only for those widgets this needs to return the padding (the
default implementation returns 0).
For form widgets, the padding depends on the specific browser/platform combination, unless an explicit padding is set for the widget.
When setting an explicit padding for the widget using a style class, you will want to reimplement this method to return this padding in case you want to set the widget inside a layout manager.
boxBorder(Orientation orientation)protected int boxBorder(Orientation orientation)
This is used by the layout managers to correct for a built-in border which interferes with setting a widget's width (or height) to 100%.
A layout manager needs to set the width to 100% only for form widgets (
WTextArea, WLineEdit, WComboBox, etc...).
Therefore, only for those widgets this needs to return the border width
(the default implementation returns 0).
For form widgets, the border width depends on the specific browser/platform combination, unless an explicit border is set for the widget.
When setting an explicit border for the widget using a style class, you will want to reimplement this method to return this border width, in case you want to set the widget inside a layout manager.
boxPadding(Orientation orientation)protected abstract void propagateSetEnabled(boolean enabled)
When enabling or disabling a widget, you usually also want to disable
contained children. This method is called by
setDisabled() to propagate
its state to all children.
You may want to reimplement this method if they wish to render differently when a widget is disabled. The default implementation will propagate the signal to all children.
protected boolean containsExposed(WWidget w)
protected void getDrop(java.lang.String sourceId,
java.lang.String mimeType,
WMouseEvent event)
protected WCssTextRule addCssRule(java.lang.String selector,
java.lang.String declarations,
java.lang.String ruleName)
protected final WCssTextRule addCssRule(java.lang.String selector,
java.lang.String declarations)
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||