Class DragAndDrop


  • public class DragAndDrop
    extends java.lang.Object
    Manages drag and drop operations through registered drag sources and drop targets.
    • Constructor Detail

      • DragAndDrop

        public DragAndDrop()
    • Method Detail

      • clear

        public void clear()
        Removes all targets and sources.
      • cancelTouchFocusExcept

        public void cancelTouchFocusExcept​(DragAndDrop.Source except)
        Cancels the touch focus for everything except the specified source.
      • setTapSquareSize

        public void setTapSquareSize​(float halfTapSquareSize)
        Sets the distance a touch must travel before being considered a drag.
      • setButton

        public void setButton​(int button)
        Sets the button to listen for, all other buttons are ignored. Default is Input.Buttons.LEFT. Use -1 for any button.
      • setDragActorPosition

        public void setDragActorPosition​(float dragActorX,
                                         float dragActorY)
      • setTouchOffset

        public void setTouchOffset​(float touchOffsetX,
                                   float touchOffsetY)
        Sets an offset in stage coordinates from the touch position which is used to determine the drop location. Default is 0,0.
      • isDragging

        public boolean isDragging()
      • getDragActor

        @Null
        public Actor getDragActor()
        Returns the current drag actor, or null.
      • setDragTime

        public void setDragTime​(int dragMillis)
        Time in milliseconds that a drag must take before a drop will be considered valid. This ignores an accidental drag and drop that was meant to be a click. Default is 250.
      • getDragTime

        public int getDragTime()
      • isDragValid

        public boolean isDragValid()
        Returns true if a drag is in progress and the drag time has elapsed since the drag started.
      • setCancelTouchFocus

        public void setCancelTouchFocus​(boolean cancelTouchFocus)
        When true (default), the Stage.cancelTouchFocus() touch focus} is cancelled if dragStart returns non-null. This ensures the DragAndDrop is the only touch focus listener, eg when the source is inside a ScrollPane with flick scroll enabled.
      • setKeepWithinStage

        public void setKeepWithinStage​(boolean keepWithinStage)