Blender
V3.3
|
#include <cstring>
#include "MEM_guardedalloc.h"
#include "DNA_collection_types.h"
#include "DNA_material_types.h"
#include "DNA_object_types.h"
#include "DNA_space_types.h"
#include "BLI_listbase.h"
#include "BLI_string.h"
#include "BLT_translation.h"
#include "BKE_collection.h"
#include "BKE_context.h"
#include "BKE_layer.h"
#include "BKE_lib_id.h"
#include "BKE_main.h"
#include "BKE_material.h"
#include "BKE_object.h"
#include "BKE_report.h"
#include "DEG_depsgraph.h"
#include "DEG_depsgraph_build.h"
#include "ED_object.h"
#include "ED_outliner.h"
#include "ED_screen.h"
#include "UI_interface.h"
#include "UI_view2d.h"
#include "RNA_access.h"
#include "WM_api.h"
#include "WM_types.h"
#include "outliner_intern.hh"
Go to the source code of this file.
Classes | |
struct | StackDropData |
struct | CollectionDrop |
Outliner Drag Operator | |
#define | OUTLINER_DRAG_SCOLL_OUTSIDE_PAD 7 /* In UI units */ |
static TreeElement * | outliner_item_drag_element_find (SpaceOutliner *space_outliner, ARegion *region, const wmEvent *event) |
static int | outliner_item_drag_drop_invoke (bContext *C, wmOperator *UNUSED(op), const wmEvent *event) |
void | OUTLINER_OT_item_drag_drop (wmOperatorType *ot) |
Data Stack Drop Operator | |
A generic operator to allow drag and drop for modifiers, constraints, and shader effects which all share the same UI stack layout. The following operations are allowed:
| |
enum | eDataStackDropAction { DATA_STACK_DROP_REORDER , DATA_STACK_DROP_COPY , DATA_STACK_DROP_LINK } |
static void | datastack_drop_data_init (wmDrag *drag, Object *ob, bPoseChannel *pchan, TreeElement *te, TreeStoreElem *tselem, void *directdata) |
static bool | datastack_drop_init (bContext *C, const wmEvent *event, StackDropData *drop_data) |
static bool | datastack_drop_are_types_valid (StackDropData *drop_data) |
static bool | datastack_drop_poll (bContext *C, wmDrag *drag, const wmEvent *event) |
static char * | datastack_drop_tooltip (bContext *UNUSED(C), wmDrag *drag, const int UNUSED(xy[2]), struct wmDropBox *UNUSED(drop)) |
static void | datastack_drop_link (bContext *C, StackDropData *drop_data) |
static void | datastack_drop_copy (bContext *C, StackDropData *drop_data) |
static void | datastack_drop_reorder (bContext *C, ReportList *reports, StackDropData *drop_data) |
static int | datastack_drop_invoke (bContext *C, wmOperator *op, const wmEvent *event) |
void | OUTLINER_OT_datastack_drop (wmOperatorType *ot) |
#define OUTLINER_DRAG_SCOLL_OUTSIDE_PAD 7 /* In UI units */ |
Definition at line 1393 of file outliner_dragdrop.cc.
using CheckTypeFn = bool (*)(TreeElement *te) |
Definition at line 178 of file outliner_dragdrop.cc.
enum eDataStackDropAction |
Enumerator | |
---|---|
DATA_STACK_DROP_REORDER | |
DATA_STACK_DROP_COPY | |
DATA_STACK_DROP_LINK |
Definition at line 678 of file outliner_dragdrop.cc.
|
static |
Definition at line 303 of file outliner_dragdrop.cc.
References SpaceOutliner::filter, SpaceOutliner::outlinevis, SO_FILTER_NO_COLLECTION, SO_SCENES, and SO_VIEW_LAYER.
Referenced by parent_clear_poll(), and parent_drop_poll().
|
static |
Definition at line 1127 of file outliner_dragdrop.cc.
References C, collection_parent_from_ID(), data, ELEM, ListBase::first, wmDragID::from_parent, GS, id, Collection::id, wmDragID::id, ID_GR, ID_IS_LINKED, ID_IS_OVERRIDE_LIBRARY, ID_OB, wmDrag::ids, ID::name, outliner_collection_from_tree_element(), outliner_drop_insert_collection_find(), TE_INSERT_AFTER, TE_INSERT_BEFORE, TE_INSERT_INTO, wmDrag::type, WM_DRAG_ID, and xy.
Referenced by collection_drop_invoke(), collection_drop_poll(), and collection_drop_tooltip().
|
static |
Definition at line 1294 of file outliner_dragdrop.cc.
References BKE_collection_is_empty(), BKE_collection_move(), BKE_collection_object_add(), BKE_collection_object_move(), C, collection_drop_init(), collection_parent_from_ID(), CTX_data_main(), CTX_data_scene(), CTX_wm_space_outliner(), wmEvent::custom, data, DEG_id_tag_update(), DEG_relations_tag_update(), ELEM, EVT_DATA_DRAGDROP, ListBase::first, from, GS, Collection::id, Object::id, ID_GR, ID_OB, ID_RECALC_COPY_ON_WRITE, ID_RECALC_GEOMETRY, wmDrag::ids, if(), KM_CTRL, LISTBASE_FOREACH, NC_SCENE, ND_LAYER, OPERATOR_CANCELLED, OPERATOR_FINISHED, outliner_collection_from_tree_element(), outliner_find_parent_element(), scene, TE_INSERT_AFTER, TE_INSERT_BEFORE, SpaceOutliner::tree, TREESTORE, TSE_CLOSED, WM_event_add_notifier(), and wmEvent::xy.
Referenced by OUTLINER_OT_collection_drop().
Definition at line 1189 of file outliner_dragdrop.cc.
References C, collection_drop_init(), CTX_wm_region(), CTX_wm_space_outliner(), data, ED_region_tag_redraw_no_rebuild(), TreeStoreElem::flag, KM_SHIFT, wmEvent::modifier, outliner_flag_set(), TE_INSERT_AFTER, TE_INSERT_BEFORE, TE_INSERT_INTO, TREESTORE, TSE_DRAG_AFTER, TSE_DRAG_ANY, TSE_DRAG_BEFORE, TSE_DRAG_INTO, TSE_HIGHLIGHTED_ANY, and wmEvent::xy.
Referenced by outliner_dropboxes().
|
static |
Definition at line 1225 of file outliner_dragdrop.cc.
References BLI_strdup(), C, collection_drop_init(), CTX_wm_window(), data, wmWindow::eventstate, ListBase::first, GS, wmDragID::id, ID_OB, wmDrag::ids, KM_CTRL, KM_SHIFT, LISTBASE_FOREACH, ID::name, TreeElement::next, outliner_is_collection_tree_element(), TreeElement::prev, TE_INSERT_AFTER, TE_INSERT_BEFORE, TE_INSERT_INTO, TIP_, and xy.
Referenced by outliner_dropboxes().
|
static |
Definition at line 1109 of file outliner_dragdrop.cc.
References GS, id, ID_GR, ID_IS_LINKED, ID_IS_OVERRIDE_LIBRARY, ID_SCE, and ID::name.
Referenced by collection_drop_init(), and collection_drop_invoke().
|
static |
Definition at line 810 of file outliner_dragdrop.cc.
References StackDropData::drag_tselem, StackDropData::drop_te, TreeStoreElem::id, if(), OB_GPENCIL, StackDropData::ob_parent, StackDropData::pchan_parent, TREESTORE, TSE_CONSTRAINT, TSE_CONSTRAINT_BASE, TSE_GPENCIL_EFFECT, TSE_GPENCIL_EFFECT_BASE, TSE_MODIFIER, TSE_MODIFIER_BASE, TSE_POSE_CHANNEL, Object::type, and TreeStoreElem::type.
Referenced by datastack_drop_poll().
|
static |
Definition at line 957 of file outliner_dragdrop.cc.
References C, CTX_data_main(), TreeElement::directdata, StackDropData::drag_directdata, StackDropData::drag_tselem, StackDropData::drop_te, ED_object_constraint_copy_for_object(), ED_object_constraint_copy_for_pose(), ED_object_gpencil_modifier_copy_to_object(), ED_object_modifier_copy_to_object(), ED_object_shaderfx_copy(), TreeStoreElem::id, OB_GPENCIL, StackDropData::ob_parent, TREESTORE, TSE_CONSTRAINT, TSE_GPENCIL_EFFECT, TSE_MODIFIER, TSE_POSE_CHANNEL, Object::type, and TreeStoreElem::type.
Referenced by datastack_drop_invoke().
|
static |
Definition at line 696 of file outliner_dragdrop.cc.
References StackDropData::drag_directdata, StackDropData::drag_index, StackDropData::drag_tselem, wmDrag::flags, TreeElement::index, StackDropData::ob_parent, StackDropData::pchan_parent, wmDrag::poin, and WM_DRAG_FREE_DATA.
Referenced by outliner_item_drag_drop_invoke().
|
static |
Definition at line 715 of file outliner_dragdrop.cc.
References BKE_id_is_editable(), C, CTX_data_main(), DATA_STACK_DROP_COPY, DATA_STACK_DROP_LINK, DATA_STACK_DROP_REORDER, TreeElement::directdata, StackDropData::drag_tselem, StackDropData::drop_action, StackDropData::drop_te, ELEM, Object::id, StackDropData::insert_type, is_object_element(), is_pchan_element(), StackDropData::ob_parent, outliner_data_from_tree_element_and_parents(), outliner_drop_insert_find(), StackDropData::pchan_parent, TE_INSERT_INTO, TREESTORE, TSE_CONSTRAINT, TSE_CONSTRAINT_BASE, TSE_GPENCIL_EFFECT, TSE_GPENCIL_EFFECT_BASE, TSE_MODIFIER, TSE_MODIFIER_BASE, TreeStoreElem::type, and wmEvent::xy.
Referenced by datastack_drop_poll().
|
static |
Definition at line 1054 of file outliner_dragdrop.cc.
References C, wmEvent::custom, DATA_STACK_DROP_COPY, DATA_STACK_DROP_LINK, DATA_STACK_DROP_REORDER, datastack_drop_copy(), datastack_drop_link(), datastack_drop_reorder(), StackDropData::drop_action, EVT_DATA_DRAGDROP, ListBase::first, OPERATOR_CANCELLED, OPERATOR_FINISHED, wmDrag::poin, and wmOperator::reports.
Referenced by OUTLINER_OT_datastack_drop().
|
static |
Definition at line 915 of file outliner_dragdrop.cc.
References C, bPoseChannel::constraints, Object::constraints, CTX_data_main(), TreeElement::directdata, StackDropData::drag_tselem, StackDropData::drop_te, ED_object_constraint_link(), ED_object_modifier_link(), ED_object_shaderfx_link(), TreeStoreElem::id, OB_GPENCIL, StackDropData::ob_parent, StackDropData::pchan_parent, src, TREESTORE, TSE_CONSTRAINT_BASE, TSE_GPENCIL_EFFECT_BASE, TSE_MODIFIER_BASE, TSE_POSE_CHANNEL, Object::type, and TreeStoreElem::type.
Referenced by datastack_drop_invoke().
Definition at line 842 of file outliner_dragdrop.cc.
References C, CTX_wm_region(), CTX_wm_space_outliner(), datastack_drop_are_types_valid(), datastack_drop_init(), StackDropData::drop_te, ED_region_tag_redraw_no_rebuild(), TreeStoreElem::flag, StackDropData::insert_type, outliner_flag_set(), wmDrag::poin, TE_INSERT_AFTER, TE_INSERT_BEFORE, TE_INSERT_INTO, TREESTORE, TSE_DRAG_AFTER, TSE_DRAG_ANY, TSE_DRAG_BEFORE, TSE_DRAG_INTO, TSE_HIGHLIGHTED_ANY, wmDrag::type, and WM_DRAG_DATASTACK.
Referenced by outliner_dropboxes().
|
static |
Definition at line 1003 of file outliner_dragdrop.cc.
References C, bPoseChannel::constraints, Object::constraints, CTX_wm_space_outliner(), StackDropData::drag_directdata, StackDropData::drag_tselem, StackDropData::drop_te, ED_object_constraint_move_to_index(), ED_object_gpencil_modifier_move_to_index(), ED_object_modifier_move_to_index(), ED_object_shaderfx_move_to_index(), Object::greasepencil_modifiers, StackDropData::insert_type, Object::modifiers, OB_GPENCIL, StackDropData::ob_parent, outliner_find_tree_element(), outliner_get_insert_index(), StackDropData::pchan_parent, Object::shader_fx, SpaceOutliner::tree, TSE_CONSTRAINT, TSE_GPENCIL_EFFECT, TSE_MODIFIER, Object::type, and TreeStoreElem::type.
Referenced by datastack_drop_invoke().
|
static |
Definition at line 885 of file outliner_dragdrop.cc.
References BLI_strdup(), DATA_STACK_DROP_COPY, DATA_STACK_DROP_LINK, DATA_STACK_DROP_REORDER, StackDropData::drop_action, StackDropData::pchan_parent, wmDrag::poin, and TIP_.
Referenced by outliner_dropboxes().
|
static |
Definition at line 192 of file outliner_dragdrop.cc.
References outliner_is_collection_tree_element().
Referenced by outliner_drop_insert_collection_find().
|
static |
Definition at line 197 of file outliner_dragdrop.cc.
References ID_OB, TreeElement::idcode, TREESTORE, TSE_SOME_ID, and TreeStoreElem::type.
Referenced by datastack_drop_init().
|
static |
Definition at line 203 of file outliner_dragdrop.cc.
References TREESTORE, TSE_POSE_CHANNEL, and TreeStoreElem::type.
Referenced by datastack_drop_init().
|
static |
Definition at line 624 of file outliner_dragdrop.cc.
References BKE_MAT_ASSIGN_USERPREF, BKE_object_material_assign(), C, CTX_data_main(), ELEM, Material::gp_style, ID_MA, ID_OB, NC_MATERIAL, NC_OBJECT, NC_SPACE, ND_OB_SHADING, ND_SHADING_LINKS, ND_SPACE_VIEW3D, OB_GPENCIL, OPERATOR_CANCELLED, OPERATOR_FINISHED, outliner_ID_drop_find(), Object::totcol, Object::type, WM_drag_get_local_ID_from_event(), and WM_event_add_notifier().
Referenced by OUTLINER_OT_material_drop().
Definition at line 617 of file outliner_dragdrop.cc.
References C, ID_MA, ID_OB, outliner_ID_drop_find(), and WM_drag_get_local_ID().
Referenced by outliner_dropboxes().
|
static |
Definition at line 180 of file outliner_dragdrop.cc.
References TreeElement::parent.
Referenced by datastack_drop_init(), and outliner_drop_insert_collection_find().
|
static |
Definition at line 90 of file outliner_dragdrop.cc.
References C, CTX_wm_region(), CTX_wm_space_outliner(), wmEvent::mval, outliner_dropzone_find(), UI_view2d_region_to_view(), and ARegion::v2d.
Referenced by outliner_ID_drop_find(), parent_clear_poll(), parent_drop_invoke(), and parent_drop_poll().
|
static |
Definition at line 209 of file outliner_dragdrop.cc.
References C, COLLECTION_IS_MASTER, Collection::flag, is_collection_element(), outliner_collection_from_tree_element(), outliner_data_from_tree_element_and_parents(), outliner_drop_insert_find(), TE_INSERT_INTO, and xy.
Referenced by collection_drop_init().
|
static |
Definition at line 112 of file outliner_dragdrop.cc.
References BLI_assert_unreachable, BLI_listbase_is_empty(), C, CTX_wm_region(), CTX_wm_space_outliner(), ListBase::first, ListBase::last, outliner_find_item_at_y(), TreeElement::subtree, TE_INSERT_AFTER, TE_INSERT_BEFORE, TE_INSERT_INTO, SpaceOutliner::tree, TREESTORE, TSELEM_OPEN, UI_UNIT_Y, UI_view2d_region_to_view(), ARegion::v2d, ARegion::winrct, rcti::xmin, xy, rcti::ymin, and TreeElement::ys.
Referenced by datastack_drop_init(), and outliner_drop_insert_collection_find().
Region drop-box definition.
Definition at line 1577 of file outliner_dragdrop.cc.
References collection_drop_poll(), collection_drop_tooltip(), datastack_drop_poll(), datastack_drop_tooltip(), material_drop_poll(), parent_clear_poll(), parent_drop_poll(), RGN_TYPE_WINDOW, scene_drop_poll(), SPACE_OUTLINER, WM_dropbox_add(), and WM_dropboxmap_find().
Referenced by ED_spacetype_outliner().
|
static |
Definition at line 54 of file outliner_dragdrop.cc.
References ListBase::first, LISTBASE_FOREACH, TreeElement::subtree, TREESTORE, TSE_CLOSED, UI_UNIT_X, UI_UNIT_Y, TreeElement::xend, TreeElement::xs, and TreeElement::ys.
Referenced by outliner_dropzone_find().
|
static |
Definition at line 77 of file outliner_dragdrop.cc.
References LISTBASE_FOREACH, outliner_dropzone_element(), and SpaceOutliner::tree.
Referenced by outliner_drop_find().
|
static |
Definition at line 237 of file outliner_dragdrop.cc.
References BLI_findindex(), TreeElement::directdata, TreeElement::index, TreeElement::next, TreeElement::prev, TE_INSERT_AFTER, and TE_INSERT_BEFORE.
Referenced by datastack_drop_reorder().
Definition at line 100 of file outliner_dragdrop.cc.
References C, TreeStoreElem::id, TreeElement::idcode, outliner_drop_find(), TREESTORE, TSE_SOME_ID, and TreeStoreElem::type.
Referenced by material_drop_invoke(), material_drop_poll(), scene_drop_invoke(), and scene_drop_poll().
|
static |
Definition at line 1408 of file outliner_dragdrop.cc.
References BLI_freelistN(), C, CTX_data_scene(), CTX_wm_region(), CTX_wm_space_outliner(), data, datastack_drop_data_init(), TreeElement::directdata, ED_outliner_select_sync_from_outliner(), ELEM, TreeStoreElem::flag, GS, Collection::id, TreeStoreElem::id, ID_GR, ID_OB, if(), LISTBASE_FOREACH, Scene::master_collection, OPERATOR_CANCELLED, OPERATOR_FINISHED, OPERATOR_PASS_THROUGH, ot, outliner_collection_from_tree_element(), OUTLINER_DRAG_SCOLL_OUTSIDE_PAD, outliner_find_parent_bone(), outliner_find_selected_collections(), outliner_find_selected_objects(), outliner_flag_set(), outliner_is_co_within_mode_column(), outliner_is_collection_tree_element(), outliner_item_drag_element_find(), outliner_item_is_co_within_close_toggle(), outliner_tree_traverse(), TreeElement::parent, RNA_float_set(), scene, SpaceOutliner::tree, tree_element_get_icon(), TREESTORE, TSE_CONSTRAINT, TSE_CONSTRAINT_BASE, TSE_GPENCIL_EFFECT, TSE_GPENCIL_EFFECT_BASE, TSE_MODIFIER, TSE_MODIFIER_BASE, TSE_SELECTED, TreeStoreElem::type, UI_view2d_region_to_view(), ARegion::v2d, WM_drag_add_local_ID(), WM_drag_data_create(), WM_DRAG_DATASTACK, WM_DRAG_ID, WM_DRAG_NOP, WM_event_drag_start_mval(), WM_event_start_prepared_drag(), WM_OP_INVOKE_DEFAULT, WM_operator_name_call_ptr(), WM_operator_properties_create_ptr(), WM_operator_properties_free(), and WM_operatortype_find().
Referenced by OUTLINER_OT_item_drag_drop().
|
static |
Definition at line 1395 of file outliner_dragdrop.cc.
References outliner_find_item_at_y(), SpaceOutliner::tree, UI_view2d_region_to_view_y(), ARegion::v2d, and WM_event_drag_start_mval().
Referenced by outliner_item_drag_drop_invoke().
void OUTLINER_OT_collection_drop | ( | wmOperatorType * | ot | ) |
Definition at line 1372 of file outliner_dragdrop.cc.
References collection_drop_invoke(), wmOperatorType::description, ED_operator_outliner_active(), wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::invoke, wmOperatorType::name, OPTYPE_INTERNAL, OPTYPE_REGISTER, OPTYPE_UNDO, ot, and wmOperatorType::poll.
Referenced by outliner_operatortypes().
void OUTLINER_OT_datastack_drop | ( | wmOperatorType * | ot | ) |
Definition at line 1079 of file outliner_dragdrop.cc.
References datastack_drop_invoke(), wmOperatorType::description, ED_operator_outliner_active(), wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::invoke, wmOperatorType::name, OPTYPE_INTERNAL, OPTYPE_REGISTER, OPTYPE_UNDO, ot, and wmOperatorType::poll.
Referenced by outliner_operatortypes().
void OUTLINER_OT_item_drag_drop | ( | wmOperatorType * | ot | ) |
Definition at line 1559 of file outliner_dragdrop.cc.
References wmOperatorType::description, ED_operator_outliner_active(), wmOperatorType::idname, wmOperatorType::invoke, wmOperatorType::name, ot, outliner_item_drag_drop_invoke(), and wmOperatorType::poll.
Referenced by outliner_operatortypes().
void OUTLINER_OT_material_drop | ( | wmOperatorType * | ot | ) |
Definition at line 648 of file outliner_dragdrop.cc.
References wmOperatorType::description, ED_operator_outliner_active(), wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::invoke, material_drop_invoke(), wmOperatorType::name, OPTYPE_INTERNAL, OPTYPE_REGISTER, OPTYPE_UNDO, ot, and wmOperatorType::poll.
Referenced by outliner_operatortypes().
void OUTLINER_OT_parent_clear | ( | wmOperatorType * | ot | ) |
Definition at line 526 of file outliner_dragdrop.cc.
References wmOperatorType::description, ED_operator_outliner_active(), wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::invoke, wmOperatorType::name, OPTYPE_INTERNAL, OPTYPE_REGISTER, OPTYPE_UNDO, ot, parent_clear_invoke(), and wmOperatorType::poll.
Referenced by outliner_operatortypes().
void OUTLINER_OT_parent_drop | ( | wmOperatorType * | ot | ) |
Definition at line 438 of file outliner_dragdrop.cc.
References wmOperatorType::description, ED_operator_outliner_active(), wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::invoke, wmOperatorType::name, OPTYPE_INTERNAL, OPTYPE_REGISTER, OPTYPE_UNDO, ot, parent_drop_invoke(), and wmOperatorType::poll.
Referenced by outliner_operatortypes().
void OUTLINER_OT_scene_drop | ( | wmOperatorType * | ot | ) |
Definition at line 595 of file outliner_dragdrop.cc.
References wmOperatorType::description, ED_operator_outliner_active(), wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::invoke, wmOperatorType::name, OPTYPE_INTERNAL, OPTYPE_REGISTER, OPTYPE_UNDO, ot, wmOperatorType::poll, and scene_drop_invoke().
Referenced by outliner_operatortypes().
|
static |
Definition at line 500 of file outliner_dragdrop.cc.
References C, CLEAR_PARENT_ALL, CLEAR_PARENT_KEEP_TRANSFORM, CTX_data_main(), wmEvent::custom, DEG_relations_tag_update(), ED_object_parent_clear(), EVT_DATA_DRAGDROP, ListBase::first, GS, Object::id, ID_OB, wmDrag::ids, KM_ALT, LISTBASE_FOREACH, wmEvent::modifier, NC_OBJECT, ND_PARENT, ND_TRANSFORM, OPERATOR_CANCELLED, OPERATOR_FINISHED, and WM_event_add_notifier().
Referenced by OUTLINER_OT_parent_clear().
Definition at line 460 of file outliner_dragdrop.cc.
References allow_parenting_without_modifier_key(), C, CTX_wm_space_outliner(), ELEM, GS, id, TreeStoreElem::id, ID_GR, ID_OB, KM_SHIFT, wmEvent::modifier, ID::name, outliner_drop_find(), Object::parent, TREESTORE, TSE_CONSTRAINT_BASE, TSE_LIBRARY_OVERRIDE_BASE, TSE_MODIFIER_BASE, TreeStoreElem::type, and WM_drag_get_local_ID().
Referenced by outliner_dropboxes().
|
static |
Definition at line 267 of file outliner_dragdrop.cc.
References BKE_object_is_child_recursive(), BKE_view_layer_base_find(), TreeStoreElem::id, ID_OB, ID_SCE, TreeElement::idcode, if(), LISTBASE_FOREACH, outliner_search_back(), Object::parent, scene, TREESTORE, TSE_SOME_ID, TreeStoreElem::type, and Scene::view_layers.
Referenced by parent_drop_poll().
|
static |
Definition at line 402 of file outliner_dragdrop.cc.
References C, wmEvent::custom, ELEM, EVT_DATA_DRAGDROP, ListBase::first, TreeStoreElem::id, ID_OB, TreeElement::idcode, wmDrag::ids, KM_ALT, wmEvent::modifier, OPERATOR_CANCELLED, OPERATOR_FINISHED, outliner_drop_find(), PAR_OBJECT, parent_drop_set_parents(), wmOperator::reports, TREESTORE, TSE_SOME_ID, TreeStoreElem::type, and WM_drag_get_local_ID_from_event().
Referenced by OUTLINER_OT_parent_drop().
Definition at line 315 of file outliner_dragdrop.cc.
References allow_parenting_without_modifier_key(), C, CTX_wm_region(), CTX_wm_space_outliner(), ED_region_tag_redraw_no_rebuild(), ID_OB, KM_SHIFT, wmEvent::modifier, outliner_drop_find(), outliner_flag_set(), parent_drop_allowed(), TREESTORE, TSE_DRAG_ANY, TSE_DRAG_INTO, and WM_drag_get_local_ID().
Referenced by outliner_dropboxes().
|
static |
Definition at line 349 of file outliner_dragdrop.cc.
References BKE_id_is_editable(), BKE_report(), C, CTX_data_main(), CTX_data_scene(), CTX_wm_space_outliner(), DEG_relations_tag_update(), ED_object_parent_set(), GS, Object::id, ID_OB, ID_SCE, if(), NC_OBJECT, ND_PARENT, ND_TRANSFORM, wmDragID::next, outliner_find_id(), outliner_search_back(), RPT_INFO, scene, SpaceOutliner::tree, and WM_event_add_notifier().
Referenced by parent_drop_invoke().
|
static |
Definition at line 555 of file outliner_dragdrop.cc.
References BA_SELECT, BKE_collection_object_add(), BKE_id_is_editable(), BKE_scene_has_object(), BKE_view_layer_base_find(), C, CTX_data_collection(), CTX_data_main(), CTX_data_scene(), DEG_id_tag_update(), DEG_relations_tag_update(), ED_object_base_select(), ELEM, Scene::id, ID_OB, ID_RECALC_SELECT, ID_SCE, LISTBASE_FOREACH, Scene::master_collection, NC_SCENE, ND_OB_SELECT, OPERATOR_CANCELLED, OPERATOR_FINISHED, outliner_ID_drop_find(), scene, Scene::view_layers, WM_drag_get_local_ID_from_event(), and WM_main_add_notifier().
Referenced by OUTLINER_OT_scene_drop().
Definition at line 548 of file outliner_dragdrop.cc.
References C, ID_OB, ID_SCE, outliner_ID_drop_find(), and WM_drag_get_local_ID().
Referenced by outliner_dropboxes().