neoGFX
Cross-platform C++ app/game engine
Loading...
Searching...
No Matches
neogfx::drag_drop_source< Base > Class Template Referenceabstract

#include <drag_drop.hpp>

Inheritance diagram for neogfx::drag_drop_source< Base >:
neogfx::drag_drop_source_empty_base neogfx::i_drag_drop_source

Public Member Functions

 define_declared_event (DraggingObject, dragging_object, i_drag_drop_object const &) define_declared_event(DraggingCancelled
 
i_drag_drop_object const & define_declared_event (ObjectDroppedOnTarget, object_dropped_on_target, i_drag_drop_object const &, i_drag_drop_target &) public
 
 ~drag_drop_source ()
 
bool drag_drop_source_enabled () const final
 
void enable_drag_drop_source (bool aEnable=true) override
 
bool drag_drop_active () const final
 
i_drag_drop_object const & object_being_dragged () const final
 
void start_drag_drop (i_drag_drop_object const &aObject) final
 
void cancel_drag_drop () final
 
void end_drag_drop (i_drag_drop_target &aTarget) final
 
point const & drag_drop_tracking_position () const final
 
i_ref_ptr< i_widget > const & drag_drop_widget () const final
 
void set_drag_drop_widget (i_ref_ptr< i_widget > const &aWidget) final
 
i_widgetdrag_drop_event_monitor () const final
 
void monitor_drag_drop_events (i_widget &aWidget) final
 
void stop_monitoring_drag_drop_events () final
 
- Public Member Functions inherited from neogfx::i_drag_drop_source
 declare_event (dragging_object, i_drag_drop_object const &) declare_event(dragging_cancelled
 
void enable_drag_drop_source (i_widget &aWidget)
 

Public Attributes

 dragging_cancelled
 

Protected Member Functions

scalar drag_drop_trigger_distance () const
 
void set_drag_drop_trigger_distance (scalar aDistance)
 
virtual bool is_drag_drop_object (point const &aPosition) const =0
 
virtual i_drag_drop_object const * drag_drop_object (point const &aPosition)=0
 

Detailed Description

template<typename Base = drag_drop_source_empty_base>
class neogfx::drag_drop_source< Base >

Definition at line 156 of file drag_drop.hpp.

Constructor & Destructor Documentation

◆ ~drag_drop_source()

template<typename Base = drag_drop_source_empty_base>
neogfx::drag_drop_source< Base >::~drag_drop_source ( )
inline

Definition at line 169 of file drag_drop.hpp.

Member Function Documentation

◆ cancel_drag_drop()

template<typename Base = drag_drop_source_empty_base>
void neogfx::drag_drop_source< Base >::cancel_drag_drop ( )
inlinefinalvirtual

Implements neogfx::i_drag_drop_source.

Definition at line 215 of file drag_drop.hpp.

◆ define_declared_event() [1/2]

template<typename Base = drag_drop_source_empty_base>
neogfx::drag_drop_source< Base >::define_declared_event ( DraggingObject  ,
dragging_object  ,
i_drag_drop_object const &   
)

◆ define_declared_event() [2/2]

template<typename Base = drag_drop_source_empty_base>
i_drag_drop_object const & neogfx::drag_drop_source< Base >::define_declared_event ( ObjectDroppedOnTarget  ,
object_dropped_on_target  ,
i_drag_drop_object const &  ,
i_drag_drop_target  
)
inline

Definition at line 162 of file drag_drop.hpp.

◆ drag_drop_active()

template<typename Base = drag_drop_source_empty_base>
bool neogfx::drag_drop_source< Base >::drag_drop_active ( ) const
inlinefinalvirtual

Implements neogfx::i_drag_drop_source.

Definition at line 196 of file drag_drop.hpp.

◆ drag_drop_event_monitor()

template<typename Base = drag_drop_source_empty_base>
i_widget & neogfx::drag_drop_source< Base >::drag_drop_event_monitor ( ) const
inlinefinalvirtual

Implements neogfx::i_drag_drop_source.

Definition at line 255 of file drag_drop.hpp.

◆ drag_drop_object()

template<typename Base = drag_drop_source_empty_base>
virtual i_drag_drop_object const * neogfx::drag_drop_source< Base >::drag_drop_object ( point const &  aPosition)
protectedpure virtual

Implemented in neogfx::item_view.

◆ drag_drop_source_enabled()

template<typename Base = drag_drop_source_empty_base>
bool neogfx::drag_drop_source< Base >::drag_drop_source_enabled ( ) const
inlinefinalvirtual

Implements neogfx::i_drag_drop_source.

Definition at line 174 of file drag_drop.hpp.

◆ drag_drop_tracking_position()

template<typename Base = drag_drop_source_empty_base>
point const & neogfx::drag_drop_source< Base >::drag_drop_tracking_position ( ) const
inlinefinalvirtual

Implements neogfx::i_drag_drop_source.

Definition at line 236 of file drag_drop.hpp.

◆ drag_drop_trigger_distance()

template<typename Base = drag_drop_source_empty_base>
scalar neogfx::drag_drop_source< Base >::drag_drop_trigger_distance ( ) const
inlineprotected

Definition at line 280 of file drag_drop.hpp.

◆ drag_drop_widget()

template<typename Base = drag_drop_source_empty_base>
i_ref_ptr< i_widget > const & neogfx::drag_drop_source< Base >::drag_drop_widget ( ) const
inlinefinalvirtual

Implements neogfx::i_drag_drop_source.

Definition at line 242 of file drag_drop.hpp.

◆ enable_drag_drop_source()

template<typename Base = drag_drop_source_empty_base>
void neogfx::drag_drop_source< Base >::enable_drag_drop_source ( bool  aEnable = true)
inlineoverridevirtual

Implements neogfx::i_drag_drop_source.

Reimplemented in neogfx::item_view.

Definition at line 178 of file drag_drop.hpp.

◆ end_drag_drop()

template<typename Base = drag_drop_source_empty_base>
void neogfx::drag_drop_source< Base >::end_drag_drop ( i_drag_drop_target aTarget)
inlinefinalvirtual

Implements neogfx::i_drag_drop_source.

Definition at line 225 of file drag_drop.hpp.

◆ is_drag_drop_object()

template<typename Base = drag_drop_source_empty_base>
virtual bool neogfx::drag_drop_source< Base >::is_drag_drop_object ( point const &  aPosition) const
protectedpure virtual

Implemented in neogfx::item_view.

◆ monitor_drag_drop_events()

template<typename Base = drag_drop_source_empty_base>
void neogfx::drag_drop_source< Base >::monitor_drag_drop_events ( i_widget aWidget)
inlinefinalvirtual

Implements neogfx::i_drag_drop_source.

Definition at line 261 of file drag_drop.hpp.

◆ object_being_dragged()

template<typename Base = drag_drop_source_empty_base>
i_drag_drop_object const & neogfx::drag_drop_source< Base >::object_being_dragged ( ) const
inlinefinalvirtual

Implements neogfx::i_drag_drop_source.

Definition at line 200 of file drag_drop.hpp.

◆ set_drag_drop_trigger_distance()

template<typename Base = drag_drop_source_empty_base>
void neogfx::drag_drop_source< Base >::set_drag_drop_trigger_distance ( scalar  aDistance)
inlineprotected

Definition at line 284 of file drag_drop.hpp.

◆ set_drag_drop_widget()

template<typename Base = drag_drop_source_empty_base>
void neogfx::drag_drop_source< Base >::set_drag_drop_widget ( i_ref_ptr< i_widget > const &  aWidget)
inlinefinalvirtual

Implements neogfx::i_drag_drop_source.

Definition at line 246 of file drag_drop.hpp.

◆ start_drag_drop()

template<typename Base = drag_drop_source_empty_base>
void neogfx::drag_drop_source< Base >::start_drag_drop ( i_drag_drop_object const &  aObject)
inlinefinalvirtual

Implements neogfx::i_drag_drop_source.

Definition at line 206 of file drag_drop.hpp.

◆ stop_monitoring_drag_drop_events()

template<typename Base = drag_drop_source_empty_base>
void neogfx::drag_drop_source< Base >::stop_monitoring_drag_drop_events ( )
inlinefinalvirtual

Implements neogfx::i_drag_drop_source.

Definition at line 274 of file drag_drop.hpp.

Member Data Documentation

◆ dragging_cancelled

template<typename Base = drag_drop_source_empty_base>
neogfx::drag_drop_source< Base >::dragging_cancelled

Definition at line 161 of file drag_drop.hpp.


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