Changeset View
Changeset View
Standalone View
Standalone View
source/blender/editors/space_outliner/outliner_tree.c
| Show All 26 Lines | |||||
| #include "MEM_guardedalloc.h" | #include "MEM_guardedalloc.h" | ||||
| #include "DNA_anim_types.h" | #include "DNA_anim_types.h" | ||||
| #include "DNA_armature_types.h" | #include "DNA_armature_types.h" | ||||
| #include "DNA_cachefile_types.h" | #include "DNA_cachefile_types.h" | ||||
| #include "DNA_camera_types.h" | #include "DNA_camera_types.h" | ||||
| #include "DNA_collection_types.h" | #include "DNA_collection_types.h" | ||||
| #include "DNA_constraint_types.h" | #include "DNA_constraint_types.h" | ||||
| #include "DNA_gpencil_modifier_types.h" | |||||
| #include "DNA_gpencil_types.h" | #include "DNA_gpencil_types.h" | ||||
| #include "DNA_hair_types.h" | #include "DNA_hair_types.h" | ||||
| #include "DNA_key_types.h" | #include "DNA_key_types.h" | ||||
| #include "DNA_light_types.h" | #include "DNA_light_types.h" | ||||
| #include "DNA_lightprobe_types.h" | #include "DNA_lightprobe_types.h" | ||||
| #include "DNA_linestyle_types.h" | #include "DNA_linestyle_types.h" | ||||
| #include "DNA_material_types.h" | #include "DNA_material_types.h" | ||||
| #include "DNA_mesh_types.h" | #include "DNA_mesh_types.h" | ||||
| #include "DNA_meta_types.h" | #include "DNA_meta_types.h" | ||||
| #include "DNA_object_types.h" | #include "DNA_object_types.h" | ||||
| #include "DNA_particle_types.h" | #include "DNA_particle_types.h" | ||||
| #include "DNA_pointcloud_types.h" | #include "DNA_pointcloud_types.h" | ||||
| #include "DNA_scene_types.h" | #include "DNA_scene_types.h" | ||||
| #include "DNA_sequence_types.h" | #include "DNA_sequence_types.h" | ||||
| #include "DNA_shader_fx_types.h" | |||||
| #include "DNA_simulation_types.h" | #include "DNA_simulation_types.h" | ||||
| #include "DNA_speaker_types.h" | #include "DNA_speaker_types.h" | ||||
| #include "DNA_volume_types.h" | #include "DNA_volume_types.h" | ||||
| #include "DNA_world_types.h" | #include "DNA_world_types.h" | ||||
| #include "BLI_blenlib.h" | #include "BLI_blenlib.h" | ||||
| #include "BLI_fnmatch.h" | #include "BLI_fnmatch.h" | ||||
| #include "BLI_listbase.h" | #include "BLI_listbase.h" | ||||
| ▲ Show 20 Lines • Show All 490 Lines • ▼ Show 20 Lines | for (index = 0, md = ob->modifiers.first; md; index++, md = md->next) { | ||||
| ten_psys = outliner_add_element(space_outliner, &ten->subtree, ob, te, TSE_LINKED_PSYS, 0); | ten_psys = outliner_add_element(space_outliner, &ten->subtree, ob, te, TSE_LINKED_PSYS, 0); | ||||
| ten_psys->directdata = psys; | ten_psys->directdata = psys; | ||||
| ten_psys->name = psys->part->id.name + 2; | ten_psys->name = psys->part->id.name + 2; | ||||
| } | } | ||||
| } | } | ||||
| } | } | ||||
| /* Grease Pencil modifiers. */ | |||||
| if (!BLI_listbase_is_empty(&ob->greasepencil_modifiers)) { | |||||
| GpencilModifierData *md; | |||||
| TreeElement *ten_mod = outliner_add_element( | |||||
| space_outliner, &te->subtree, ob, te, TSE_MODIFIER_BASE, 0); | |||||
| int index; | |||||
| ten_mod->name = IFACE_("Modifiers"); | |||||
| for (index = 0, md = ob->greasepencil_modifiers.first; md; index++, md = md->next) { | |||||
| TreeElement *ten = outliner_add_element( | |||||
| space_outliner, &ten_mod->subtree, ob, ten_mod, TSE_MODIFIER, index); | |||||
| ten->name = md->name; | |||||
| ten->directdata = md; | |||||
| if (md->type == eGpencilModifierType_Armature) { | |||||
| outliner_add_element(space_outliner, | |||||
| &ten->subtree, | |||||
| ((ArmatureGpencilModifierData *)md)->object, | |||||
| ten, | |||||
| TSE_LINKED_OB, | |||||
| 0); | |||||
| } | |||||
| else if (md->type == eGpencilModifierType_Hook) { | |||||
| outliner_add_element(space_outliner, | |||||
| &ten->subtree, | |||||
| ((HookGpencilModifierData *)md)->object, | |||||
| ten, | |||||
| TSE_LINKED_OB, | |||||
| 0); | |||||
| } | |||||
| else if (md->type == eGpencilModifierType_Lattice) { | |||||
| outliner_add_element(space_outliner, | |||||
| &ten->subtree, | |||||
| ((LatticeGpencilModifierData *)md)->object, | |||||
| ten, | |||||
| TSE_LINKED_OB, | |||||
| 0); | |||||
| } | |||||
| } | |||||
| } | |||||
| /* Grease Pencil effects. */ | |||||
| if (!BLI_listbase_is_empty(&ob->shader_fx)) { | |||||
| ShaderFxData *fx; | |||||
| TreeElement *ten_fx = outliner_add_element( | |||||
| space_outliner, &te->subtree, ob, te, TSE_EFFECT_BASE, 0); | |||||
| int index; | |||||
| ten_fx->name = IFACE_("Effects"); | |||||
| for (index = 0, fx = ob->shader_fx.first; fx; index++, fx = fx->next) { | |||||
| TreeElement *ten = outliner_add_element( | |||||
| space_outliner, &ten_fx->subtree, ob, ten_fx, TSE_EFFECT, index); | |||||
| ten->name = fx->name; | |||||
| ten->directdata = fx; | |||||
| if (fx->type == eShaderFxType_Swirl) { | |||||
| outliner_add_element(space_outliner, | |||||
| &ten->subtree, | |||||
| ((SwirlShaderFxData *)fx)->object, | |||||
| ten, | |||||
| TSE_LINKED_OB, | |||||
| 0); | |||||
| } | |||||
| } | |||||
| } | |||||
| /* vertex groups */ | /* vertex groups */ | ||||
| if (ob->defbase.first) { | if (ob->defbase.first) { | ||||
| bDeformGroup *defgroup; | bDeformGroup *defgroup; | ||||
| TreeElement *ten; | TreeElement *ten; | ||||
| TreeElement *tenla = outliner_add_element( | TreeElement *tenla = outliner_add_element( | ||||
| space_outliner, &te->subtree, ob, te, TSE_DEFGROUP_BASE, 0); | space_outliner, &te->subtree, ob, te, TSE_DEFGROUP_BASE, 0); | ||||
| int a; | int a; | ||||
| ▲ Show 20 Lines • Show All 2,020 Lines • Show Last 20 Lines | |||||