{"_id":"5b1f8576c2505d000312545b","category":{"_id":"5b1f8576c2505d000312542f","version":"5b1f8576c2505d00031254db","project":"571fa55ca0acd42000af9545","__v":0,"sync":{"url":"","isSync":false},"reference":false,"createdAt":"2017-01-01T17:00:24.070Z","from_sync":false,"order":12,"slug":"ui","title":"UI"},"parentDoc":null,"user":"571fa519db52d01700f5cf3d","project":"571fa55ca0acd42000af9545","version":{"_id":"5b1f8576c2505d00031254db","project":"571fa55ca0acd42000af9545","__v":4,"forked_from":"594949e52be16d0026ec04cd","createdAt":"2017-06-20T16:14:29.816Z","releaseDate":"2017-06-20T16:14:29.816Z","categories":["5b1f8576c2505d0003125424","5b1f8576c2505d0003125425","5b1f8576c2505d0003125426","5b1f8576c2505d0003125427","5b1f8576c2505d0003125428","5b1f8576c2505d0003125429","5b1f8576c2505d000312542a","5b1f8576c2505d000312542b","5b1f8576c2505d000312542c","5b1f8576c2505d000312542d","5b1f8576c2505d000312542e","5b1f8576c2505d000312542f","5b1f8576c2505d0003125430","5b1f8576c2505d0003125431","5b1f8576c2505d0003125432","5b1f8576c2505d0003125433","5b1f8576c2505d0003125434","5b1f8576c2505d0003125435","5b1f8576c2505d0003125436","5b1f8576c2505d0003125437","5b1f8576c2505d0003125438","5b1f8aab9c683000032979e7","5b1f8b2f3073470003ffa5da","5b1f8bd9fd653400031d94f4","5b1f900bd4c5f000036b57bd"],"is_deprecated":false,"is_hidden":false,"is_beta":false,"is_stable":true,"codename":"Mangalica","version_clean":"3.3.0","version":"3.3.0"},"githubsync":"","__v":0,"updates":[],"next":{"pages":[],"description":""},"createdAt":"2017-01-01T17:01:15.985Z","link_external":false,"link_url":"","sync_unique":"","hidden":false,"api":{"results":{"codes":[]},"settings":"","auth":"required","params":[],"url":""},"isReference":false,"order":3,"body":"> extends MonoBehaviour, IBeginDragHandler, IDragHandler, IEndDragHandler\n\n## Overview\n\nDenotes a Unity UI Element as being draggable on the UI Canvas.\n\n  > If a UI Draggable item is set to `Restrict To Drop Zone = true` then the UI Draggable item must be a child of an element that has the VRTK_UIDropZone script applied to it to ensure it starts in a valid drop zone.\n\n**Script Usage:**\n * Place the `VRTK_UIDraggableItem` script on the Unity UI element that is to be dragged.\n\n## Inspector Parameters\n\n * **Restrict To Drop Zone:** If checked then the UI element can only be dropped in valid a VRTK_UIDropZone object and must start as a child of a VRTK_UIDropZone object. If unchecked then the UI element can be dropped anywhere on the canvas.\n * **Restrict To Original Canvas:** If checked then the UI element can only be dropped on the original parent canvas. If unchecked the UI element can be dropped on any valid VRTK_UICanvas.\n * **Forward Offset:** The offset to bring the UI element forward when it is being dragged.\n\n## Class Variables\n\n * `public GameObject validDropZone` - The current valid drop zone the dragged element is hovering over.\n\n## Class Events\n\n * `DraggableItemDropped` - Emitted when the draggable item is successfully dropped.\n * `DraggableItemReset` - Emitted when the draggable item is reset.\n\n## Unity Events\n\nAdding the `VRTK_UIDraggableItem_UnityEvents` component to `VRTK_UIDraggableItem` object allows access to `UnityEvents` that will react identically to the Class Events.\n\n * All C# delegate events are mapped to a Unity Event with the `On` prefix. e.g. `MyEvent` -> `OnMyEvent`.\n\n## Event Payload\n\n * `GameObject target` - The target the item is dragged onto.\n\n## Example\n\n`VRTK/Examples/034_Controls_InteractingWithUnityUI` demonstrates a collection of UI elements that are draggable","excerpt":"","slug":"vrtk_uidraggableitem","type":"basic","title":"VRTK_UIDraggableItem"}

VRTK_UIDraggableItem


> extends MonoBehaviour, IBeginDragHandler, IDragHandler, IEndDragHandler ## Overview Denotes a Unity UI Element as being draggable on the UI Canvas. > If a UI Draggable item is set to `Restrict To Drop Zone = true` then the UI Draggable item must be a child of an element that has the VRTK_UIDropZone script applied to it to ensure it starts in a valid drop zone. **Script Usage:** * Place the `VRTK_UIDraggableItem` script on the Unity UI element that is to be dragged. ## Inspector Parameters * **Restrict To Drop Zone:** If checked then the UI element can only be dropped in valid a VRTK_UIDropZone object and must start as a child of a VRTK_UIDropZone object. If unchecked then the UI element can be dropped anywhere on the canvas. * **Restrict To Original Canvas:** If checked then the UI element can only be dropped on the original parent canvas. If unchecked the UI element can be dropped on any valid VRTK_UICanvas. * **Forward Offset:** The offset to bring the UI element forward when it is being dragged. ## Class Variables * `public GameObject validDropZone` - The current valid drop zone the dragged element is hovering over. ## Class Events * `DraggableItemDropped` - Emitted when the draggable item is successfully dropped. * `DraggableItemReset` - Emitted when the draggable item is reset. ## Unity Events Adding the `VRTK_UIDraggableItem_UnityEvents` component to `VRTK_UIDraggableItem` object allows access to `UnityEvents` that will react identically to the Class Events. * All C# delegate events are mapped to a Unity Event with the `On` prefix. e.g. `MyEvent` -> `OnMyEvent`. ## Event Payload * `GameObject target` - The target the item is dragged onto. ## Example `VRTK/Examples/034_Controls_InteractingWithUnityUI` demonstrates a collection of UI elements that are draggable