|
Blender V5.0
|
#include <cstring>#include "MEM_guardedalloc.h"#include "DNA_anim_types.h"#include "DNA_armature_types.h"#include "DNA_gpencil_legacy_types.h"#include "DNA_grease_pencil_types.h"#include "DNA_mask_types.h"#include "DNA_object_types.h"#include "DNA_scene_types.h"#include "DNA_sequence_types.h"#include "DNA_space_types.h"#include "DNA_windowmanager_types.h"#include "BLI_listbase.h"#include "BLI_set.hh"#include "BLI_string.h"#include "BLI_utildefines.h"#include "BKE_action.hh"#include "BKE_anim_data.hh"#include "BKE_context.hh"#include "BKE_fcurve.hh"#include "BKE_gpencil_legacy.h"#include "BKE_grease_pencil.hh"#include "BKE_screen.hh"#include "BKE_workspace.hh"#include "DEG_depsgraph.hh"#include "RNA_access.hh"#include "RNA_path.hh"#include "SEQ_sequencer.hh"#include "SEQ_utils.hh"#include "ED_anim_api.hh"#include "ANIM_action.hh"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) |
| void | ANIM_deselect_keys_in_animation_editors (bContext *C) |
| void ANIM_animdata_freelist | ( | ListBase * | anim_data | ) |
Definition at line 463 of file anim_deps.cc.
References BLI_assert, BLI_freelistN(), BLI_listbase_clear(), ListBase::first, MEM_freeN(), bAnimListElem::next, and bAnimListElem::update.
Referenced by achannel_setting_flush_widget_cb(), action_channel_region_draw(), action_slot_summary_to_keylist(), 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_deselect_keys_in_animation_editors(), ANIM_editkeyframes_refresh(), ANIM_frame_channel_y_extents(), ANIM_set_active_channel(), ANIM_sync_animchannels_to_data(), animchannel_has_active_of_type(), animchannel_select_range(), animchannels_clean_empty_exec(), animchannels_delete_containers(), animchannels_delete_exec(), animchannels_enable_exec(), animchannels_group_channels(), animchannels_group_exec(), animchannels_rearrange_exec(), animchannels_ungroup_exec(), append_nla_strip_snap_target(), apply_fcu_segment_function(), bake_action_keys(), bake_graph_keys(), blend_to_default_graph_keys(), box_select_action(), box_select_anim_channels(), box_select_elem(), box_select_graphcurves(), box_select_graphkeys(), box_select_nla_strips(), btw_smooth_free_operator_data(), btw_smooth_graph_keys(), cachefile_to_keylist(), channels_bake_exec(), clean_action_keys(), clean_graph_keys(), columnselect_action_keys(), columnselect_graph_keys(), convert_keys_to_samples(), convert_samples_to_keys(), copy_action_keys(), copy_graph_keys(), count_fcurves_hidden_by_filter(), create_ghost_curves(), blender::ed::transform::createTransActionData(), blender::ed::transform::createTransGraphEditData(), blender::ed::transform::createTransNlaData(), debug_channel_list_exec(), decimate_graph_keys(), delete_action_keys(), delete_graph_keys(), deselect_action_keys(), deselect_all_fcurves(), deselect_graph_keys(), deselect_nla_strips(), draw_channel_strips(), draw_nla_main_data(), duplicate_action_keys(), duplicate_graph_keys(), ease_graph_keys(), ED_gpencil_anim_copybuf_copy(), ED_gpencil_anim_copybuf_paste(), ED_nla_postop_refresh(), ensure_change_frame_keylist(), equalize_graph_keys(), gaussian_smooth_free_operator_data(), gaussian_smooth_graph_keys(), get_active_fcurve_channel(), get_graph_keyframe_extents(), get_keyframe_extents(), get_nearest_fcurve_verts_list(), get_nlastrip_extents(), graph_channel_region_draw(), graph_draw_curves(), graph_driver_delete_invalid_exec(), graph_fmodifier_add_exec(), graph_fmodifier_paste_exec(), graph_has_selected_control_points(), graph_refresh_fcurve_colors(), graphkeys_channel_view_pick_invoke(), graphkeys_euler_filter_exec(), graphkeys_mselect_column(), graphkeys_select_key_handles(), graphkeys_select_leftright(), graphkeys_select_linked_exec(), graphkeys_smooth_exec(), graphkeys_view_selected_channels_exec(), graphop_editable_keyframes_poll(), graphop_selected_fcurve_poll(), graphop_visible_keyframes_poll(), graphview_curves_hide_exec(), graphview_curves_reveal_exec(), blender::ed::greasepencil::grease_pencil_copy_keyframes(), blender::ed::greasepencil::grease_pencil_paste_keyframes(), insert_action_keys(), keylist_from_graph_editor(), markers_selectkeys_between(), markers_selectkeys_between(), match_slope_graph_keys(), mirror_action_keys(), mirror_graph_keys(), mouse_anim_channels(), mouse_nla_tracks(), nla_fmodifier_add_exec(), nla_fmodifier_copy_exec(), nla_fmodifier_paste_exec(), nla_panel_context(), nla_track_region_draw(), nla_tracks_get_selected_extents(), 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(), blender::ed::transform::nlatrack_truncate_temporary_tracks(), nlatracks_pushdown_exec(), ob_keyframes_loop(), ob_to_keylist(), paste_action_keys(), paste_graph_keys(), blender::ed::transform::posttrans_action_clean(), rearrange_gpencil_channels(), blender::ed::transform::recalcData_actedit(), blender::ed::transform::recalcData_graphedit(), region_select_action_keys(), region_select_elem(), rename_anim_channels(), reset_bezts(), scale_from_neighbor_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(), shear_graph_keys(), slot_channels_move_to_new_action_exec(), snap_action_keys(), snap_graph_keys(), blender::ed::transform::special_aftertrans_update__actedit(), blender::ed::transform::special_aftertrans_update__graph(), blender::ed::transform::special_aftertrans_update__nla(), store_original_bezt_arrays(), sum_selected_keyframes(), summary_keyframes_loop(), summary_to_keylist(), blender::animrig::tests::TEST_F(), blender::animrig::tests::TEST_F(), and update_depsgraph().
| void ANIM_animdata_update | ( | bAnimContext * | ac, |
| ListBase * | anim_data ) |
Acts on bAnimListElem eAnim_Update_Flags.
Definition at line 356 of file anim_deps.cc.
References ALE_FCURVE, ALE_MASKLAY, ANIM_list_elem_update(), ANIM_UPDATE_DEPS, ANIM_UPDATE_HANDLES, ANIM_UPDATE_ORDER, ANIMTYPE_ANIMDATA, ANIMTYPE_GPLAYER, ANIMTYPE_GREASE_PENCIL_DATABLOCK, ANIMTYPE_GREASE_PENCIL_LAYER, ANIMTYPE_GREASE_PENCIL_LAYER_GROUP, ANIMTYPE_NLAACTION, ANIMTYPE_NLACURVE, ANIMTYPE_NLATRACK, BKE_fcurve_handles_recalc(), BKE_gpencil_layer_frames_sort(), BLI_assert, bAnimContext::bmain, ELEM, G, G_DEBUG, LISTBASE_FOREACH, printf, bAnimContext::scene, and sort_time_fcurve().
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(), apply_fcu_segment_function(), bake_action_keys(), bake_graph_keys(), blend_to_default_graph_keys(), box_select_action(), box_select_elem(), btw_smooth_graph_keys(), btw_smooth_modal_update(), clean_action_keys(), clean_graph_keys(), columnselect_action_keys(), convert_keys_to_samples(), convert_samples_to_keys(), decimate_graph_keys(), delete_action_keys(), delete_graph_keys(), deselect_action_keys(), duplicate_action_keys(), duplicate_graph_keys(), ease_graph_keys(), ED_nla_postop_refresh(), equalize_graph_keys(), gaussian_smooth_graph_keys(), gaussian_smooth_modal_update(), graph_fmodifier_add_exec(), graph_fmodifier_paste_exec(), graphkeys_click_insert_exec(), graphkeys_euler_filter_exec(), graphkeys_smooth_exec(), insert_action_keys(), markers_selectkeys_between(), match_slope_graph_keys(), mirror_action_keys(), mirror_graph_keys(), mouse_action_keys(), mouse_nla_tracks(), 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(), scale_from_neighbor_graph_keys(), seteasing_graph_keys(), setexpo_action_keys(), setexpo_graph_keys(), sethandles_action_keys(), sethandles_graph_keys(), setipo_graph_keys(), setkeytype_action_keys(), shear_graph_keys(), snap_action_keys(), and snap_graph_keys().
| void ANIM_deselect_keys_in_animation_editors | ( | bContext * | C | ) |
Deselects the keys displayed within the open animation editors. Depending on the display settings of those editors, the keys may not be from an action of the selected objects.
Definition at line 478 of file anim_deps.cc.
References blender::animrig::action_deselect_keys(), Set< Key, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::add(), ANIM_animdata_filter(), ANIM_animdata_freelist(), ANIM_animdata_get_context(), ANIMFILTER_DATA_VISIBLE, ANIMFILTER_FCURVESONLY, bScreen::areabase, BKE_area_find_region_type(), BKE_workspace_active_screen_get(), C, CTX_wm_area(), CTX_wm_area_set(), CTX_wm_manager(), CTX_wm_region(), CTX_wm_region_set(), CTX_wm_window(), CTX_wm_window_set(), bAnimContext::data, bAnimContext::datatype, ELEM, filter, LISTBASE_FOREACH, RGN_TYPE_WINDOW, SPACE_ACTION, and SPACE_GRAPH.
Referenced by actkeys_insertkey_exec(), graphkeys_insertkey_exec(), insert_key_button_exec(), insert_key_exec(), keyframe_insert_with_keyingset_exec(), blender::ed::object::object_clear_transform_generic_exec(), snap_sel_to_grid_exec(), snap_selected_to_location_rotation(), blender::ed::transform::special_aftertrans_update__object(), blender::ed::transform::special_aftertrans_update__pose(), and WM_gizmo_target_property_anim_autokey().
Tags the given ID block for refreshes (if applicable) due to Animation Editor editing.
Definition at line 103 of file anim_deps.cc.
References DEG_id_tag_update_ex(), ID_RECALC_ANIMATION, ID_RECALC_GEOMETRY, and ID_RECALC_TRANSFORM.
Referenced by convert_action_exec(), merge_actions_selection_exec(), blender::ed::transform::recalcData_actedit(), and blender::ed::transform::recalcData_nla().
| void ANIM_list_elem_update | ( | Main * | bmain, |
| Scene * | scene, | ||
| bAnimListElem * | ale ) |
Tags the given anim list element for refreshes (if applicable) due to Animation Editor editing.
Definition at line 52 of file anim_deps.cc.
References AnimData::action, ALE_FCURVE, ANIMTYPE_ANIMDATA, ANIMTYPE_NLAACTION, ANIMTYPE_NLACURVE, ANIMTYPE_NLATRACK, BKE_animdata_from_id(), bAnimListElem::datatype, DEG_id_tag_update(), ELEM, bAction::id, bAnimListElem::id, ID_RECALC_ANIMATION, ID_RECALC_GEOMETRY, ID_RECALC_TRANSFORM, bAnimListElem::key_data, ptr, RNA_id_pointer_create(), FCurve::rna_path, RNA_path_resolve_property(), RNA_property_update_main(), and bAnimListElem::type.
Referenced by ANIM_animdata_update(), blender::ed::transform::recalcData_actedit(), and blender::ed::transform::recalcData_graphedit().
| void ANIM_sync_animchannels_to_data | ( | const bContext * | C | ) |
Main call to be exported to animation editors.
Definition at line 261 of file anim_deps.cc.
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_ACTION_SLOT, ANIMTYPE_ANIMDATA, ANIMTYPE_DSARM, ANIMTYPE_DSCACHEFILE, ANIMTYPE_DSCAM, ANIMTYPE_DSCUR, ANIMTYPE_DSGPENCIL, ANIMTYPE_DSHAIR, ANIMTYPE_DSLAM, ANIMTYPE_DSLAT, ANIMTYPE_DSLIGHTPROBE, ANIMTYPE_DSLINESTYLE, ANIMTYPE_DSMAT, ANIMTYPE_DSMBALL, ANIMTYPE_DSMCLIP, ANIMTYPE_DSMESH, ANIMTYPE_DSNTREE, ANIMTYPE_DSPART, ANIMTYPE_DSPOINTCLOUD, ANIMTYPE_DSSKEY, ANIMTYPE_DSSPK, ANIMTYPE_DSTEX, ANIMTYPE_DSVOLUME, ANIMTYPE_DSWOR, ANIMTYPE_FCURVE, ANIMTYPE_FILLACT_LAYERED, ANIMTYPE_FILLACTD, ANIMTYPE_FILLDRIVERS, ANIMTYPE_GPLAYER, ANIMTYPE_GREASE_PENCIL_DATABLOCK, ANIMTYPE_GREASE_PENCIL_LAYER, ANIMTYPE_GREASE_PENCIL_LAYER_GROUP, ANIMTYPE_GROUP, ANIMTYPE_MASKDATABLOCK, ANIMTYPE_MASKLAYER, ANIMTYPE_NLAACTION, ANIMTYPE_NLACONTROLS, ANIMTYPE_NLACURVE, ANIMTYPE_NLATRACK, ANIMTYPE_NONE, ANIMTYPE_NUM_TYPES, ANIMTYPE_OBJECT, ANIMTYPE_PALETTE, ANIMTYPE_SCENE, ANIMTYPE_SHAPEKEY, ANIMTYPE_SPECIALDATA__UNUSED, ANIMTYPE_SUMMARY, C, bAnimContext::data, bAnimContext::datatype, filter, and LISTBASE_FOREACH.
Referenced by action_refresh(), and graph_refresh().
|
static |
Definition at line 216 of file anim_deps.cc.
References animchan_sync_fcurve_scene(), bAnimListElem::data, ELEM, GS, bAnimListElem::id, ID_SCE, ID::name, and FCurve::rna_path.
Referenced by ANIM_sync_animchannels_to_data().
|
static |
Definition at line 180 of file anim_deps.cc.
References BLI_assert, BLI_str_quoted_substr(), bAnimListElem::data, blender::seq::editing_get(), FCURVE_SELECTED, FCurve::flag, Strip::flag, blender::seq::get_strip_by_name(), GS, bAnimListElem::id, ID_SCE, ID::name, Strip::name, FCurve::rna_path, and SELECT.
Referenced by animchan_sync_fcurve().
|
static |
Definition at line 238 of file anim_deps.cc.
References bAnimListElem::data, bGPDlayer::flag, GP_LAYER_ACTIVE, and GP_LAYER_SELECT.
Referenced by ANIM_sync_animchannels_to_data().
|
static |
Definition at line 123 of file anim_deps.cc.
References bArmature::act_bone, action_group_colors_set_from_posebone(), AGRP_ACTIVE, AGRP_SELECTED, BKE_pose_channel_find_name(), bPoseChannel::bone, bAnimListElem::data, Object::data, ELEM, bActionGroup::flag, bPoseChannel::flag, GS, bAnimListElem::id, ID_OB, bActionGroup::name, ID::name, bAnimContext::obact, Object::pose, and POSE_SELECTED.
Referenced by ANIM_sync_animchannels_to_data().