eu.webtoolkit.jwt
Class WInteractWidget

java.lang.Object
  extended by eu.webtoolkit.jwt.WObject
      extended by eu.webtoolkit.jwt.WWidget
          extended by eu.webtoolkit.jwt.WWebWidget
              extended by eu.webtoolkit.jwt.WInteractWidget
Direct Known Subclasses:
WAbstractMedia, WContainerWidget, WFormWidget, WImage, WLabel, WPaintedWidget, WProgressBar, WTable, WTemplate, WText

public abstract class WInteractWidget
extends WWebWidget

An abstract widget that can receive user-interface interaction.

This abstract widget provides access to event signals that correspond to user-interface interaction through mouse or keyboard.

When JavaScript is disabled, only the clicked() event will propagate (but without event details information).

CSS

Styling through CSS is not applicable.


Constructor Summary
WInteractWidget()
          Create an InteractWidget with optional parent.
WInteractWidget(WContainerWidget parent)
          Create an InteractWidget with optional parent.
 
Method Summary
 EventSignal1<WMouseEvent> clicked()
          Event signal emitted when a mouse key was clicked on this widget.
 EventSignal1<WMouseEvent> doubleClicked()
          Event signal emitted when a mouse key was double clicked on this widget.
 EventSignal enterPressed()
          Event signal emitted when enter was pressed.
 EventSignal escapePressed()
          Event signal emitted when escape was pressed.
 EventSignal1<WGestureEvent> gestureChanged()
          Event signal emitted when a gesture is changed.
 EventSignal1<WGestureEvent> gestureEnded()
          Event signal emitted when a gesture is ended.
 EventSignal1<WGestureEvent> gestureStarted()
          Event signal emitted when a gesture is started.
 boolean isEnabled()
          Returns whether the widget is enabled.
 EventSignal1<WKeyEvent> keyPressed()
          Event signal emitted when a "character" was entered.
 EventSignal1<WKeyEvent> keyWentDown()
          Event signal emitted when a keyboard key is pushed down.
 EventSignal1<WKeyEvent> keyWentUp()
          Event signal emitted when a keyboard key is released.
 void load()
          Loads content just before the widget is used.
 EventSignal1<WMouseEvent> mouseDragged()
          Event signal emitted when the mouse is dragged over this widget.
 EventSignal1<WMouseEvent> mouseMoved()
          Event signal emitted when the mouse moved over this widget.
 EventSignal1<WMouseEvent> mouseWentDown()
          Event signal emitted when a mouse key was pushed down on this widget.
 EventSignal1<WMouseEvent> mouseWentOut()
          Event signal emitted when the mouse went out of this widget.
 EventSignal1<WMouseEvent> mouseWentOver()
          Event signal emitted when the mouse entered this widget.
 EventSignal1<WMouseEvent> mouseWentUp()
          Event signal emitted when a mouse key was released on this widget.
 EventSignal1<WMouseEvent> mouseWheel()
          Event signal emitted when the mouse scroll wheel was used.
protected  void propagateSetEnabled(boolean enabled)
          Propagates that a widget was enabled or disabled through children.
 void remove()
          Destructor.
 void setDraggable(java.lang.String mimeType)
          Configure dragging for drag and drop.
 void setDraggable(java.lang.String mimeType, WWidget dragWidget)
          Configure dragging for drag and drop.
 void setDraggable(java.lang.String mimeType, WWidget dragWidget, boolean isDragWidgetOnly)
          Configure dragging for drag and drop.
 void setDraggable(java.lang.String mimeType, WWidget dragWidget, boolean isDragWidgetOnly, WObject sourceObject)
          Configure dragging for drag and drop.
 EventSignal1<WTouchEvent> touchEnded()
          Event signal emitted when a finger is removed from the screen.
 EventSignal1<WTouchEvent> touchMoved()
          Event signal emitted when a finger, which is already placed on the screen, is moved across the screen.
 EventSignal1<WTouchEvent> touchStarted()
          Event signal emitted when a finger is placed on the screen.
 
Methods inherited from class eu.webtoolkit.jwt.WWebWidget
addStyleClass, callJavaScriptMember, childrenChanged, doJavaScript, domCanBeSaved, enableAjax, escapeText, escapeText, escapeText, escapeText, find, getAttributeValue, getChildren, getClearSides, getDecorationStyle, getFloatSide, getHeight, getId, getJavaScriptMember, getLineHeight, getMargin, getMaximumHeight, getMaximumWidth, getMinimumHeight, getMinimumWidth, getOffset, getPositionScheme, getStyleClass, getTabIndex, getToolTip, getVerticalAlignment, getVerticalAlignmentLength, getWidth, isDisabled, isHidden, isHiddenKeepsGeometry, isInline, isLoaded, isPopup, isRendered, isVisible, jsStringLiteral, jsStringLiteral, refresh, removeScript, removeStyleClass, resize, setAttributeValue, setClearSides, setDecorationStyle, setDisabled, setFloatSide, setHidden, setHiddenKeepsGeometry, setId, setInline, setJavaScriptMember, setLineHeight, setLoadLaterWhenInvisible, setMargin, setMaximumSize, setMinimumSize, setOffsets, setPopup, setPositionScheme, setSelectable, setStyleClass, setTabIndex, setToolTip, setVerticalAlignment, updateSignalConnection
 
