XII Release 0.1.0
Loading...
Searching...
No Matches
xiiDragDropHandler Class Referenceabstract
Inheritance diagram for xiiDragDropHandler:
[legend]

Static Public Member Functions

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 Public Member Functions inherited from xiiNoBase
static const xiiRTTIGetStaticRTTI ()
 

Protected Member Functions

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.
 

Additional Inherited Members

- Public Member Functions inherited from xiiReflectedClass
virtual const xiiRTTIGetDynamicRTTI () 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.
 

Member Function Documentation

◆ 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

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.

Implemented in xiiComponentDragDropHandler, xiiLayerDragDropHandler, and xiiMaterialDragDropHandler.

◆ OnDragUpdate()

virtual void xiiDragDropHandler::OnDragUpdate ( const xiiDragDropInfo * pInfo)
protectedpure virtual

Called to update the drag operation with the latest state.

Implemented in xiiComponentDragDropHandler, xiiLayerDragDropHandler, xiiMaterialDragDropHandler, and xiiPrefabComponentDragDropHandler.

◆ OnDrop()

virtual void xiiDragDropHandler::OnDrop ( const xiiDragDropInfo * pInfo)
protectedpure virtual

Final call to finish the drag & drop operation. Handler is destroyed after this.

Implemented in xiiComponentDragDropHandler, xiiGameObjectOnLayerDragDropHandler, xiiLayerOnLayerDragDropHandler, and xiiMaterialDragDropHandler.

◆ RequestConfiguration()

virtual void xiiDragDropHandler::RequestConfiguration ( xiiDragDropConfig * pConfigToFillOut)
inlineprotectedvirtual

Potentially called by the drag drop target to request information about how to determine the xiiDragDropInfo data.

Reimplemented in xiiMaterialDragDropHandler.


The documentation for this class was generated from the following files: