72 virtual item_presentation_model_index
const&
index()
const = 0;
184 static
uuid const&
iid() {
static uuid const sIid{ 0x393fd9c4, 0x6db8, 0x4c04, 0x87f6, { 0x39, 0x87, 0x6a, 0x30, 0x35, 0xd4 } };
return sIid; }
static const drag_drop_object_type_id otid()
virtual game::entity_id entity() const =0
virtual game::i_ecs const & ecs() const =0
static const drag_drop_object_type_id otid()
virtual neolib::i_vector< i_string > const & file_paths() const =0
static const drag_drop_object_type_id otid()
virtual i_item_presentation_model const & presentation_model() const =0
virtual item_presentation_model_index const & index() const =0
virtual size render_extents() const =0
virtual void render(i_graphics_context &aGc, point const &aPosition={}) const =0
virtual drag_drop_object_type_id ddo_type() const =0
virtual ~i_drag_drop_object()=default
virtual i_drag_drop_source & source() const =0
static const drag_drop_object_type_id otid()
virtual bool can_render() const =0
virtual bool drag_drop_active() const =0
virtual void end_drag_drop(i_drag_drop_target &aTarget)=0
void enable_drag_drop_source(i_widget &aWidget)
virtual void stop_monitoring_drag_drop_events()=0
virtual void start_drag_drop(i_drag_drop_object const &aObject)=0
declare_event(dragging_object, i_drag_drop_object const &) declare_event(dragging_cancelled
virtual i_widget & drag_drop_event_monitor() const =0
virtual point const & drag_drop_tracking_position() const =0
virtual i_drag_drop_object const & object_being_dragged() const =0
virtual i_ref_ptr< i_widget > const & drag_drop_widget() const =0
virtual void monitor_drag_drop_events(i_widget &aWidget)=0
virtual void set_drag_drop_widget(i_ref_ptr< i_widget > const &aWidget)=0
virtual void cancel_drag_drop()=0
virtual void enable_drag_drop_source(bool aEnable=true)=0
virtual bool drag_drop_source_enabled() const =0
virtual i_widget & as_widget()=0
virtual bool is_widget() const =0
virtual i_widget const & as_widget() const =0
virtual bool can_accept(i_drag_drop_object const &aObject, optional_point const &aDropPosition={}) const =0
virtual bool accept(i_drag_drop_object const &aObject, optional_point const &aDropPosition={})=0
virtual bool drag_drop_target_enabled() const =0
declare_event(object_acceptable, i_drag_drop_object const &, optional_point const &, drop_operation &) declare_event(object_dropped
virtual ~i_drag_drop_target()=default
virtual drop_operation accepted_as(i_drag_drop_object const &aObject, optional_point const &aDropPosition={}) const =0
virtual void enable_drag_drop_target(bool aEnable=true)=0
virtual void unregister_source(i_drag_drop_source &aSource)=0
virtual bool is_target_at(i_drag_drop_object const &aObject, point const &aPosition) const =0
virtual i_drag_drop_target & target_for(i_drag_drop_object const &aObject) const =0
declare_event(source_registered, i_drag_drop_source &) declare_event(source_unregistered
virtual void register_source(i_drag_drop_source &aSource)=0
virtual void unregister_target(i_drag_drop_target &aTarget)=0
virtual i_drag_drop_target & target_at(i_drag_drop_object const &aObject, point const &aPosition) const =0
virtual bool is_target_for(i_drag_drop_object const &aObject) const =0
static uuid const & iid()
virtual void register_target(i_drag_drop_target &aTarget)=0
uuid drag_drop_object_type_id
#define declare_event(declName,...)
drag_drop_already_active()
drag_drop_target_not_found()
failed_drag_drop_registration(std::string const &aReason)
failed_drag_drop_unregistration(std::string const &aReason)
no_drag_drop_event_monitor()