com.vaadin.ui
Class DragAndDropWrapper

java.lang.Object
  extended by com.vaadin.terminal.AbstractClientConnector
      extended by com.vaadin.ui.AbstractComponent
          extended by com.vaadin.ui.AbstractComponentContainer
              extended by com.vaadin.ui.CustomComponent
                  extended by com.vaadin.ui.DragAndDropWrapper
All Implemented Interfaces:
DragSource, DropTarget, MethodEventSource, Connector, ClientConnector, RpcTarget, Sizeable, Vaadin6Component, VariableOwner, Component, ComponentContainer, HasComponents, Serializable, Iterable<Component>, EventListener

public class DragAndDropWrapper
extends CustomComponent
implements DropTarget, DragSource, Vaadin6Component

See Also:
Serialized Form

Nested Class Summary
static class DragAndDropWrapper.DragStartMode
           
 class DragAndDropWrapper.WrapperTargetDetails
           
 class DragAndDropWrapper.WrapperTransferable
           
 
Nested classes/interfaces inherited from class com.vaadin.ui.AbstractComponent
AbstractComponent.ComponentErrorEvent, AbstractComponent.ComponentErrorHandler
 
Nested classes/interfaces inherited from interface com.vaadin.terminal.VariableOwner
VariableOwner.ErrorEvent
 
Nested classes/interfaces inherited from interface com.vaadin.ui.Component
Component.ErrorEvent, Component.ErrorListener, Component.Event, Component.Focusable, Component.Listener
 
Nested classes/interfaces inherited from interface com.vaadin.terminal.Sizeable
Sizeable.Unit
 
Nested classes/interfaces inherited from interface com.vaadin.ui.ComponentContainer
ComponentContainer.ComponentAttachEvent, ComponentContainer.ComponentAttachListener, ComponentContainer.ComponentDetachEvent, ComponentContainer.ComponentDetachListener
 
Field Summary
 
Fields inherited from interface com.vaadin.terminal.Sizeable
SIZE_UNDEFINED, UNITS_CM, UNITS_EM, UNITS_EX, UNITS_INCH, UNITS_MM, UNITS_PERCENTAGE, UNITS_PICAS, UNITS_PIXELS, UNITS_POINTS
 
Constructor Summary
DragAndDropWrapper(Component root)
          Wraps given component in a DragAndDropWrapper.
 
Method Summary
 void changeVariables(Object source, Map<String,Object> variables)
          Called when one or more variables handled by the implementing class are changed.
 DragAndDropWrapper.DragStartMode getDragStartMode()
           
 DropHandler getDropHandler()
           
 Transferable getTransferable(Map<String,Object> rawVariables)
          DragSource may convert data added by client side component to meaningful values for server side developer or add other data based on it.
 void paintContent(PaintTarget target)
           Paints the Paintable into a UIDL stream.
 void setDragStartMode(DragAndDropWrapper.DragStartMode dragStartMode)
           
 void setDropHandler(DropHandler dropHandler)
           
 void setHTML5DataFlavor(String type, Object value)
          Sets data flavors available in the DragAndDropWrapper is used to start an HTML5 style drags.
 TargetDetails translateDropTargetDetails(Map<String,Object> clientVariables)
          Called before the DragAndDropEvent is passed to DropHandler.
 
Methods inherited from class com.vaadin.ui.CustomComponent
addComponent, getComponentCount, getComponentIterator, getCompositionRoot, moveComponentsFrom, removeAllComponents, removeComponent, replaceComponent, setCompositionRoot
 
Methods inherited from class com.vaadin.ui.AbstractComponentContainer
addListener, addListener, fireComponentAttachEvent, fireComponentDetachEvent, isComponentVisible, iterator, removeListener, removeListener, setHeight, setVisible, setWidth
 
Methods inherited from class com.vaadin.ui.AbstractComponent
addListener, addListener, addListener, addListener, addShortcutListener, addStyleName, attach, detach, findAncestor, fireComponentErrorEvent, fireComponentEvent, fireEvent, focus, getActionManager, getApplication, getCaption, getComponentError, getData, getDebugId, getDescription, getErrorHandler, getErrorMessage, getHeight, getHeightUnits, getIcon, getListeners, getLocale, getParent, getRoot, getState, getStyle, getStyleName, getWidth, getWidthUnits, handleError, hasListeners, isConnectorEnabled, isEnabled, isImmediate, isReadOnly, isVisible, removeListener, removeListener, removeListener, removeListener, removeListener, removeShortcutListener, removeStyleName, requestRepaint, setCaption, setComponentError, setData, setDebugId, setDescription, setEnabled, setErrorHandler, setHeight, setIcon, setImmediate, setLocale, setParent, setReadOnly, setSizeFull, setSizeUndefined, setStyle, setStyleName, setWidth, updateState
 
