Package com.sencha.gxt.fx.client
Class Draggable
- java.lang.Object
-
- com.sencha.gxt.fx.client.Draggable
-
- All Implemented Interfaces:
DragCancelEvent.HasDragCancelHandlers
,DragEndEvent.HasDragEndHandlers
,DragHandler.HasDragHandlers
,DragMoveEvent.HasDragMoveHandlers
,DragStartEvent.HasDragStartHandlers
public class Draggable extends Object implements DragStartEvent.HasDragStartHandlers, DragEndEvent.HasDragEndHandlers, DragMoveEvent.HasDragMoveHandlers, DragCancelEvent.HasDragCancelHandlers, DragHandler.HasDragHandlers
Adds drag behavior to any widget. Drag operations can be initiated from the widget itself, or another widget, such as the header in a dialog.
It is possible to specify event targets that will be ignored. If the target element has the
CommonStyles.Styles.nodrag()
style (as returned byCommonStyles.get()
) it will not trigger a drag operation.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interface
Draggable.DraggableAppearance
-
Constructor Summary
Constructors Constructor Description Draggable(com.google.gwt.user.client.ui.Widget dragWidget)
Creates a new draggable instance.Draggable(com.google.gwt.user.client.ui.Widget dragWidget, com.google.gwt.user.client.ui.Widget handleWidget)
Create a new draggable instance.Draggable(com.google.gwt.user.client.ui.Widget dragWidget, com.google.gwt.user.client.ui.Widget handleWidget, Draggable.DraggableAppearance appearance)
Create a new draggable instance.Draggable(com.google.gwt.user.client.ui.Widget dragWidget, Draggable.DraggableAppearance appearance)
Creates a new draggable instance.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description com.google.gwt.event.shared.HandlerRegistration
addDragCancelHandler(DragCancelEvent.DragCancelHandler handler)
Adds aDragCancelEvent.DragCancelHandler
handler forDragCancelEvent
events.com.google.gwt.event.shared.HandlerRegistration
addDragEndHandler(DragEndEvent.DragEndHandler handler)
Adds aDragEndEvent.DragEndHandler
handler forDragEndEvent
events.com.google.gwt.event.shared.HandlerRegistration
addDragHandler(DragHandler handler)
Adds aDragHandler
handler forDragStartEvent
,DragEndEvent
,DragCancelEvent
,DragMoveEvent
events.com.google.gwt.event.shared.HandlerRegistration
addDragMoveHandler(DragMoveEvent.DragMoveHandler handler)
Adds aDragMoveEvent.DragMoveHandler
handler forDragMoveEvent
events.com.google.gwt.event.shared.HandlerRegistration
addDragStartHandler(DragStartEvent.DragStartHandler handler)
Adds aDragStartEvent.DragStartHandler
handler forDragStartEvent
events.void
cancelDrag()
Cancels the drag if running.com.google.gwt.user.client.ui.Widget
getContainer()
Returns the drag container.com.google.gwt.user.client.ui.Widget
getDragHandle()
Returns the drag handleWidget.com.google.gwt.user.client.ui.Widget
getDragWidget()
Returns the widget being dragged.int
getStartDragDistance()
Returns the number of pixels the cursor must move before dragging begins.boolean
isConstrainClient()
Returns true if drag is constrained to the viewport.boolean
isConstrainHorizontal()
Returns true if horizontal movement is constrained.boolean
isConstrainVertical()
Returns true if vertical movement is constrained.boolean
isDragging()
Returns true if a drag is in progress.boolean
isEnabled()
Returns true if enabled.boolean
isMoveAfterProxyDrag()
Returns true if the drag widget is moved after a proxy drag.boolean
isSizeProxyToSource()
Returns true if the proxy element is sized to match the drag widget.boolean
isUpdateZIndex()
Returns true if the z-index is updated after a drag.boolean
isUseProxy()
Returns true if proxy element is enabled.void
release()
Removes the drag handles.void
setConstrainClient(boolean constrainClient)
True to set constrain movement to the viewport (defaults to true).void
setConstrainHorizontal(boolean constrainHorizontal)
True to stop horizontal movement (defaults to false).void
setConstrainVertical(boolean constrainVertical)
True to stop vertical movement (defaults to false).void
setContainer(com.google.gwt.user.client.ui.Widget container)
Specifies a container to which the drag widget is constrained.void
setEnabled(boolean enabled)
Enables dragging if the argument is true, and disables it otherwise.void
setMoveAfterProxyDrag(boolean moveAfterProxyDrag)
True to move source widget after a proxy drag (defaults to true).void
setProxy(XElement element)
Sets the proxy element.void
setProxyStyle(String proxyClass)
void
setSizeProxyToSource(boolean sizeProxyToSource)
True to set proxy dimensions the same as the drag widget (defaults to true).void
setStartDragDistance(int startDragDistance)
Specifies how far the cursor must move after mousedown to start dragging (defaults to 2).void
setUpdateZIndex(boolean updateZIndex)
True if the CSS z-index should be updated on the widget being dragged.void
setUseProxy(boolean useProxy)
True to use a proxy widget during drag operation (defaults to true).void
setXConstraint(int left, int right)
Constrains the horizontal travel.void
setYConstraint(int top, int bottom)
Constrains the vertical travel.
-
-
-
Constructor Detail
-
Draggable
public Draggable(com.google.gwt.user.client.ui.Widget dragWidget)
Creates a new draggable instance.- Parameters:
dragWidget
- the widget to be dragged
-
Draggable
public Draggable(com.google.gwt.user.client.ui.Widget dragWidget, Draggable.DraggableAppearance appearance)
Creates a new draggable instance.- Parameters:
dragWidget
- the widget to be draggedappearance
- the appearance with which to render the component
-
Draggable
public Draggable(com.google.gwt.user.client.ui.Widget dragWidget, com.google.gwt.user.client.ui.Widget handleWidget)
Create a new draggable instance.- Parameters:
dragWidget
- the widget to be draggedhandleWidget
- the widget drags will be initiated from
-
Draggable
public Draggable(com.google.gwt.user.client.ui.Widget dragWidget, com.google.gwt.user.client.ui.Widget handleWidget, Draggable.DraggableAppearance appearance)
Create a new draggable instance.- Parameters:
dragWidget
- the widget to be draggedhandleWidget
- the widget drags will be initiated fromappearance
- the appearance with which to render the component
-
-
Method Detail
-
addDragCancelHandler
public com.google.gwt.event.shared.HandlerRegistration addDragCancelHandler(DragCancelEvent.DragCancelHandler handler)
Description copied from interface:DragCancelEvent.HasDragCancelHandlers
Adds aDragCancelEvent.DragCancelHandler
handler forDragCancelEvent
events.- Specified by:
addDragCancelHandler
in interfaceDragCancelEvent.HasDragCancelHandlers
- Parameters:
handler
- the handler- Returns:
- the registration for the event
-
addDragEndHandler
public com.google.gwt.event.shared.HandlerRegistration addDragEndHandler(DragEndEvent.DragEndHandler handler)
Description copied from interface:DragEndEvent.HasDragEndHandlers
Adds aDragEndEvent.DragEndHandler
handler forDragEndEvent
events.- Specified by:
addDragEndHandler
in interfaceDragEndEvent.HasDragEndHandlers
- Parameters:
handler
- the handler- Returns:
- the registration for the event
-
addDragHandler
public com.google.gwt.event.shared.HandlerRegistration addDragHandler(DragHandler handler)
Description copied from interface:DragHandler.HasDragHandlers
Adds aDragHandler
handler forDragStartEvent
,DragEndEvent
,DragCancelEvent
,DragMoveEvent
events.- Specified by:
addDragHandler
in interfaceDragHandler.HasDragHandlers
- Parameters:
handler
- the handler- Returns:
- the registration for the event
-
addDragMoveHandler
public com.google.gwt.event.shared.HandlerRegistration addDragMoveHandler(DragMoveEvent.DragMoveHandler handler)
Description copied from interface:DragMoveEvent.HasDragMoveHandlers
Adds aDragMoveEvent.DragMoveHandler
handler forDragMoveEvent
events.- Specified by:
addDragMoveHandler
in interfaceDragMoveEvent.HasDragMoveHandlers
- Parameters:
handler
- the handler- Returns:
- the registration for the event
-
addDragStartHandler
public com.google.gwt.event.shared.HandlerRegistration addDragStartHandler(DragStartEvent.DragStartHandler handler)
Description copied from interface:DragStartEvent.HasDragStartHandlers
Adds aDragStartEvent.DragStartHandler
handler forDragStartEvent
events.- Specified by:
addDragStartHandler
in interfaceDragStartEvent.HasDragStartHandlers
- Parameters:
handler
- the handler- Returns:
- the registration for the event
-
cancelDrag
public void cancelDrag()
Cancels the drag if running.
-
getContainer
public com.google.gwt.user.client.ui.Widget getContainer()
Returns the drag container.- Returns:
- the drag container
-
setContainer
public void setContainer(com.google.gwt.user.client.ui.Widget container)
Specifies a container to which the drag widget is constrained.- Parameters:
container
- the container
-
getDragHandle
public com.google.gwt.user.client.ui.Widget getDragHandle()
Returns the drag handleWidget.- Returns:
- the drag handleWidget
-
getDragWidget
public com.google.gwt.user.client.ui.Widget getDragWidget()
Returns the widget being dragged.- Returns:
- the drag widget
-
getStartDragDistance
public int getStartDragDistance()
Returns the number of pixels the cursor must move before dragging begins.- Returns:
- the distance in pixels
-
setStartDragDistance
public void setStartDragDistance(int startDragDistance)
Specifies how far the cursor must move after mousedown to start dragging (defaults to 2).- Parameters:
startDragDistance
- the start distance in pixels
-
isConstrainClient
public boolean isConstrainClient()
Returns true if drag is constrained to the viewport.- Returns:
- the constrain client state
-
setConstrainClient
public void setConstrainClient(boolean constrainClient)
True to set constrain movement to the viewport (defaults to true).- Parameters:
constrainClient
- true to constrain to viewport
-
isConstrainHorizontal
public boolean isConstrainHorizontal()
Returns true if horizontal movement is constrained.- Returns:
- the horizontal constrain state
-
setConstrainHorizontal
public void setConstrainHorizontal(boolean constrainHorizontal)
True to stop horizontal movement (defaults to false).- Parameters:
constrainHorizontal
- true to stop horizontal movement
-
isConstrainVertical
public boolean isConstrainVertical()
Returns true if vertical movement is constrained.- Returns:
- true if vertical movement is constrained
-
setConstrainVertical
public void setConstrainVertical(boolean constrainVertical)
True to stop vertical movement (defaults to false).- Parameters:
constrainVertical
- true to stop vertical movement
-
isDragging
public boolean isDragging()
Returns true if a drag is in progress.- Returns:
- the drag state
-
isEnabled
public boolean isEnabled()
Returns true if enabled.- Returns:
- the enable state
-
setEnabled
public void setEnabled(boolean enabled)
Enables dragging if the argument is true, and disables it otherwise.- Parameters:
enabled
- the new enabled state
-
isMoveAfterProxyDrag
public boolean isMoveAfterProxyDrag()
Returns true if the drag widget is moved after a proxy drag.- Returns:
- the move after proxy state
-
setMoveAfterProxyDrag
public void setMoveAfterProxyDrag(boolean moveAfterProxyDrag)
True to move source widget after a proxy drag (defaults to true).- Parameters:
moveAfterProxyDrag
- true to move after a proxy drag
-
isSizeProxyToSource
public boolean isSizeProxyToSource()
Returns true if the proxy element is sized to match the drag widget.- Returns:
- the size proxy to source state
-
setSizeProxyToSource
public void setSizeProxyToSource(boolean sizeProxyToSource)
True to set proxy dimensions the same as the drag widget (defaults to true).- Parameters:
sizeProxyToSource
- true to update proxy size
-
isUpdateZIndex
public boolean isUpdateZIndex()
Returns true if the z-index is updated after a drag.- Returns:
- the update z-index state
-
setUpdateZIndex
public void setUpdateZIndex(boolean updateZIndex)
True if the CSS z-index should be updated on the widget being dragged. Setting this value to true will ensure that the dragged element is always displayed over all other widgets (defaults to true).- Parameters:
updateZIndex
- true update the z-index
-
isUseProxy
public boolean isUseProxy()
Returns true if proxy element is enabled.- Returns:
- the use proxy state
-
setUseProxy
public void setUseProxy(boolean useProxy)
True to use a proxy widget during drag operation (defaults to true).- Parameters:
useProxy
- true use a proxy
-
release
public void release()
Removes the drag handles.
-
setProxy
public void setProxy(XElement element)
Sets the proxy element.- Parameters:
element
- the proxy element
-
setProxyStyle
public void setProxyStyle(String proxyClass)
-
setXConstraint
public void setXConstraint(int left, int right)
Constrains the horizontal travel.- Parameters:
left
- the number of pixels the element can move to the leftright
- the number of pixels the element can move to the right
-
setYConstraint
public void setYConstraint(int top, int bottom)
Constrains the vertical travel.- Parameters:
top
- the number of pixels the element can move to the upbottom
- the number of pixels the element can move to the down
-
-