Plasma Engine  2.0
Loading...
Searching...
No Matches
plDragDropHandler Class Referenceabstract
Inheritance diagram for plDragDropHandler:

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 plDragDropInfo *pInfo, plDragDropConfig *pConfigToFillOut=nullptr)
 Call this when a drag enter event occurs. Return value indicates whether a plDragDropHandler was found to handle the operation. If not, subsequent drag & drop updates are ignored.
 
static void UpdateDragDropOperation (const plDragDropInfo *pInfo)
 Call this when a drag event occurs. Ignored if BeginDragDropOperation() was not successful.
 
static void FinishDragDrop (const plDragDropInfo *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 plDragDropInfo *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 plDragDropInfo *pInfo)
 Executes a complete drop action on a target that does not support continuous dragging. See also CanDropOnly().
 
- Static Public Member Functions inherited from plNoBase
static const plRTTIGetStaticRTTI ()
 

Protected Member Functions

virtual float CanHandle (const plDragDropInfo *pInfo) const =0
 Used to ask a handler whether it knows how to handle a certain drag & drop situation.
 
virtual void RequestConfiguration (plDragDropConfig *pConfigToFillOut)
 Potentially called by the drag drop target to request information about how to determine the plDragDropInfo data.
 
virtual void OnDragBegin (const plDragDropInfo *pInfo)=0
 Called shortly after CanHandle returned true to begin handling a drag operation.
 
virtual void OnDragUpdate (const plDragDropInfo *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 plDragDropInfo *pInfo)=0
 Final call to finish the drag & drop operation. Handler is destroyed after this.
 

Additional Inherited Members

- Public Member Functions inherited from plReflectedClass
virtual const plRTTIGetDynamicRTTI () const
 
bool IsInstanceOf (const plRTTI *pType) const
 Returns whether the type of this instance is of the given type or derived from it.
 
template<typename T >
PL_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 plDragDropHandler::CanHandle ( const plDragDropInfo * pInfo) const
protectedpure virtual

◆ OnDragBegin()

◆ OnDragCancel()

virtual void plDragDropHandler::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 plComponentDragDropHandler, plLayerDragDropHandler, and plMaterialDragDropHandler.

◆ OnDragUpdate()

virtual void plDragDropHandler::OnDragUpdate ( const plDragDropInfo * pInfo)
protectedpure virtual

Called to update the drag operation with the latest state.

Implemented in plComponentDragDropHandler, plLayerDragDropHandler, plMaterialDragDropHandler, and plPrefabComponentDragDropHandler.

◆ OnDrop()

virtual void plDragDropHandler::OnDrop ( const plDragDropInfo * pInfo)
protectedpure virtual

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

Implemented in plComponentDragDropHandler, plGameObjectOnLayerDragDropHandler, plLayerOnLayerDragDropHandler, and plMaterialDragDropHandler.

◆ RequestConfiguration()

virtual void plDragDropHandler::RequestConfiguration ( plDragDropConfig * pConfigToFillOut)
inlineprotectedvirtual

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

Reimplemented in plMaterialDragDropHandler.


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