Methods inherited from class com.vaadin.terminal.AbstractClientConnector
addExtension, addMethodInvocationToQueue, createState, getAllChildrenIterable, getConnectorId, getExtensions, getRpcManager, getRpcProxy, getStateType, registerRpc, registerRpc, removeExtension, requestRepaintAll, retrievePendingRpcCalls
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.vaadin.terminal.VariableOwner
isEnabled, isImmediate
 
Methods inherited from interface com.vaadin.ui.Component
addListener, addStyleName, attach, getApplication, getCaption, getDebugId, getIcon, getLocale, getParent, getRoot, getState, getStyleName, isEnabled, isReadOnly, isVisible, removeListener, removeStyleName, setCaption, setDebugId, setEnabled, setIcon, setReadOnly, setStyleName, setVisible, updateState
 
Methods inherited from interface com.vaadin.terminal.gwt.server.ClientConnector
detach, getExtensions, getStateType, isConnectorEnabled, removeExtension, requestRepaint, requestRepaintAll, retrievePendingRpcCalls, setParent
 
Methods inherited from interface com.vaadin.terminal.gwt.client.Connector
getConnectorId
 
Methods inherited from interface com.vaadin.terminal.gwt.server.RpcTarget
getRpcManager
 
Methods inherited from interface com.vaadin.terminal.Sizeable
getHeight, getHeightUnits, getWidth, getWidthUnits, setHeight, setHeight, setSizeFull, setSizeUndefined, setWidth, setWidth
 

Constructor Detail

DragAndDropWrapper

public DragAndDropWrapper(Component root)
Wraps given component in a DragAndDropWrapper.

Parameters:
root - the component to be wrapped
Method Detail

setHTML5DataFlavor

public void setHTML5DataFlavor(String type,
                               Object value)
Sets data flavors available in the DragAndDropWrapper is used to start an HTML5 style drags. Most commonly the "Text" flavor should be set. Multiple data types can be set.

Parameters:
type - the string identifier of the drag "payload". E.g. "Text" or "text/html"
value - the value

changeVariables

public void changeVariables(Object source,
                            Map<String,Object> variables)
Description copied from interface: VariableOwner
Called when one or more variables handled by the implementing class are changed.

Specified by:
changeVariables in interface VariableOwner
Parameters:
source - the Source of the variable change. This is the origin of the event. For example in Web Adapter this is the request.
variables - the Mapping from variable names to new variable values.

paintContent

public void paintContent(PaintTarget target)
                  throws PaintException
Description copied from interface: Vaadin6Component

Paints the Paintable into a UIDL stream. This method creates the UIDL sequence describing it and outputs it to the given UIDL stream.

It is called when the contents of the component should be painted in response to the component first being shown or having been altered so that its visual representation is changed.

Specified by:
paintContent in interface Vaadin6Component
Parameters:
target - the target UIDL stream where the component should paint itself to.
Throws:
PaintException - if the paint operation failed.

getDropHandler

public DropHandler getDropHandler()
Specified by:
getDropHandler in interface DropTarget
Returns:
the drop hanler that will receive the dragged data or null if drops are not currently accepted

setDropHandler

public void setDropHandler(DropHandler dropHandler)

translateDropTargetDetails

public TargetDetails translateDropTargetDetails(Map<String,Object> clientVariables)
Description copied from interface: DropTarget
Called before the DragAndDropEvent is passed to DropHandler. Implementation may for example translate the drop target details provided by the client side (drop target) to meaningful server side values. If null is returned the terminal implementation will automatically create a TargetDetails with raw client side data.

Specified by:
translateDropTargetDetails in interface DropTarget
Parameters:
clientVariables - data passed from the DropTargets client side counterpart.
Returns:
A DropTargetDetails object with the translated data or null to use a default implementation.
See Also:
DragSource.getTransferable(Map)

getTransferable

public Transferable getTransferable(Map<String,Object> rawVariables)
Description copied from interface: DragSource
DragSource may convert data added by client side component to meaningful values for server side developer or add other data based on it.

For example Tree converts item identifiers to generated string keys for the client side. Vaadin developer don't and can't know anything about these generated keys, only about item identifiers. When tree node is dragged client puts that key to Transferables client side counterpart. In Tree.getTransferable(Map) the key is converted back to item identifier that the server side developer can use.

Specified by:
getTransferable in interface DragSource
Parameters:
rawVariables - the data that client side initially included in Transferables client side counterpart.
Returns:
the Transferable instance that will be passed to DropHandler (and/or AcceptCriterion)

setDragStartMode

public void setDragStartMode(DragAndDropWrapper.DragStartMode dragStartMode)

getDragStartMode

public DragAndDropWrapper.DragStartMode getDragStartMode()


Copyright © 2000-2011 Vaadin Ltd. All Rights Reserved.