|
static bool | IsHandlerActive () |
| Returns whether the last call to BeginDragDropOperation() was successful and a handler is now in effect.
|
|
static bool | BeginDragDropOperation (const xiiDragDropInfo *pInfo, xiiDragDropConfig *pConfigToFillOut=nullptr) |
| Call this when a drag enter event occurs. Return value indicates whether a xiiDragDropHandler was found to handle the operation. If not, subsequent drag & drop updates are ignored.
|
|
static void | UpdateDragDropOperation (const xiiDragDropInfo *pInfo) |
| Call this when a drag event occurs. Ignored if BeginDragDropOperation() was not successful.
|
|
static void | FinishDragDrop (const xiiDragDropInfo *pInfo) |
| Call this when a drop event occurs. Ignored if BeginDragDropOperation() was not successful.
|
|
static void | CancelDragDrop () |
| Call this when a drag leave event occurs. Ignored if BeginDragDropOperation() was not successful.
|
|
static bool | CanDropOnly (const xiiDragDropInfo *pInfo) |
| For targets that do not support full dragging, but only dropping on a single target, this allows to query whether there is a handler for the given target. See also DropOnly().
|
|
static bool | DropOnly (const xiiDragDropInfo *pInfo) |
| Executes a complete drop action on a target that does not support continuous dragging. See also CanDropOnly().
|
|
static const xiiRTTI * | GetStaticRTTI () |
|
|
virtual float | CanHandle (const xiiDragDropInfo *pInfo) const =0 |
| Used to ask a handler whether it knows how to handle a certain drag & drop situation.
|
|
virtual void | RequestConfiguration (xiiDragDropConfig *pConfigToFillOut) |
| Potentially called by the drag drop target to request information about how to determine the xiiDragDropInfo data.
|
|
virtual void | OnDragBegin (const xiiDragDropInfo *pInfo)=0 |
| Called shortly after CanHandle returned true to begin handling a drag operation.
|
|
virtual void | OnDragUpdate (const xiiDragDropInfo *pInfo)=0 |
| Called to update the drag operation with the latest state.
|
|
virtual void | OnDragCancel ()=0 |
| Called when the drag operation leaves the designated area. The handler will be destroyed after this. It should clean up all temporary objects that it created before.
|
|
virtual void | OnDrop (const xiiDragDropInfo *pInfo)=0 |
| Final call to finish the drag & drop operation. Handler is destroyed after this.
|
|
|
virtual const xiiRTTI * | GetDynamicRTTI () const |
|
bool | IsInstanceOf (const xiiRTTI *pType) const |
| Returns whether the type of this instance is of the given type or derived from it.
|
|
template<typename T> |
XII_ALWAYS_INLINE bool | IsInstanceOf () const |
| Returns whether the type of this instance is of the given type or derived from it.
|
|
◆ CanHandle()
virtual float xiiDragDropHandler::CanHandle |
( |
const xiiDragDropInfo * | pInfo | ) |
const |
|
protectedpure virtual |
Used to ask a handler whether it knows how to handle a certain drag & drop situation.
The return value is a priority. By default CanHandle should return 0 or 1. To override an existing handler, values larger than 1 may be returned to take precedence.
Implemented in xiiAnimatedMeshComponentDragDropHandler, xiiComponentDragDropHandler, xiiDecalComponentDragDropHandler, xiiGameObjectOnLayerDragDropHandler, xiiLayerOnLayerDragDropHandler, xiiMaterialDragDropHandler, xiiMeshComponentDragDropHandler, xiiPrefabComponentDragDropHandler, xiiSkeletonComponentDragDropHandler, and xiiVisualScriptComponentDragDropHandler.
◆ OnDragBegin()
virtual void xiiDragDropHandler::OnDragBegin |
( |
const xiiDragDropInfo * | pInfo | ) |
|
|
protectedpure virtual |
◆ OnDragCancel()
virtual void xiiDragDropHandler::OnDragCancel |
( |
| ) |
|
|
protectedpure virtual |
◆ OnDragUpdate()
virtual void xiiDragDropHandler::OnDragUpdate |
( |
const xiiDragDropInfo * | pInfo | ) |
|
|
protectedpure virtual |
◆ OnDrop()
◆ RequestConfiguration()
virtual void xiiDragDropHandler::RequestConfiguration |
( |
xiiDragDropConfig * | pConfigToFillOut | ) |
|
|
inlineprotectedvirtual |
The documentation for this class was generated from the following files:
- /home/runner/work/XII/XII/Source/Editor/EditorFramework/DragDrop/DragDropHandler.h
- /home/runner/work/XII/XII/Source/Editor/EditorFramework/DragDrop/Implementation/DragDropHandler.cpp