32 const char *disabled_hint_dummy =
nullptr;
34 if (!drop_target.
can_drop(*drag, &disabled_hint_dummy)) {
44 const DragInfo drag_info{*drag, event, *drop_location};
45 return drop_target.
on_drop(&
C, drag_info);
56 const char *disabled_hint_dummy =
nullptr;
57 if (!drop_target.
can_drop(drag, &disabled_hint_dummy)) {
67 const DragInfo drag_info{drag, event, *drop_location};
#define LISTBASE_FOREACH(type, var, list)
virtual bool on_drop(bContext *C, const DragInfo &drag) const =0
virtual bool can_drop(const wmDrag &drag, const char **r_disabled_hint) const =0
virtual std::string drop_tooltip(const DragInfo &drag) const =0
virtual std::optional< DropLocation > choose_drop_location(const ARegion ®ion, const wmEvent &event) const
bool drop_target_apply_drop(bContext &C, const ARegion ®ion, const wmEvent &event, const DropTargetInterface &drop_target, const ListBase &drags)
std::string drop_target_tooltip(const ARegion ®ion, const DropTargetInterface &drop_target, const wmDrag &drag, const wmEvent &event)
DragInfo(const wmDrag &drag, const wmEvent &event, DropLocation drop_location)
const DropLocation drop_location