Methods inherited from class eu.webtoolkit.jwt.WWidget
acceptDrops, acceptDrops, addCssRule, addCssRule, addStyleClass, animateHide, animateShow, boxBorder, boxPadding, containsExposed, disable, dropEvent, enable, getDrop, getJsRef, getParent, hide, htmlText, isLayoutSizeAware, layoutSizeChanged, positionAt, positionAt, removeStyleClass, resize, setClearSides, setHeight, setHidden, setLayoutSizeAware, setMargin, setMargin, setMargin, setMargin, setMargin, setOffsets, setOffsets, setOffsets, setOffsets, setOffsets, setToolTip, setVerticalAlignment, setWidth, show, stopAcceptDrops, toggleStyleClass, toggleStyleClass, tr
 
Methods inherited from class eu.webtoolkit.jwt.WObject
getObjectName, setObjectName
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

WInteractWidget

public WInteractWidget(WContainerWidget parent)
Create an InteractWidget with optional parent.


WInteractWidget

public WInteractWidget()
Create an InteractWidget with optional parent.

Calls this((WContainerWidget)null)

Method Detail

remove

public void remove()
Description copied from class: WWidget
Destructor.

Deletes a widget and all children (recursively). If the widget is contained in another widget, it is removed first.

Overrides:
remove in class WWebWidget
See Also:
WContainerWidget.removeWidget(WWidget widget)

keyWentDown

public EventSignal1<WKeyEvent> keyWentDown()
Event signal emitted when a keyboard key is pushed down.

The keyWentDown signal is the first signal emitted when a key is pressed (before the keyPressed signal). Unlike keyPressed() however it is also emitted for modifier keys (such as "shift", "control", ...) or keyboard navigation keys that do not have a corresponding character.

Form widgets (like WLineEdit) will receive key events when focussed. Other widgets will receive key events when they contain (directly or indirectly) a form widget that has focus.

To capture a key down event when no element has focus, see WApplication#globalKeyWentDown()

See Also:
keyPressed(), keyWentUp()

keyPressed

public EventSignal1<WKeyEvent> keyPressed()
Event signal emitted when a "character" was entered.

The keyPressed signal is emitted when a key is pressed, and a character is entered. Unlike keyWentDown(), it is emitted only for key presses that result in a character being entered, and thus not for modifier keys or keyboard navigation keys.

Form widgets (like WLineEdit) will receive key events when focussed. Other widgets will receive key events when they contain (directly or indirectly) a form widget that has focus.

To capture a key press when no element has focus, see WApplication#globalKeyPressed()

See Also:
keyWentDown()

keyWentUp

public EventSignal1<WKeyEvent> keyWentUp()
Event signal emitted when a keyboard key is released.

This is the counter-part of the keyWentDown() event. Every key-down has its corresponding key-up.

Form widgets (like WLineEdit) will receive key events when focussed. Other widgets will receive key events when they contain (directly or indirectly) a form widget that has focus.

To capture a key up event when no element has focus, see WApplication#globalKeyWentUp()

See Also:
keyWentDown()

enterPressed

public EventSignal enterPressed()
Event signal emitted when enter was pressed.

This signal is emitted when the Enter or Return key was pressed.

Form widgets (like WLineEdit) will receive key events when focussed. Other widgets will receive key events when they contain (directly or indirectly) a form widget that has focus.

To capture an enter press when no element has focus, see WApplication#globalEnterPressed()

See Also:
keyPressed(), Key.Key_Enter

escapePressed

public EventSignal escapePressed()
Event signal emitted when escape was pressed.

This signal is emitted when the Escape key was pressed.

Form widgets (like WLineEdit) will receive key events when focussed. Other widgets will receive key events when they contain (directly or indirectly) a form widget that has focus.

To capture an escape press when no element has focus, see WApplication#globalEscapePressed()

See Also:
keyPressed(), Key.Key_Escape

clicked

public EventSignal1<WMouseEvent> clicked()
Event signal emitted when a mouse key was clicked on this widget.

The event details contains information such as the button, optional keyboard modifiers, and mouse coordinates relative to the widget, the window window, or the document.

Note: When JavaScript is disabled, the event details contain invalid information.


doubleClicked

public EventSignal1<WMouseEvent> doubleClicked()
Event signal emitted when a mouse key was double clicked on this widget.

The event details contains information such as the button, optional keyboard modifiers, and mouse coordinates relative to the widget, the window window, or the document.

Note: When JavaScript is disabled, the signal will never fire.


mouseWentDown

public EventSignal1<WMouseEvent> mouseWentDown()
Event signal emitted when a mouse key was pushed down on this widget.

The event details contains information such as the button, optional keyboard modifiers, and mouse coordinates relative to the widget, the window window, or the document.

Note: When JavaScript is disabled, the signal will never fire.


