docs.unity3d.com
Search Results for

    Show / Hide Table of Contents

    Class Draggable

    Manipulator which monitors Press, Hold and Release events in order to drag visuals.

    Inheritance
    object
    Manipulator
    MouseManipulator
    PointerManipulator
    Pressable
    Draggable
    Implements
    IManipulator
    Inherited Members
    Pressable.clicked
    Pressable.clickedWithEventInfo
    Pressable.longClicked
    Pressable.active
    Pressable.longPressDuration
    Pressable.keepEventPropagation
    Pressable.InvokePressed(EventBase)
    Pressable.InvokeLongPressed()
    Pressable.ForceActivePseudoState()
    Pressable.RegisterCallbacksOnTarget()
    Pressable.UnregisterCallbacksFromTarget()
    PointerManipulator.CanStartManipulation(IPointerEvent)
    PointerManipulator.CanStopManipulation(IPointerEvent)
    MouseManipulator.CanStartManipulation(IMouseEvent)
    MouseManipulator.CanStopManipulation(IMouseEvent)
    MouseManipulator.activators
    Manipulator.target
    object.Equals(object)
    object.Equals(object, object)
    object.GetHashCode()
    object.GetType()
    object.MemberwiseClone()
    object.ReferenceEquals(object, object)
    object.ToString()
    Namespace: Unity.AppUI.UI
    Assembly: Unity.AppUI.dll
    Syntax
    public class Draggable : Pressable, IManipulator

    Constructors

    Draggable(Action, Action<Draggable>, Action<Draggable>, Action<Draggable>)

    Construct a Draggable manipulator.

    Declaration
    public Draggable(Action clickHandler, Action<Draggable> dragHandler, Action<Draggable> upHandler, Action<Draggable> downHandler = null)
    Parameters
    Type Name Description
    Action clickHandler

    A callback invoked when a ClickEvent has been received.

    Action<Draggable> dragHandler

    A callback invoked during dragging state.

    Action<Draggable> upHandler

    A callback invoked when a PointerUpEvent has been received.

    Action<Draggable> downHandler

    A callback invoked when a PointerDownEvent has been received.

    Properties

    deltaPos

    The delta position between the last frame and the current one.

    Declaration
    public Vector2 deltaPos { get; }
    Property Value
    Type Description
    Vector2

    deltaStartPos

    The delta position between the start of the drag and the current frame.

    Declaration
    public Vector2 deltaStartPos { get; }
    Property Value
    Type Description
    Vector2

    dragDirection

    The direction of the drag.

    Declaration
    public Draggable.DragDirection dragDirection { get; set; }
    Property Value
    Type Description
    Draggable.DragDirection

    hasMoved

    Has the pointer moved since the last PointerDownEvent.

    Declaration
    public bool hasMoved { get; }
    Property Value
    Type Description
    bool

    localPosition

    The local position received from the imGui native event.

    Declaration
    public Vector2 localPosition { get; }
    Property Value
    Type Description
    Vector2

    position

    The world position received from the imGui native event.

    Declaration
    public Vector2 position { get; }
    Property Value
    Type Description
    Vector2

    startPosition

    The start position of the drag, based on the world position received from the imGui native event.

    Declaration
    public Vector2 startPosition { get; }
    Property Value
    Type Description
    Vector2

    threshold

    The threshold in pixels to start the drag operation.

    Declaration
    public float threshold { get; set; }
    Property Value
    Type Description
    float

    Methods

    Cancel()

    Cancel the drag operation.

    Declaration
    public void Cancel()

    ProcessDownEvent(EventBase, Vector2, int)

    This method processes the down event sent to the target Element.

    Declaration
    protected override void ProcessDownEvent(EventBase evt, Vector2 localPosition, int pointerId)
    Parameters
    Type Name Description
    EventBase evt

    The event to process.

    Vector2 localPosition

    The local position of the pointer.

    int pointerId

    The pointer id of the pointer.

    Overrides
    Pressable.ProcessDownEvent(EventBase, Vector2, int)

    ProcessMoveEvent(EventBase, Vector2)

    This method processes the move event sent to the target Element.

    Declaration
    protected override void ProcessMoveEvent(EventBase evt, Vector2 localPosition)
    Parameters
    Type Name Description
    EventBase evt

    The event to process.

    Vector2 localPosition

    The local position of the pointer.

    Overrides
    Pressable.ProcessMoveEvent(EventBase, Vector2)

    ProcessUpEvent(EventBase, Vector2, int)

    This method processes the up event sent to the target Element.

    Declaration
    protected override void ProcessUpEvent(EventBase evt, Vector2 localPosition, int pointerId)
    Parameters
    Type Name Description
    EventBase evt

    The event to process.

    Vector2 localPosition

    The local position of the pointer.

    int pointerId

    The pointer id of the pointer.

    Overrides
    Pressable.ProcessUpEvent(EventBase, Vector2, int)

    Implements

    IManipulator
    In This Article
    Back to top
    Copyright © 2025 Unity Technologies — Trademarks and terms of use
    • Legal
    • Privacy Policy
    • Cookie Policy
    • Do Not Sell or Share My Personal Information
    • Your Privacy Choices (Cookie Settings)