Class VLayoutDragDropMouseHandler

java.lang.Object
io.jmix.ui.widget.client.addon.dragdroplayouts.ui.VLayoutDragDropMouseHandler
All Implemented Interfaces:
com.google.gwt.event.dom.client.MouseDownHandler, com.google.gwt.event.dom.client.TouchStartHandler, com.google.gwt.event.shared.EventHandler, VHasDragImageReferenceSupport

public class VLayoutDragDropMouseHandler extends Object implements com.google.gwt.event.dom.client.MouseDownHandler, com.google.gwt.event.dom.client.TouchStartHandler, VHasDragImageReferenceSupport
Mouse handler for starting component drag operations
Since:
0.4.0
  • Field Details

  • Constructor Details

    • VLayoutDragDropMouseHandler

      public VLayoutDragDropMouseHandler(com.google.gwt.user.client.ui.Widget root, LayoutDragMode dragMode)
      Constructor
      Parameters:
      root - The root element
      dragMode - The drag mode of the layout
  • Method Details

    • onTouchStart

      public void onTouchStart(com.google.gwt.event.dom.client.TouchStartEvent event)
      Specified by:
      onTouchStart in interface com.google.gwt.event.dom.client.TouchStartHandler
    • onMouseDown

      public void onMouseDown(com.google.gwt.event.dom.client.MouseDownEvent event)
      Specified by:
      onMouseDown in interface com.google.gwt.event.dom.client.MouseDownHandler
    • initiateDragOnMove

      protected void initiateDragOnMove(com.google.gwt.dom.client.NativeEvent originalEvent)
      Initiates the drag only on the first move event
      Parameters:
      originalEvent - the original Mouse Down event. Only events on elements are passed in here (Element.as() is safe without check here)
    • initiateDrag

      protected void initiateDrag(com.google.gwt.dom.client.NativeEvent event)
      Called when the dragging a component should be initiated by both a mouse down event as well as a touch start event FIXME This method is a BIG hack to circumvent Vaadin's very poor client side API's. This will break often. Refactor once Vaadin gets a grip.
      Parameters:
      event -
    • updateDragMode

      public void updateDragMode(LayoutDragMode dragMode)
      Set the current drag mode
      Parameters:
      dragMode - The drag mode to use
    • addDragStartListener

      public void addDragStartListener(VLayoutDragDropMouseHandler.DragStartListener listener)
      Add a drag start listener to monitor drag starts
      Parameters:
      listener -
    • removeDragStartListener

      public void removeDragStartListener(VLayoutDragDropMouseHandler.DragStartListener listener)
      Remove a drag start listener
      Parameters:
      listener -
    • getAttachTarget

      public com.google.gwt.user.client.ui.Widget getAttachTarget()
    • setAttachTarget

      public void setAttachTarget(com.google.gwt.user.client.ui.Widget attachTarget)
    • getDragMode

      public LayoutDragMode getDragMode()
    • setDragImageProvider

      public void setDragImageProvider(VDragImageProvider provider)
      Specified by:
      setDragImageProvider in interface VHasDragImageReferenceSupport
    • isStartDragOnMove

      public boolean isStartDragOnMove()
    • setStartDragOnMove

      public void setStartDragOnMove(boolean startDragOnMove)