mouseWentUp

public EventSignal1<WMouseEvent> mouseWentUp()
Event signal emitted when a mouse key was released on this widget.

The event details contains information such as the button, optional keyboard modifiers, and mouse coordinates relative to the widget, the window window, or the document.

Note: When JavaScript is disabled, the signal will never fire.


mouseWentOut

public EventSignal1<WMouseEvent> mouseWentOut()
Event signal emitted when the mouse went out of this widget.

Note: When JavaScript is disabled, the signal will never fire.


mouseWentOver

public EventSignal1<WMouseEvent> mouseWentOver()
Event signal emitted when the mouse entered this widget.

Note: When JavaScript is disabled, the signal will never fire.


mouseMoved

public EventSignal1<WMouseEvent> mouseMoved()
Event signal emitted when the mouse moved over this widget.

The mouse event contains information on the button(s) currently pressed. If multiple buttons are currently pressed, only the button with smallest enum value is returned.

Note: When JavaScript is disabled, the signal will never fire.


mouseDragged

public EventSignal1<WMouseEvent> mouseDragged()
Event signal emitted when the mouse is dragged over this widget.

The mouse event contains information on the button(s) currently pressed. If multiple buttons are currently pressed, only the button with smallest enum value is returned.

Note: When JavaScript is disabled, the signal will never fire.


mouseWheel

public EventSignal1<WMouseEvent> mouseWheel()
Event signal emitted when the mouse scroll wheel was used.

The event details contains information such as the wheel delta, optional keyboard modifiers, and mouse coordinates relative to the widget, the window window, or the document.

Note: When JavaScript is disabled, the signal will never fire.


touchStarted

public EventSignal1<WTouchEvent> touchStarted()
Event signal emitted when a finger is placed on the screen.

The event details contains information such as the touches, target touches and changed touches.

Note: When JavaScript is disabled, the signal will never fire.


touchEnded

public EventSignal1<WTouchEvent> touchEnded()
Event signal emitted when a finger is removed from the screen.

The event details contains information such as the touches, target touches and changed touches.

Note: When JavaScript is disabled, the signal will never fire.


touchMoved

public EventSignal1<WTouchEvent> touchMoved()
Event signal emitted when a finger, which is already placed on the screen, is moved across the screen.

The event details contains information such as the touches, target touches and changed touches.

Note: When JavaScript is disabled, the signal will never fire.


gestureStarted

public EventSignal1<WGestureEvent> gestureStarted()
Event signal emitted when a gesture is started.

The event details contains information about the scale and the rotation.

Note: When JavaScript is disabled, the signal will never fire.


gestureChanged

public EventSignal1<WGestureEvent> gestureChanged()
Event signal emitted when a gesture is changed.

The event details contains information about the scale and the rotation.

Note: When JavaScript is disabled, the signal will never fire.


gestureEnded

public EventSignal1<WGestureEvent> gestureEnded()
Event signal emitted when a gesture is ended.

The event details contains information about the scale and the rotation.

Note: When JavaScript is disabled, the signal will never fire.


setDraggable

public void setDraggable(java.lang.String mimeType,
                         WWidget dragWidget,
                         boolean isDragWidgetOnly,
                         WObject sourceObject)
Configure dragging for drag and drop.

Enable drag&drop for this widget. The mimeType is used to find a suitable drop target, which must accept dropping of this mimetype.

By default, the entire widget is dragged. One may specify another widget to be dragged (for example the parent as dragWidget) or a dragWidget whose function is only to represent the drag visually (when isDragWidgetOnly = true).

The widget to be identified as source in the dropEvent may be given explicitly, and will default to this widget otherwise.

Note: When JavaScript is disabled, drag&drop does not work.

See Also:
WWidget.dropEvent(WDropEvent event), WWidget.acceptDrops(String mimeType, String hoverStyleClass), WDropEvent

setDraggable

public final void setDraggable(java.lang.String mimeType)
Configure dragging for drag and drop.

Calls setDraggable(mimeType, (WWidget)null, false, (WObject)null)


setDraggable

public final void setDraggable(java.lang.String mimeType,
                               WWidget dragWidget)
Configure dragging for drag and drop.

Calls setDraggable(mimeType, dragWidget, false, (WObject)null)


setDraggable

public final void setDraggable(java.lang.String mimeType,
                               WWidget dragWidget,
                               boolean isDragWidgetOnly)
Configure dragging for drag and drop.

Calls setDraggable(mimeType, dragWidget, isDragWidgetOnly, (WObject)null)


load

public void load()
Description copied from class: WWidget
Loads content just before the widget is used.

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.

Overrides:
load in class WWebWidget

isEnabled

public boolean isEnabled()
Description copied from class: WWidget
Returns whether the widget is enabled.

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.

Overrides:
isEnabled in class WWebWidget
See Also:
WWidget.isDisabled()

propagateSetEnabled

protected void propagateSetEnabled(boolean enabled)
Description copied from class: WWidget
Propagates that a widget was enabled or disabled through children.

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.

Overrides:
propagateSetEnabled in class WWebWidget