Blender
V3.3
|
#include <string.h>
#include "MEM_guardedalloc.h"
#include "DNA_anim_types.h"
#include "DNA_armature_types.h"
#include "DNA_gpencil_types.h"
#include "DNA_mask_types.h"
#include "DNA_node_types.h"
#include "DNA_object_types.h"
#include "DNA_scene_types.h"
#include "DNA_sequence_types.h"
#include "BLI_blenlib.h"
#include "BLI_utildefines.h"
#include "BKE_action.h"
#include "BKE_anim_data.h"
#include "BKE_context.h"
#include "BKE_fcurve.h"
#include "BKE_gpencil.h"
#include "BKE_main.h"
#include "BKE_node.h"
#include "DEG_depsgraph.h"
#include "RNA_access.h"
#include "RNA_path.h"
#include "SEQ_sequencer.h"
#include "SEQ_utils.h"
#include "ED_anim_api.h"
Go to the source code of this file.
Functions | |
void | ANIM_list_elem_update (Main *bmain, Scene *scene, bAnimListElem *ale) |
void | ANIM_id_update (Main *bmain, ID *id) |
static void | animchan_sync_group (bAnimContext *ac, bAnimListElem *ale, bActionGroup **active_agrp) |
static void | animchan_sync_fcurve_scene (bAnimListElem *ale) |
static void | animchan_sync_fcurve (bAnimListElem *ale) |
static void | animchan_sync_gplayer (bAnimListElem *ale) |
void | ANIM_sync_animchannels_to_data (const bContext *C) |
void | ANIM_animdata_update (bAnimContext *ac, ListBase *anim_data) |
void | ANIM_animdata_freelist (ListBase *anim_data) |
Definition at line 397 of file anim_deps.c.
References BLI_assert, BLI_freelistN(), BLI_listbase_clear(), ListBase::first, MEM_freeN, bAnimListElem::next, and bAnimListElem::update.
Referenced by achannel_setting_flush_widget_cb(), actkeys_channels_get_selected_extents(), actkeys_find_list_element_at_position(), actkeys_framejump_exec(), actkeys_mselect_channel_only(), actkeys_mselect_column(), actkeys_mselect_single(), actkeys_select_leftright(), actkeys_select_linked_exec(), ANIM_anim_channels_select_set(), ANIM_anim_channels_select_toggle(), ANIM_animdata_keyframe_callback(), ANIM_editkeyframes_refresh(), ANIM_set_active_channel(), ANIM_sync_animchannels_to_data(), animchannels_clean_empty_exec(), animchannels_delete_exec(), animchannels_enable_exec(), animchannels_group_channels(), animchannels_group_exec(), animchannels_rearrange_exec(), animchannels_ungroup_exec(), bake_graph_curves(), blend_to_default_graph_keys(), blend_to_neighbor_graph_keys(), box_select_action(), box_select_anim_channels(), box_select_elem(), box_select_graphcurves(), box_select_graphkeys(), box_select_nla_strips(), breakdown_graph_keys(), cachefile_to_keylist(), clean_action_keys(), clean_graph_keys(), columnselect_action_keys(), columnselect_graph_keys(), copy_action_keys(), copy_graph_keys(), createTransActionData(), createTransNlaData(), decimate_graph_keys(), delete_action_keys(), delete_graph_keys(), deselect_action_keys(), deselect_nla_strips(), draw_channel_names(), draw_channel_strips(), draw_nla_channel_list(), draw_nla_main_data(), duplicate_action_keys(), duplicate_graph_keys(), ED_gpencil_anim_copybuf_copy(), ED_gpencil_anim_copybuf_paste(), ED_nla_postop_refresh(), equalize_graph_keys(), get_active_fcurve_channel(), get_keyframe_extents(), get_nearest_fcurve_verts_list(), get_nlastrip_extents(), graph_draw_channel_names(), graph_draw_curves(), graph_driver_delete_invalid_exec(), graph_fmodifier_add_exec(), graph_fmodifier_paste_exec(), graph_refresh_fcurve_colors(), graphkeys_euler_filter_exec(), graphkeys_mselect_column(), graphkeys_select_leftright(), graphkeys_select_linked_exec(), graphkeys_smooth_exec(), graphop_editable_keyframes_poll(), graphop_selected_fcurve_poll(), graphop_visible_keyframes_poll(), graphview_curves_hide_exec(), graphview_curves_reveal_exec(), insert_action_keys(), insert_graph_keys(), markers_selectkeys_between(), mirror_action_keys(), mirror_graph_keys(), mouse_anim_channels(), mouse_nla_channels(), nla_channels_get_selected_extents(), nla_fmodifier_add_exec(), nla_fmodifier_copy_exec(), nla_fmodifier_paste_exec(), nla_panel_context(), nlachannels_pushdown_exec(), nlaedit_add_actionclip_exec(), nlaedit_add_meta_exec(), nlaedit_add_sound_exec(), nlaedit_add_tracks_empty(), nlaedit_add_tracks_existing(), nlaedit_add_transition_exec(), nlaedit_apply_scale_exec(), nlaedit_clear_scale_exec(), nlaedit_delete_exec(), nlaedit_delete_tracks_exec(), nlaedit_disable_tweakmode(), nlaedit_duplicate_exec(), nlaedit_enable_tweakmode_exec(), nlaedit_make_single_user_exec(), nlaedit_move_down_exec(), nlaedit_move_up_exec(), nlaedit_remove_meta_exec(), nlaedit_select_leftright(), nlaedit_snap_exec(), nlaedit_split_exec(), nlaedit_strip_at_region_position(), nlaedit_swap_exec(), nlaedit_sync_actlen_exec(), nlaedit_toggle_mute_exec(), ob_keyframes_loop(), ob_to_keylist(), paste_action_keys(), paste_graph_keys(), posttrans_action_clean(), rearrange_gpencil_channels(), region_select_action_keys(), region_select_elem(), rename_anim_channels(), reset_bezts(), sample_action_keys(), sample_graph_keys(), scene_keyframes_loop(), scene_to_keylist(), screen_ctx_active_editable_fcurve(), screen_ctx_sel_actions_impl(), screen_ctx_sel_edit_fcurves_(), screen_ctx_selected_editable_keyframes(), screen_ctx_selected_nla_strips(), select_anim_channel_keys(), select_moreless_action_keys(), select_moreless_graph_keys(), seteasing_graph_keys(), setexpo_action_keys(), setexpo_graph_keys(), setflag_anim_channels(), sethandles_action_keys(), sethandles_graph_keys(), setipo_graph_keys(), setkeytype_action_keys(), snap_action_keys(), snap_graph_keys(), special_aftertrans_update__actedit(), special_aftertrans_update__graph(), special_aftertrans_update__nla(), store_original_bezt_arrays(), sum_selected_keyframes(), summary_keyframes_loop(), summary_to_keylist(), and unbake_graph_curves().
void ANIM_animdata_update | ( | bAnimContext * | ac, |
ListBase * | anim_data | ||
) |
Acts on bAnimListElem eAnim_Update_Flags.
Definition at line 302 of file anim_deps.c.
References ALE_FCURVE, ALE_MASKLAY, ANIM_list_elem_update(), ANIM_UPDATE_DEPS, ANIM_UPDATE_HANDLES, ANIM_UPDATE_ORDER, ANIMTYPE_ANIMDATA, ANIMTYPE_GPLAYER, ANIMTYPE_NLAACTION, ANIMTYPE_NLACURVE, ANIMTYPE_NLATRACK, BKE_fcurve_handles_recalc(), BKE_gpencil_layer_frames_sort(), BLI_assert, bAnimContext::bmain, bAnimListElem::data, bAnimListElem::datatype, ELEM, ListBase::first, G, G_DEBUG, bAnimListElem::key_data, bAnimListElem::next, NULL, bAnimContext::scene, sort_time_fcurve(), bAnimListElem::type, and bAnimListElem::update.
Referenced by actkeys_mselect_channel_only(), actkeys_mselect_column(), actkeys_mselect_single(), actkeys_select_leftright(), ANIM_animdata_keyframe_callback(), ANIM_editkeyframes_refresh(), animchannels_delete_exec(), animchannels_enable_exec(), bake_graph_curves(), blend_to_default_graph_keys(), blend_to_neighbor_graph_keys(), box_select_action(), box_select_elem(), breakdown_graph_keys(), clean_action_keys(), clean_graph_keys(), columnselect_action_keys(), decimate_graph_keys(), delete_action_keys(), delete_graph_keys(), deselect_action_keys(), duplicate_action_keys(), duplicate_graph_keys(), ED_nla_postop_refresh(), equalize_graph_keys(), graph_fmodifier_add_exec(), graph_fmodifier_paste_exec(), graphkeys_click_insert_exec(), graphkeys_euler_filter_exec(), graphkeys_smooth_exec(), insert_action_keys(), insert_graph_keys(), markers_selectkeys_between(), mirror_action_keys(), mirror_graph_keys(), mouse_action_keys(), mouse_nla_channels(), nla_fmodifier_add_exec(), nla_fmodifier_paste_exec(), nlaedit_add_meta_exec(), nlaedit_add_tracks_empty(), nlaedit_add_tracks_existing(), nlaedit_apply_scale_exec(), nlaedit_delete_tracks_exec(), nlaedit_disable_tweakmode(), nlaedit_enable_tweakmode_exec(), nlaedit_make_single_user_exec(), nlaedit_remove_meta_exec(), nlaedit_snap_exec(), nlaedit_sync_actlen_exec(), nlaedit_toggle_mute_exec(), paste_animedit_keys(), region_select_action_keys(), region_select_elem(), sample_action_keys(), sample_graph_keys(), seteasing_graph_keys(), setexpo_action_keys(), setexpo_graph_keys(), sethandles_action_keys(), sethandles_graph_keys(), setipo_graph_keys(), setkeytype_action_keys(), snap_action_keys(), snap_graph_keys(), and unbake_graph_curves().
Tags the given ID block for refreshes (if applicable) due to Animation Editor editing.
Definition at line 99 of file anim_deps.c.
References DEG_id_tag_update_ex(), ID_RECALC_ANIMATION, ID_RECALC_GEOMETRY, and ID_RECALC_TRANSFORM.
Referenced by recalcData_nla().
void ANIM_list_elem_update | ( | struct Main * | bmain, |
struct Scene * | scene, | ||
bAnimListElem * | ale | ||
) |
Tags the given anim list element for refreshes (if applicable) due to Animation Editor editing.
Definition at line 44 of file anim_deps.c.
References AnimData::action, ALE_FCURVE, ANIMTYPE_ANIMDATA, ANIMTYPE_NLAACTION, ANIMTYPE_NLACURVE, ANIMTYPE_NLATRACK, BKE_animdata_from_id(), bAnimListElem::datatype, DEG_id_tag_update(), ELEM, id, bAnimListElem::id, bAction::id, ID_RECALC_ANIMATION, ID_RECALC_GEOMETRY, ID_RECALC_TRANSFORM, if(), bAnimListElem::key_data, NULL, ptr, RNA_id_pointer_create(), FCurve::rna_path, RNA_path_resolve_property(), RNA_property_update_main(), scene, and bAnimListElem::type.
Referenced by ANIM_animdata_update().
Definition at line 259 of file anim_deps.c.
References ANIM_animdata_filter(), ANIM_animdata_freelist(), ANIM_animdata_get_context(), animchan_sync_fcurve(), animchan_sync_gplayer(), animchan_sync_group(), ANIMFILTER_DATA_VISIBLE, ANIMFILTER_LIST_CHANNELS, ANIMFILTER_NODUPLIS, ANIMTYPE_FCURVE, ANIMTYPE_GPLAYER, ANIMTYPE_GROUP, C, bAnimContext::data, bAnimContext::datatype, filter(), ListBase::first, bAnimListElem::next, NULL, and bAnimListElem::type.
Referenced by action_refresh(), and graph_refresh().
|
static |
Definition at line 214 of file anim_deps.c.
References animchan_sync_fcurve_scene(), bAnimListElem::data, ELEM, GS, bAnimListElem::id, ID_SCE, if(), NULL, and FCurve::rna_path.
Referenced by ANIM_sync_animchannels_to_data().
|
static |
Definition at line 183 of file anim_deps.c.
References BLI_assert, BLI_str_quoted_substr(), bAnimListElem::data, FCURVE_SELECTED, FCurve::flag, GS, bAnimListElem::id, ID_SCE, ID::name, NULL, FCurve::rna_path, scene, SELECT, SEQ_editing_get(), SEQ_get_sequence_by_name(), and Editing::seqbasep.
Referenced by animchan_sync_fcurve().
|
static |
Definition at line 236 of file anim_deps.c.
References bAnimListElem::data, bGPDlayer::flag, GP_LAYER_ACTIVE, GP_LAYER_SELECT, and if().
Referenced by ANIM_sync_animchannels_to_data().
|
static |
Definition at line 120 of file anim_deps.c.
References bArmature::act_bone, action_group_colors_sync(), bPose::agroups, AGRP_ACTIVE, bPoseChannel::agrp_index, AGRP_SELECTED, BKE_pose_channel_find_name(), BLI_findlink(), bPoseChannel::bone, BONE_SELECTED, bActionGroup::customCol, bAnimListElem::data, Object::data, ELEM, bActionGroup::flag, Bone::flag, GS, bAnimListElem::id, ID_OB, if(), bActionGroup::name, NULL, bAnimContext::obact, and Object::pose.
Referenced by ANIM_sync_animchannels_to_data().