|
Blender V5.0
|
Inherits blender::ui::TreeViewItemDropTarget.
Public Member Functions | |
| ShapeKeyDropTarget (ui::AbstractTreeViewItem &item, ui::DropBehavior behavior, KeyBlock &drop_kb, int index) | |
| bool | can_drop (const wmDrag &drag, const char **) const override |
| std::string | drop_tooltip (const ui::DragInfo &drag_info) const override |
| bool | on_drop (bContext *C, const ui::DragInfo &drag_info) const override |
| Public Member Functions inherited from blender::ui::TreeViewItemDropTarget | |
| TreeViewItemDropTarget (AbstractTreeViewItem &view_item, DropBehavior behavior=DropBehavior::Insert) | |
| std::optional< DropLocation > | choose_drop_location (const ARegion ®ion, const wmEvent &event) const override |
| template<class ViewType> | |
| ViewType & | get_view () const |
| Public Member Functions inherited from blender::ui::DropTargetInterface | |
| DropTargetInterface ()=default | |
| virtual | ~DropTargetInterface ()=default |
Additional Inherited Members | |
| Protected Attributes inherited from blender::ui::TreeViewItemDropTarget | |
| AbstractTreeViewItem & | view_item_ |
| const DropBehavior | behavior_ |
Definition at line 100 of file interface_template_shape_key_tree.cc.
|
inline |
Definition at line 106 of file interface_template_shape_key_tree.cc.
References blender::ui::TreeViewItemDropTarget::TreeViewItemDropTarget().
|
inlineoverridevirtual |
Check if the data dragged with drag can be dropped on the element this drop target is for.
| r_disabled_hint | Return a static string to display to the user, explaining why dropping isn't possible on this UI element. Shouldn't be done too aggressively, e.g. don't set this if the drag-type can't be dropped here; only if it can but there's another reason it can't be dropped. Can assume this is a non-null pointer. |
Implements blender::ui::DropTargetInterface.
Definition at line 114 of file interface_template_shape_key_tree.cc.
References wmDrag::poin, wmDrag::type, and WM_DRAG_SHAPE_KEY.
|
inlineoverridevirtual |
Custom text to display when dragging over the element using this drop target. Should explain what happens when dropping the data onto this UI element. Will only be used if #DropTargetInterface::can_drop() returns true, so the implementing override doesn't have to check that again. The returned value must be a translated string.
Implements blender::ui::DropTargetInterface.
Definition at line 128 of file interface_template_shape_key_tree.cc.
References blender::ui::After, blender::ui::Before, BLI_assert_unreachable, blender::ui::DragInfo::drop_location, blender::ui::Into, and TIP_.
|
inlineoverridevirtual |
Execute the logic to apply a drop of the data dragged with drag onto/into the UI element this drop target is for.
Implements blender::ui::DropTargetInterface.
Definition at line 152 of file interface_template_shape_key_tree.cc.
References blender::ui::After, blender::ui::Before, BKE_key_from_object(), BKE_keyblock_move(), BLI_assert_unreachable, BLI_findindex(), Key::block, C, CTX_data_active_object(), Object::data, DEG_id_tag_update(), blender::ui::DragInfo::drag_data, blender::ui::DragInfo::drop_location, ED_undo_push(), i, ID_RECALC_GEOMETRY, blender::ui::Into, NC_OBJECT, ND_DRAW, wmDrag::poin, and WM_event_add_notifier().