|
Blender V5.0
|
#include <algorithm>#include <cstdio>#include <cstdlib>#include <cstring>#include "MEM_guardedalloc.h"#include "BLI_listbase.h"#include "BLI_math_base.h"#include "BLI_span.hh"#include "BLI_string_utf8.h"#include "BLI_utildefines.h"#include "DNA_anim_types.h"#include "DNA_gpencil_legacy_types.h"#include "DNA_key_types.h"#include "DNA_mask_types.h"#include "DNA_object_types.h"#include "DNA_scene_types.h"#include "RNA_access.hh"#include "RNA_define.hh"#include "RNA_path.hh"#include "BKE_action.hh"#include "BKE_anim_data.hh"#include "BKE_context.hh"#include "BKE_fcurve.hh"#include "BKE_global.hh"#include "BKE_gpencil_legacy.h"#include "BKE_grease_pencil.hh"#include "BKE_layer.hh"#include "BKE_lib_id.hh"#include "BKE_library.hh"#include "BKE_mask.h"#include "BKE_nla.hh"#include "BKE_report.hh"#include "BKE_scene.hh"#include "BKE_screen.hh"#include "BKE_workspace.hh"#include "ANIM_action.hh"#include "ANIM_action_legacy.hh"#include "DEG_depsgraph.hh"#include "DEG_depsgraph_build.hh"#include "UI_interface.hh"#include "UI_view2d.hh"#include "ED_armature.hh"#include "ED_keyframes_edit.hh"#include "ED_markers.hh"#include "ED_object.hh"#include "ED_screen.hh"#include "ED_select_utils.hh"#include "ANIM_animdata.hh"#include "ANIM_fcurve.hh"#include "WM_api.hh"#include "WM_message.hh"#include "WM_types.hh"#include "BLT_translation.hh"Go to the source code of this file.
Classes | |
| struct | tReorderChannelIsland |
Set/Toggle Channel Flags Operator Utilities | |
| static const EnumPropertyItem | prop_animchannel_setflag_types [] |
| static const EnumPropertyItem | prop_animchannel_settings_types [] |
| static void | setflag_anim_channels (bAnimContext *ac, eAnimChannel_Settings setting, eAnimChannels_SetFlag mode, bool onlysel, bool flush) |
| static wmOperatorStatus | animchannels_setflag_exec (bContext *C, wmOperator *op) |
| static void | ANIM_OT_channels_setting_enable (wmOperatorType *ot) |
| static void | ANIM_OT_channels_setting_disable (wmOperatorType *ot) |
| static void | ANIM_OT_channels_setting_toggle (wmOperatorType *ot) |
| static void | ANIM_OT_channels_editable_toggle (wmOperatorType *ot) |
| using AnimChanRearrangeFp = bool (*)(ListBase *list, tReorderChannelIsland *island) |
typedef for channel rearranging function
| list | List of tReorderChannelIsland's that channels belong to |
| island | Island to be moved |
Definition at line 1265 of file anim_channels_edit.cc.
| Enumerator | |
|---|---|
| REARRANGE_ANIMCHAN_TOP | |
| REARRANGE_ANIMCHAN_UP | |
| REARRANGE_ANIMCHAN_DOWN | |
| REARRANGE_ANIMCHAN_BOTTOM | |
Definition at line 1114 of file anim_channels_edit.cc.
| enum eReorderIslandFlag |
| Enumerator | |
|---|---|
| REORDER_ISLAND_SELECTED | |
| REORDER_ISLAND_UNTOUCHABLE | |
| REORDER_ISLAND_MOVED | |
| REORDER_ISLAND_HIDDEN | |
Definition at line 1141 of file anim_channels_edit.cc.
Definition at line 219 of file anim_channels_edit.cc.
References BLI_listbase_is_empty(), BLI_rctf_pad_y(), BLI_rctf_scale(), bounds(), C, ED_context_get_markers(), UI_MARKER_MARGIN_Y, UI_TIME_SCRUB_MARGIN_Y, V2D_SCROLL_HANDLE_HEIGHT, and ARegion::winy.
Referenced by ANIM_frame_channel_y_extents(), graphkeys_channel_view_pick_invoke(), graphkeys_view_selected_channels_exec(), and view_curve_in_graph_editor_exec().
| void ANIM_anim_channels_select_set | ( | bAnimContext * | ac, |
| eAnimChannels_SetFlag | sel ) |
Set selection state of all animation channels in the context.
Definition at line 824 of file anim_channels_edit.cc.
References ANIM_animdata_freelist(), anim_channels_for_selection(), and anim_channels_select_set().
Referenced by animchannels_box_select_exec(), animchannels_selectall_exec(), click_select_channel_action_slot(), click_select_channel_dummy(), click_select_channel_fcurve(), click_select_channel_gplayer(), click_select_channel_grease_pencil_layer(), click_select_channel_group(), click_select_channel_masklayer(), click_select_channel_object(), click_select_channel_shapekey(), drivers_editor_show_exec(), mouse_action_keys(), mouse_graph_keys(), mouse_nla_strips(), and mouse_nla_tracks().
| void ANIM_anim_channels_select_toggle | ( | bAnimContext * | ac | ) |
Toggle selection state of all animation channels in the context.
Definition at line 831 of file anim_channels_edit.cc.
References ANIM_animdata_freelist(), anim_channels_for_selection(), anim_channels_select_set(), and anim_channels_selection_flag_for_toggle().
Referenced by animchannels_selectall_exec().
|
static |
Definition at line 525 of file anim_channels_edit.cc.
References ANIM_animdata_filter(), ANIMFILTER_DATA_VISIBLE, ANIMFILTER_LIST_CHANNELS, bAnimContext::data, bAnimContext::datatype, and filter.
Referenced by ANIM_anim_channels_select_set(), ANIM_anim_channels_select_toggle(), animchannel_has_active_of_type(), and animchannel_select_range().
|
static |
Definition at line 679 of file anim_channels_edit.cc.
References ACHANNEL_SET_FLAG, ACHANNEL_SETFLAG_EXTEND_RANGE, Object::adt, Scene::adt, ADT_UI_ACTIVE, ADT_UI_SELECTED, AGRP_ACTIVE, AGRP_SELECTED, 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, GreasePencilLayer::base, FCURVE_ACTIVE, FCURVE_SELECTED, bActionGroup::flag, FCurve::flag, NlaTrack::flag, GP_LAYER_SELECT, GP_LAYER_TREE_NODE_SELECT, KEYBLOCK_SEL, LISTBASE_FOREACH, MASK_LAYERFLAG_SELECT, NLATRACK_ACTIVE, NLATRACK_SELECTED, Base::object, SCE_DS_SELECTED, SELECT, select_pchan_for_action_group(), and templated_selection_state_update().
Referenced by ANIM_anim_channels_select_set(), and ANIM_anim_channels_select_toggle().
|
static |
Definition at line 538 of file anim_channels_edit.cc.
References ACHANNEL_SETFLAG_ADD, ACHANNEL_SETFLAG_CLEAR, ADT_UI_SELECTED, AGRP_SELECTED, 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, FCURVE_SELECTED, GP_LAYER_SELECT, blender::animrig::Slot::is_selected(), KEYBLOCK_SEL, LISTBASE_FOREACH, MASK_LAYERFLAG_SELECT, NLATRACK_SELECTED, SCE_DS_SELECTED, and SELECT.
Referenced by ANIM_anim_channels_select_toggle().
|
static |
Definition at line 917 of file anim_channels_edit.cc.
References ANIM_channel_get_typeinfo(), ANIM_channel_setting_set(), bAnimChannelType::get_offset, and bAnimListElem::next.
Referenced by ANIM_flush_setting_anim_channels().
|
static |
Definition at line 846 of file anim_channels_edit.cc.
References ACHANNEL_SETFLAG_CLEAR, ACHANNEL_SETTING_VISIBLE, ANIM_channel_get_typeinfo(), ANIM_channel_setting_set(), bAnimChannelType::get_offset, and bAnimListElem::prev.
Referenced by ANIM_flush_setting_anim_channels().
| void ANIM_flush_setting_anim_channels | ( | bAnimContext * | ac, |
| ListBase * | anim_data, | ||
| bAnimListElem * | ale_setting, | ||
| eAnimChannel_Settings | setting, | ||
| eAnimChannels_SetFlag | mode ) |
Flush visibility (for Graph Editor) changes up/down hierarchy for changes in the given setting
Definition at line 954 of file anim_channels_edit.cc.
References ACHANNEL_SETTING_ALWAYS_VISIBLE, ANIM_channel_get_typeinfo(), anim_flush_channel_setting_down(), anim_flush_channel_setting_up(), bAnimListElem::data, ELEM, ListBase::first, bAnimChannelType::get_offset, bAnimListElem::id, LISTBASE_FOREACH, printf, and bAnimListElem::type.
Referenced by achannel_setting_flush_widget_cb(), graphview_curves_hide_exec(), graphview_curves_reveal_exec(), and setflag_anim_channels().
| void ANIM_frame_channel_y_extents | ( | bContext * | C, |
| bAnimContext * | ac ) |
Definition at line 1007 of file anim_channels_edit.cc.
References add_region_padding(), ANIM_animdata_filter(), ANIM_animdata_freelist(), ANIMFILTER_CURVE_VISIBLE, ANIMFILTER_DATA_VISIBLE, ANIMFILTER_FCURVESONLY, ANIMFILTER_LIST_VISIBLE, ANIMFILTER_NODUPLIS, bAnimContext::area, BKE_area_find_region_type(), BLI_rctf_is_valid(), BLI_rctf_union(), bounds(), C, View2D::cur, bAnimContext::data, bAnimContext::datatype, filter, RenderData::flag, FLT_MAX, get_channel_bounds(), LISTBASE_FOREACH, RenderData::pefra, RenderData::psfra, Scene::r, RGN_TYPE_WINDOW, bAnimContext::scene, SCER_PRV_RANGE, ARegion::v2d, rctf::xmax, rctf::xmin, rctf::ymax, and rctf::ymin.
| bool ANIM_is_active_channel | ( | bAnimListElem * | ale | ) |
Return whether channel is active.
Definition at line 416 of file anim_channels_edit.cc.
References bAnimListElem::adt, ADT_UI_ACTIVE, AGRP_ACTIVE, 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, bAnimListElem::data, FCURVE_ACTIVE, AnimData::flag, bActionGroup::flag, bGPDlayer::flag, FCurve::flag, GP_LAYER_ACTIVE, bAnimListElem::id, blender::animrig::Slot::is_active(), and bAnimListElem::type.
Referenced by animchannel_has_active_of_type(), and animchannel_select_range().
|
static |
Definition at line 5017 of file anim_channels_edit.cc.
References animchannels_channel_select_keys_invoke(), animedit_poll_channels_active(), OPTYPE_UNDO, ot, PROP_SKIP_SAVE, RNA_def_boolean(), and RNA_def_property_flag().
Referenced by ED_operatortypes_animchannels().
|
static |
Definition at line 5214 of file anim_channels_edit.cc.
References channel_view_poll(), graphkeys_channel_view_pick_invoke(), ot, and RNA_def_boolean().
Referenced by ED_operatortypes_animchannels().
|
static |
Definition at line 5352 of file anim_channels_edit.cc.
References BEZT_IPO_BEZ, channel_bake_key_options, channel_view_poll(), channels_bake_exec(), FLT_MAX, OPTYPE_REGISTER, OPTYPE_UNDO, ot, RNA_def_boolean(), RNA_def_enum(), RNA_def_float(), and RNA_def_int_array().
Referenced by ED_operatortypes_animchannels().
|
static |
Definition at line 3560 of file anim_channels_edit.cc.
References animchannels_clean_empty_exec(), animedit_poll_channels_nla_tweakmode_off(), OPTYPE_REGISTER, OPTYPE_UNDO, and ot.
Referenced by ED_operatortypes_animchannels().
|
static |
Definition at line 4886 of file anim_channels_edit.cc.
References animchannels_mouseclick_invoke(), animedit_poll_channels_active(), OPTYPE_UNDO, ot, PROP_SKIP_SAVE, RNA_def_boolean(), and RNA_def_property_flag().
Referenced by ED_operatortypes_animchannels().
|
static |
Definition at line 3439 of file anim_channels_edit.cc.
References animchannels_collapse_exec(), animedit_poll_channels_active(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, and RNA_def_boolean().
Referenced by ED_operatortypes_animchannels().
|
static |
Definition at line 3093 of file anim_channels_edit.cc.
References animchannels_delete_exec(), animedit_poll_channels_active(), OPTYPE_REGISTER, OPTYPE_UNDO, and ot.
Referenced by ED_operatortypes_animchannels().
|
static |
Definition at line 3334 of file anim_channels_edit.cc.
References ACHANNEL_SETFLAG_TOGGLE, ACHANNEL_SETTING_PROTECT, animchannels_setflag_exec(), animedit_poll_channels_active(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, prop_animchannel_setflag_types, prop_animchannel_settings_types, PROP_HIDDEN, RNA_def_enum(), and RNA_def_property_flag().
Referenced by ED_operatortypes_animchannels().
|
static |
Definition at line 3390 of file anim_channels_edit.cc.
References animchannels_expand_exec(), animedit_poll_channels_active(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, and RNA_def_boolean().
Referenced by ED_operatortypes_animchannels().
|
static |
Definition at line 3641 of file anim_channels_edit.cc.
References animchannels_enable_exec(), animchannels_enable_poll(), OPTYPE_REGISTER, OPTYPE_UNDO, and ot.
Referenced by ED_operatortypes_animchannels().
|
static |
Definition at line 2611 of file anim_channels_edit.cc.
References animchannels_group_exec(), animchannels_grouping_poll(), bActionGroup::name, OPTYPE_REGISTER, OPTYPE_UNDO, ot, RNA_def_string(), and WM_operator_props_popup().
Referenced by ED_operatortypes_animchannels().
|
static |
Definition at line 2414 of file anim_channels_edit.cc.
References animchannels_rearrange_exec(), animedit_poll_channels_nla_tweakmode_off(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, prop_animchannel_rearrange_types, REARRANGE_ANIMCHAN_DOWN, and RNA_def_enum().
Referenced by ED_operatortypes_animchannels().
|
static |
Definition at line 4138 of file anim_channels_edit.cc.
References animchannels_rename_invoke(), animedit_poll_channels_active(), and ot.
Referenced by ED_operatortypes_animchannels().
|
static |
Definition at line 3774 of file anim_channels_edit.cc.
References animchannels_selectall_exec(), animedit_poll_channels_nla_tweakmode_off(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, and WM_operator_properties_select_all().
Referenced by ED_operatortypes_animchannels().
|
static |
Definition at line 3958 of file anim_channels_edit.cc.
References animchannels_box_select_exec(), animedit_poll_channels_nla_tweakmode_off(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, WM_gesture_box_cancel(), WM_gesture_box_invoke(), WM_gesture_box_modal(), and WM_operator_properties_gesture_box_select().
Referenced by ED_operatortypes_animchannels().
|
static |
Definition at line 3718 of file anim_channels_edit.cc.
References animchannels_select_filter_invoke(), animchannels_select_filter_modal(), animchannels_select_filter_poll(), and ot.
Referenced by ED_operatortypes_animchannels().
|
static |
Definition at line 3282 of file anim_channels_edit.cc.
References ACHANNEL_SETFLAG_CLEAR, animchannels_setflag_exec(), animedit_poll_channels_active(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, prop_animchannel_setflag_types, prop_animchannel_settings_types, PROP_HIDDEN, RNA_def_enum(), RNA_def_property_flag(), and WM_menu_invoke().
Referenced by ED_operatortypes_animchannels().
|
static |
Definition at line 3256 of file anim_channels_edit.cc.
References ACHANNEL_SETFLAG_ADD, animchannels_setflag_exec(), animedit_poll_channels_active(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, prop_animchannel_setflag_types, prop_animchannel_settings_types, PROP_HIDDEN, RNA_def_enum(), RNA_def_property_flag(), and WM_menu_invoke().
Referenced by ED_operatortypes_animchannels().
|
static |
Definition at line 3308 of file anim_channels_edit.cc.
References ACHANNEL_SETFLAG_TOGGLE, animchannels_setflag_exec(), animedit_poll_channels_active(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, prop_animchannel_setflag_types, prop_animchannel_settings_types, PROP_HIDDEN, RNA_def_enum(), RNA_def_property_flag(), and WM_menu_invoke().
Referenced by ED_operatortypes_animchannels().
|
static |
Definition at line 2704 of file anim_channels_edit.cc.
References animchannels_grouping_poll(), animchannels_ungroup_exec(), OPTYPE_REGISTER, OPTYPE_UNDO, and ot.
Referenced by ED_operatortypes_animchannels().
|
static |
Definition at line 5128 of file anim_channels_edit.cc.
References channel_view_poll(), graphkeys_view_selected_channels_exec(), ot, and RNA_def_boolean().
Referenced by ED_operatortypes_animchannels().
|
static |
Definition at line 5559 of file anim_channels_edit.cc.
References OPTYPE_REGISTER, OPTYPE_UNDO, ot, separate_slots_exec(), and separate_slots_poll().
Referenced by ED_operatortypes_animchannels().
|
static |
Definition at line 5490 of file anim_channels_edit.cc.
References OPTYPE_REGISTER, OPTYPE_UNDO, ot, slot_channels_move_to_new_action_exec(), and slot_channels_move_to_new_action_poll().
Referenced by ED_operatortypes_animchannels().
|
static |
Definition at line 5885 of file anim_channels_edit.cc.
References ot, RNA_def_boolean(), and view_curve_in_graph_editor_exec().
Referenced by ED_operatortypes_animchannels().
| void ANIM_set_active_channel | ( | bAnimContext * | ac, |
| void * | data, | ||
| eAnimCont_Types | datatype, | ||
| eAnimFilter_Flags | filter, | ||
| void * | channel_data, | ||
| eAnim_ChannelType | channel_type ) |
Set the given animation-channel as the active one for the active context.
Definition at line 236 of file anim_channels_edit.cc.
References ACHANNEL_SET_FLAG, ACHANNEL_SETFLAG_CLEAR, bAnimListElem::adt, ADT_UI_ACTIVE, AGRP_ACTIVE, ANIM_animdata_filter(), ANIM_animdata_freelist(), 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, BLI_listbase_is_empty(), bAnimListElem::data, data, FCURVE_ACTIVE, filter, ListBase::first, AnimData::flag, bActionGroup::flag, bGPDlayer::flag, FCurve::flag, NlaTrack::flag, GP_LAYER_ACTIVE, bAnimListElem::next, NLATRACK_ACTIVE, and bAnimListElem::type.
Referenced by box_select_graphcurves(), click_select_channel_fcurve(), click_select_channel_gplayer(), click_select_channel_group(), drivers_editor_show_exec(), mouse_action_keys(), mouse_graph_keys(), mouse_nla_strips(), and mouse_nla_tracks().
|
static |
Definition at line 4182 of file anim_channels_edit.cc.
References ANIM_animdata_freelist(), anim_channels_for_selection(), ANIM_is_active_channel(), and LISTBASE_FOREACH.
Referenced by mouse_anim_channels().
|
static |
Definition at line 4202 of file anim_channels_edit.cc.
References ACHANNEL_SETFLAG_ADD, ACHANNEL_SETTING_SELECT, ANIM_animdata_freelist(), ANIM_channel_setting_set(), anim_channels_for_selection(), ANIM_is_active_channel(), ANIMTYPE_GROUP, bAnimListElem::data, LISTBASE_FOREACH, select_pchan_for_action_group(), and bAnimListElem::type.
Referenced by click_select_channel_action_slot(), click_select_channel_dummy(), click_select_channel_fcurve(), click_select_channel_gplayer(), click_select_channel_grease_pencil_layer(), click_select_channel_group(), and click_select_channel_object().
|
static |
Definition at line 3922 of file anim_channels_edit.cc.
References ACHANNEL_SETFLAG_ADD, ACHANNEL_SETFLAG_CLEAR, ANIM_anim_channels_select_set(), ANIM_animdata_get_context(), box_select_anim_channels(), C, NA_SELECTED, NC_ANIMATION, ND_ANIMCHAN, OPERATOR_CANCELLED, OPERATOR_FINISHED, wmOperator::ptr, RNA_boolean_get(), select, WM_event_add_notifier(), and WM_operator_properties_border_to_rcti().
Referenced by ANIM_OT_channels_select_box().
|
static |
Definition at line 4075 of file anim_channels_edit.cc.
References ANIM_UI_get_channel_name_width(), ANIM_UI_get_channel_step(), ANIM_UI_get_first_channel_top(), ANIMCONT_NLA, bAnimContext::datatype, NLATRACK_FIRST_TOP, NLATRACK_NAMEWIDTH, NLATRACK_STEP, bAnimContext::region, bAnimContext::sl, UI_view2d_listview_view_to_cell(), UI_view2d_region_to_view(), ARegion::v2d, x, and y.
Referenced by animchannels_channel_select_keys_invoke(), animchannels_rename_invoke(), and graphkeys_channel_view_pick_invoke().
|
static |
Definition at line 4992 of file anim_channels_edit.cc.
References ANIM_animdata_get_context(), animchannels_channel_get(), C, wmEvent::mval, NA_SELECTED, NC_ANIMATION, ND_KEYFRAME, OPERATOR_CANCELLED, OPERATOR_FINISHED, OPERATOR_PASS_THROUGH, wmOperator::ptr, RNA_boolean_get(), select_anim_channel_keys(), and WM_event_add_notifier().
Referenced by ANIM_OT_channel_select_keys().
|
static |
Definition at line 3475 of file anim_channels_edit.cc.
References AnimData::action, ANIM_animdata_filter(), ANIM_animdata_freelist(), ANIM_animdata_get_context(), ANIMFILTER_ANIMDATA, ANIMFILTER_DATA_VISIBLE, ANIMFILTER_LIST_VISIBLE, ANIMFILTER_NODUPLIS, BKE_animdata_free(), BLI_assert, C, bAnimContext::data, bAnimContext::datatype, AnimData::drivers, blender::animrig::fcurves_for_action_slot(), filter, ListBase::first, LISTBASE_FOREACH, NA_EDITED, NA_REMOVED, NC_ANIMATION, ND_ANIMCHAN, ND_NLA, AnimData::nla_tracks, OPERATOR_CANCELLED, OPERATOR_FINISHED, AnimData::slot_handle, and WM_event_add_notifier().
Referenced by ANIM_OT_channels_clean_empty().
|
static |
Definition at line 3415 of file anim_channels_edit.cc.
References ACHANNEL_SETFLAG_CLEAR, ACHANNEL_SETTING_EXPAND, ANIM_animdata_get_context(), C, NA_EDITED, NC_ANIMATION, ND_ANIMCHAN, OPERATOR_CANCELLED, OPERATOR_FINISHED, wmOperator::ptr, RNA_boolean_get(), setflag_anim_channels(), and WM_event_add_notifier().
Referenced by ANIM_OT_channels_collapse().
|
static |
Delete container-like channels.
This function may not delete everything in one run. Once an action slot has been deleted, it will refuse to delete any groups; because deleting a slot deletes its channelbags, which in turn contain the groups, any previously-selected group may be deleted along with the slot.
Definition at line 2754 of file anim_channels_edit.cc.
References AnimData::action, action_groups_remove_channel(), ANIM_animdata_filter(), ANIM_animdata_freelist(), ANIMFILTER_DATA_VISIBLE, ANIMFILTER_FOREDIT, ANIMFILTER_LIST_CHANNELS, ANIMFILTER_LIST_VISIBLE, ANIMFILTER_NODUPLIS, ANIMFILTER_SEL, 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, BKE_fcurve_free(), BLI_assert, BLI_assert_msg, BLI_assert_unreachable, BLI_freelinkN(), C, bActionGroup::channelbag, bActionGroup::channels, CTX_data_main(), bAnimContext::data, bAnimContext::datatype, DEG_id_tag_update_ex(), blender::animrig::Channelbag::fcurve(), bActionGroup::fcurve_range_length, bActionGroup::fcurve_range_start, blender::animrig::Channelbag::fcurve_remove(), filter, ListBase::first, bAction::groups, FCurve::grp, GS, i, bAction::id, ID_AC, ID_RECALC_ANIMATION, blender::animrig::Action::is_action_layered(), LISTBASE_FOREACH, FCurve::next, blender::animrig::Action::slot_remove(), tag_update_animation_element(), and wrap().
Referenced by animchannels_delete_exec().
|
static |
Definition at line 2957 of file anim_channels_edit.cc.
References ANIM_animdata_filter(), ANIM_animdata_freelist(), ANIM_animdata_get_context(), ANIM_animdata_update(), ANIM_UPDATE_DEPS, animchannels_delete_containers(), ANIMCONT_DRIVERS, ANIMCONT_SHAPEKEY, ANIMFILTER_DATA_VISIBLE, ANIMFILTER_FOREDIT, ANIMFILTER_LIST_VISIBLE, ANIMFILTER_NODUPLIS, ANIMFILTER_SEL, 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, BKE_gpencil_free_data(), BKE_gpencil_layer_delete(), BKE_id_free_us(), BKE_mask_layer_remove(), C, CTX_data_main(), CTX_data_scene(), bAnimContext::data, bAnimContext::datatype, DEG_id_tag_update(), DEG_relations_tag_update(), ED_anim_ale_fcurve_delete(), filter, ListBase::first, bGPdata::flag, GP_DATA_ANNOTATIONS, Scene::gpd, GreasePencil::id, ID_RECALC_GEOMETRY, bGPdata::layers, LISTBASE_FOREACH, mask(), NA_EDITED, NA_REMOVED, NC_ANIMATION, ND_ANIMCHAN, ND_KEYFRAME, OPERATOR_CANCELLED, OPERATOR_FINISHED, and WM_event_add_notifier().
Referenced by ANIM_OT_channels_delete().
|
static |
Definition at line 3599 of file anim_channels_edit.cc.
References ANIM_animdata_filter(), ANIM_animdata_freelist(), ANIM_animdata_get_context(), ANIM_animdata_update(), ANIM_UPDATE_DEPS, ANIMFILTER_DATA_VISIBLE, ANIMFILTER_FCURVESONLY, ANIMFILTER_NODUPLIS, C, bAnimContext::data, bAnimContext::datatype, FCurve::driver, DRIVER_FLAG_INVALID, FCURVE_DISABLED, filter, ChannelDriver::flag, FCurve::flag, LISTBASE_FOREACH, NA_EDITED, NC_ANIMATION, ND_ANIMCHAN, OPERATOR_CANCELLED, OPERATOR_FINISHED, and WM_event_add_notifier().
Referenced by ANIM_OT_channels_fcurves_enable().
|
static |
Definition at line 3581 of file anim_channels_edit.cc.
References C, CTX_wm_area(), CTX_wm_region(), ELEM, SPACE_ACTION, SPACE_GRAPH, and ScrArea::spacetype.
Referenced by ANIM_OT_channels_fcurves_enable().
|
static |
Definition at line 3366 of file anim_channels_edit.cc.
References ACHANNEL_SETFLAG_ADD, ACHANNEL_SETTING_EXPAND, ANIM_animdata_get_context(), C, NA_EDITED, NC_ANIMATION, ND_ANIMCHAN, OPERATOR_CANCELLED, OPERATOR_FINISHED, wmOperator::ptr, RNA_boolean_get(), setflag_anim_channels(), and WM_event_add_notifier().
Referenced by ANIM_OT_channels_expand().
|
static |
Definition at line 2489 of file anim_channels_edit.cc.
References AnimData::action, action_groups_add_channel(), action_groups_add_new(), action_groups_remove_channel(), blender::animrig::legacy::action_treat_as_legacy(), bAnimListElem::adt, ANIM_animdata_filter(), ANIM_animdata_freelist(), ANIMCONT_CHANNEL, ANIMFILTER_DATA_VISIBLE, ANIMFILTER_FCURVESONLY, ANIMFILTER_LIST_VISIBLE, ANIMFILTER_SEL, BLI_assert, BLI_freelinkN(), BLI_listbase_is_empty(), blender::animrig::Channelbag::channel_group_create(), blender::animrig::channelbag_for_action_slot(), bActionGroup::channels, blender::animrig::Channelbag::fcurve_assign_to_channel_group(), filter, ListBase::first, bAction::groups, FCurve::grp, LISTBASE_FOREACH, and name.
Referenced by animchannels_group_exec().
|
static |
Definition at line 2573 of file anim_channels_edit.cc.
References ANIM_animdata_filter(), ANIM_animdata_freelist(), ANIM_animdata_get_context(), animchannels_group_channels(), ANIMFILTER_ANIMDATA, ANIMFILTER_DATA_VISIBLE, ANIMFILTER_FCURVESONLY, ANIMFILTER_LIST_VISIBLE, ANIMFILTER_NODUPLIS, C, bAnimContext::data, bAnimContext::datatype, filter, LISTBASE_FOREACH, MAX_NAME, NA_EDITED, name, NC_ANIMATION, ND_ANIMCHAN, OPERATOR_CANCELLED, OPERATOR_FINISHED, wmOperator::ptr, RNA_string_get(), and WM_event_add_notifier().
Referenced by ANIM_OT_channels_group().
|
static |
Definition at line 2443 of file anim_channels_edit.cc.
References C, CTX_wm_area(), CTX_wm_region(), CTX_wm_space_data(), ELEM, SpaceAction::mode, SpaceGraph::mode, SACTCONT_ACTION, SACTCONT_DOPESHEET, SIPO_MODE_ANIMATION, SPACE_ACTION, SPACE_GRAPH, and ScrArea::spacetype.
Referenced by ANIM_OT_channels_group(), and ANIM_OT_channels_ungroup().
|
static |
Handle picking logic.
Definition at line 4828 of file anim_channels_edit.cc.
References ANIM_animdata_get_context(), ANIM_UI_get_channel_name_width(), ANIM_UI_get_channel_step(), ANIM_UI_get_first_channel_top(), C, mouse_anim_channels(), wmEvent::mval, NC_ANIMATION, OPERATOR_CANCELLED, OPERATOR_FINISHED, OPERATOR_PASS_THROUGH, wmOperator::ptr, bAnimContext::region, RNA_boolean_get(), SELECT_EXTEND_RANGE, SELECT_INVERT, SELECT_REPLACE, UI_view2d_listview_view_to_cell(), UI_view2d_region_to_view(), ARegion::v2d, WM_event_add_notifier(), WM_operator_flag_only_pass_through_on_press(), x, and y.
Referenced by ANIM_OT_channels_click().
|
static |
Definition at line 2311 of file anim_channels_edit.cc.
References AnimData::action, blender::Set< Key, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::add(), ANIM_animdata_filter(), ANIM_animdata_freelist(), ANIM_animdata_get_context(), ANIMCONT_ACTION, ANIMCONT_DOPESHEET, ANIMCONT_DRIVERS, ANIMCONT_GPENCIL, ANIMCONT_MASK, ANIMCONT_NLA, ANIMCONT_SHAPEKEY, ANIMCONT_TIMELINE, ANIMFILTER_ANIMDATA, ANIMFILTER_DATA_VISIBLE, ANIMFILTER_FCURVESONLY, ANIMFILTER_LIST_VISIBLE, C, bAnimContext::data, bAnimContext::datatype, DEG_id_tag_update(), ELEM, filter, ListBase::first, G, G_DEBUG, ID_RECALC_ANIMATION, LISTBASE_FOREACH, NA_EDITED, NC_ANIMATION, ND_ANIMCHAN, ND_NLA_ORDER, AnimData::nla_tracks, OPERATOR_CANCELLED, OPERATOR_FINISHED, printf, wmOperator::ptr, rearrange_action_channels(), rearrange_driver_channels(), rearrange_gpencil_channels(), rearrange_grease_pencil_channels(), rearrange_nla_control_channels(), rearrange_nla_tracks(), RNA_enum_get(), and WM_event_add_notifier().
Referenced by ANIM_OT_channels_move().
|
static |
Definition at line 4114 of file anim_channels_edit.cc.
References ANIM_animdata_get_context(), animchannels_channel_get(), C, wmEvent::mval, NA_RENAME, NC_ANIMATION, ND_ANIMCHAN, OPERATOR_CANCELLED, OPERATOR_FINISHED, OPERATOR_PASS_THROUGH, rename_anim_channels(), and WM_event_add_notifier().
Referenced by ANIM_OT_channels_rename().
|
static |
Definition at line 3675 of file anim_channels_edit.cc.
References BKE_area_find_region_type(), C, CTX_wm_area(), CTX_wm_region(), CTX_wm_region_set(), ED_region_tag_redraw(), ED_region_toggle_hidden(), ARegion::flag, OPERATOR_RUNNING_MODAL, RGN_FLAG_HIDDEN, RGN_TYPE_CHANNELS, and WM_event_add_modal_handler().
Referenced by ANIM_OT_channels_select_filter().
|
static |
Definition at line 3700 of file anim_channels_edit.cc.
References bAnimContext::ads, ANIM_animdata_get_context(), C, CTX_wm_region(), NA_EDITED, NC_ANIMATION, ND_ANIMCHAN, OPERATOR_CANCELLED, OPERATOR_FINISHED, UI_textbutton_activate_rna(), and WM_event_add_notifier().
Referenced by ANIM_OT_channels_select_filter().
|
static |
Definition at line 3663 of file anim_channels_edit.cc.
References C, CTX_wm_area(), ELEM, SPACE_ACTION, SPACE_GRAPH, SPACE_NLA, and ScrArea::spacetype.
Referenced by ANIM_OT_channels_select_filter().
|
static |
Definition at line 3739 of file anim_channels_edit.cc.
References ACHANNEL_SETFLAG_ADD, ACHANNEL_SETFLAG_CLEAR, ACHANNEL_SETFLAG_INVERT, ANIM_anim_channels_select_set(), ANIM_anim_channels_select_toggle(), ANIM_animdata_get_context(), BLI_assert, C, NA_SELECTED, NC_ANIMATION, ND_ANIMCHAN, OPERATOR_CANCELLED, OPERATOR_FINISHED, wmOperator::ptr, RNA_enum_get(), SEL_DESELECT, SEL_INVERT, SEL_SELECT, SEL_TOGGLE, and WM_event_add_notifier().
Referenced by ANIM_OT_channels_select_all().
|
static |
Definition at line 3223 of file anim_channels_edit.cc.
References ACHANNEL_SETTING_EXPAND, ANIM_animdata_get_context(), C, NA_EDITED, NC_ANIMATION, ND_ANIMCHAN, OPERATOR_CANCELLED, OPERATOR_FINISHED, wmOperator::ptr, RNA_enum_get(), setflag_anim_channels(), and WM_event_add_notifier().
Referenced by ANIM_OT_channels_editable_toggle(), ANIM_OT_channels_setting_disable(), ANIM_OT_channels_setting_enable(), and ANIM_OT_channels_setting_toggle().
|
static |
Definition at line 2643 of file anim_channels_edit.cc.
References action_groups_remove_channel(), blender::animrig::legacy::action_treat_as_legacy(), ANIM_animdata_filter(), ANIM_animdata_freelist(), ANIM_animdata_get_context(), ANIMFILTER_DATA_VISIBLE, ANIMFILTER_FCURVESONLY, ANIMFILTER_LIST_VISIBLE, ANIMFILTER_NODUPLIS, ANIMFILTER_SEL, BLI_addtail(), BLI_freelinkN(), BLI_listbase_is_empty(), C, bActionGroup::channelbag, bActionGroup::channels, bAction::curves, bAnimContext::data, bAnimContext::datatype, filter, bAction::groups, FCurve::grp, LISTBASE_FOREACH, NA_EDITED, NC_ANIMATION, ND_ANIMCHAN, OPERATOR_CANCELLED, OPERATOR_FINISHED, and WM_event_add_notifier().
Referenced by ANIM_OT_channels_ungroup().
|
static |
Definition at line 1063 of file anim_channels_edit.cc.
References C, CTX_wm_area(), CTX_wm_region(), ELEM, SPACE_ACTION, SPACE_GRAPH, SPACE_NLA, and ScrArea::spacetype.
Referenced by ANIM_OT_channel_select_keys(), ANIM_OT_channels_click(), ANIM_OT_channels_collapse(), ANIM_OT_channels_delete(), ANIM_OT_channels_editable_toggle(), ANIM_OT_channels_expand(), ANIM_OT_channels_rename(), ANIM_OT_channels_setting_disable(), ANIM_OT_channels_setting_enable(), and ANIM_OT_channels_setting_toggle().
|
static |
Definition at line 1081 of file anim_channels_edit.cc.
References C, CTX_data_scene(), CTX_wm_area(), CTX_wm_region(), ELEM, Scene::flag, SCE_NLA_EDIT_ON, SPACE_ACTION, SPACE_GRAPH, SPACE_NLA, and ScrArea::spacetype.
Referenced by ANIM_OT_channels_clean_empty(), ANIM_OT_channels_move(), ANIM_OT_channels_select_all(), and ANIM_OT_channels_select_box().
|
static |
Definition at line 3798 of file anim_channels_edit.cc.
References ACHANNEL_SET_FLAG, ACHANNEL_SETTING_SELECT, AGRP_ACTIVE, ANIM_animdata_filter(), ANIM_animdata_freelist(), ANIM_channel_setting_set(), ANIM_UI_get_channel_step(), ANIM_UI_get_first_channel_top(), ANIMCONT_NLA, ANIMFILTER_DATA_VISIBLE, ANIMFILTER_LIST_CHANNELS, ANIMFILTER_LIST_VISIBLE, 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, bAnimContext::data, bAnimContext::datatype, filter, bActionGroup::flag, LISTBASE_FOREACH, NLATRACK_FIRST_TOP, NLATRACK_SELECTED, NLATRACK_STEP, bAnimContext::region, select_pchan_for_action_group(), bAnimContext::sl, templated_selection_state_update(), UI_view2d_region_to_view(), ARegion::v2d, rctf::xmax, rcti::xmax, rctf::xmin, rcti::xmin, rctf::ymax, rcti::ymax, rctf::ymin, and rcti::ymin.
Referenced by animchannels_box_select_exec().
|
static |
Definition at line 5682 of file anim_channels_edit.cc.
References BKE_animdata_from_id(), BKE_nla_tweakedit_remap(), BLI_rctf_is_valid(), BLI_rctf_union(), bounds(), FCURVE_SELECTED, FCURVE_VISIBLE, get_normalized_fcurve_bounds(), get_view_range(), NLATIME_CONVERT_UNMAP, SPACE_GRAPH, and SpaceLink::spacetype.
Referenced by calculate_selection_fcurve_bounds(), and view_curve_in_graph_editor_exec().
|
static |
Definition at line 5726 of file anim_channels_edit.cc.
References BKE_animdata_id_is_animated(), BLI_rctf_is_valid(), BLI_rctf_union(), bounds(), blender::StringRefNull::c_str(), calculate_fcurve_bounds_and_unhide(), count_fcurves_hidden_by_filter(), get_fcurves_of_property(), blender::StringRefBase::is_empty(), RNA_path_resolve_property(), bAnimContext::scene, and bAnimContext::sl.
Referenced by view_curve_in_graph_editor_exec().
|
static |
Definition at line 5123 of file anim_channels_edit.cc.
References C, ED_operator_action_active(), and ED_operator_graphedit_active().
Referenced by ANIM_OT_channel_view_pick(), ANIM_OT_channels_bake(), and ANIM_OT_channels_view_selected().
|
static |
Definition at line 5247 of file anim_channels_edit.cc.
References blender::animrig::ALL, ANIM_animdata_filter(), ANIM_animdata_freelist(), ANIM_animdata_get_context(), ANIM_nla_tweakedit_remap(), ANIMFILTER_DATA_VISIBLE, ANIMFILTER_FCURVESONLY, ANIMFILTER_LIST_VISIBLE, ANIMFILTER_NODUPLIS, ANIMFILTER_SEL, blender::Vector< T, InlineBufferCapacity, Allocator >::append(), blender::animrig::bake_fcurve(), FCurve::bezt, BKE_fcurve_bezt_binarysearch_index(), BKE_report(), C, CTX_data_scene(), bAnimContext::data, bAnimContext::datatype, RenderData::efra, filter, RenderData::flag, FMODIFIER_FLAG_MUTED, free_fmodifiers(), i, blender::animrig::IN_RANGE, BezTriple::ipo, LISTBASE_FOREACH, max_ii(), min_ii(), FCurve::modifiers, NA_SELECTED, NC_ANIMATION, ND_KEYFRAME, NLATIME_CONVERT_UNMAP, OPERATOR_CANCELLED, OPERATOR_FINISHED, RenderData::pefra, RenderData::psfra, wmOperator::ptr, Scene::r, wmOperator::reports, RNA_boolean_get(), RNA_enum_get(), RNA_float_get(), RNA_int_get_array(), RNA_int_set_array(), RPT_WARNING, SCER_PRV_RANGE, RenderData::sfra, step, FCurve::totvert, BezTriple::vec, and WM_event_add_notifier().
Referenced by ANIM_OT_channels_bake().
|
static |
Definition at line 4475 of file anim_channels_edit.cc.
References ACHANNEL_SETFLAG_CLEAR, ACHANNEL_SETFLAG_EXTEND_RANGE, ANIM_anim_channels_select_set(), animchannel_select_range(), ATTR_FALLTHROUGH, BLI_assert_msg, BLI_assert_unreachable, bAnimListElem::data, bAnimListElem::fcurve_owner_id, GS, ActionSlot::handle, ID_AC, blender::animrig::Slot::is_selected(), NA_SELECTED, ID::name, ND_ANIMCHAN, SELECT_ADD, SELECT_EXTEND_RANGE, SELECT_INVERT, SELECT_REPLACE, SELECT_SUBTRACT, blender::animrig::Slot::set_selected(), and blender::animrig::Action::slot_active_set().
Referenced by mouse_anim_channels().
|
static |
Definition at line 4306 of file anim_channels_edit.cc.
References ACHANNEL_SETFLAG_CLEAR, ACHANNEL_SETFLAG_EXTEND_RANGE, bAnimListElem::adt, ADT_UI_ACTIVE, ADT_UI_SELECTED, ANIM_anim_channels_select_set(), animchannel_select_range(), AnimData::flag, NA_SELECTED, ND_ANIMCHAN, SELECT_EXTEND_RANGE, and SELECT_INVERT.
Referenced by mouse_anim_channels().
|
static |
Definition at line 4440 of file anim_channels_edit.cc.
References ACHANNEL_SETFLAG_CLEAR, ACHANNEL_SETFLAG_EXTEND_RANGE, ANIM_anim_channels_select_set(), ANIM_set_active_channel(), animchannel_select_range(), bAnimContext::data, bAnimListElem::data, bAnimContext::datatype, FCURVE_SELECTED, filter, FCurve::flag, NA_SELECTED, ND_ANIMCHAN, SELECT_EXTEND_RANGE, SELECT_INVERT, and bAnimListElem::type.
Referenced by mouse_anim_channels().
|
static |
Definition at line 4551 of file anim_channels_edit.cc.
References ACHANNEL_SETFLAG_CLEAR, ACHANNEL_SETFLAG_EXTEND_RANGE, ANIM_anim_channels_select_set(), ANIM_set_active_channel(), animchannel_select_range(), ANIMTYPE_GPLAYER, BKE_gpencil_layer_active_set(), C, bAnimContext::data, bAnimListElem::data, bAnimContext::datatype, DEG_id_tag_update(), filter, bGPDlayer::flag, GP_LAYER_SELECT, bAnimListElem::id, bGPdata::id, ID_RECALC_GEOMETRY, NA_EDITED, NC_GPENCIL, ND_ANIMCHAN, ND_DATA, ND_SPACE_PROPERTIES, SELECT_EXTEND_RANGE, SELECT_INVERT, and WM_event_add_notifier().
Referenced by mouse_anim_channels().
|
static |
Definition at line 4594 of file anim_channels_edit.cc.
References bAnimListElem::data, GreasePencil::flag, GREASE_PENCIL_ANIM_CHANNEL_EXPANDED, NA_EDITED, and ND_ANIMCHAN.
Referenced by mouse_anim_channels().
|
static |
Definition at line 4622 of file anim_channels_edit.cc.
References ACHANNEL_SETFLAG_CLEAR, ACHANNEL_SETFLAG_EXTEND_RANGE, active, ANIM_anim_channels_select_set(), animchannel_select_range(), C, CTX_wm_message_bus(), bAnimListElem::data, DEG_id_tag_update(), bAnimListElem::id, GreasePencil::id, ID_RECALC_GEOMETRY, NA_EDITED, NC_GPENCIL, ND_ANIMCHAN, ND_DATA, SELECT_EXTEND_RANGE, SELECT_INVERT, WM_event_add_notifier(), and WM_msg_publish_rna_prop.
Referenced by mouse_anim_channels().
|
static |
Definition at line 4607 of file anim_channels_edit.cc.
References C, bAnimListElem::data, blender::bke::greasepencil::LayerGroup::is_expanded(), NA_EDITED, NC_GPENCIL, NC_SPACE, ND_ANIMCHAN, ND_DATA, ND_SPACE_PROPERTIES, blender::bke::greasepencil::LayerGroup::set_expanded(), WM_event_add_notifier(), and wrap().
Referenced by mouse_anim_channels().
|
static |
Definition at line 4337 of file anim_channels_edit.cc.
References ACHANNEL_SETFLAG_CLEAR, ACHANNEL_SETFLAG_EXTEND_RANGE, ADS_FILTER_ONLYSEL, AGRP_SELECTED, ANIM_anim_channels_select_set(), ANIM_set_active_channel(), animchannel_select_range(), ANIMTYPE_GROUP, BKE_pose_channel_find_name(), bActionGroup::channels, bAnimContext::data, bAnimListElem::data, bAnimContext::datatype, ED_pose_bone_select(), ED_pose_deselect_all(), FCURVE_SELECTED, filter, bAnimContext::filters, ListBase::first, bActionGroup::flag, bAnimContext::flag, FCurve::flag, FCurve::grp, GS, bAnimListElem::id, ID_OB, NA_SELECTED, bActionGroup::name, ID::name, ND_ANIMCHAN, FCurve::next, OB_ARMATURE, Object::pose, SEL_DESELECT, SELECT_EXTEND_RANGE, SELECT_INVERT, and Object::type.
Referenced by mouse_anim_channels().
|
static |
Definition at line 4656 of file anim_channels_edit.cc.
References bAnimListElem::data, mask(), MASK_ANIMF_EXPAND, NA_EDITED, and ND_ANIMCHAN.
Referenced by mouse_anim_channels().
|
static |
Definition at line 4669 of file anim_channels_edit.cc.
References ACHANNEL_SETFLAG_CLEAR, ANIM_anim_channels_select_set(), bAnimListElem::data, MaskLayer::flag, MASK_LAYERFLAG_SELECT, NA_EDITED, ND_ANIMCHAN, and SELECT_INVERT.
Referenced by mouse_anim_channels().
|
static |
Definition at line 4537 of file anim_channels_edit.cc.
References ADT_NLA_SKEYS_COLLAPSED, bAnimListElem::data, AnimData::flag, NA_EDITED, and ND_ANIMCHAN.
Referenced by mouse_anim_channels().
|
static |
Definition at line 4245 of file anim_channels_edit.cc.
References ACHANNEL_SETFLAG_CLEAR, ACHANNEL_SETFLAG_EXTEND_RANGE, Object::adt, ADT_UI_ACTIVE, ADT_UI_SELECTED, ANIM_anim_channels_select_set(), animchannel_select_range(), b, blender::ed::object::BA_DESELECT, blender::ed::object::BA_INVERT, blender::ed::object::BA_SELECT, blender::ed::object::base_activate_with_mode_exit_if_needed(), blender::ed::object::base_select(), BASE_SELECTABLE, BKE_view_layer_object_bases_get(), BKE_view_layer_synced_ensure(), C, bAnimListElem::data, AnimData::flag, Base::flag, LISTBASE_FOREACH, NA_SELECTED, ND_ANIMCHAN, Base::object, bAnimContext::scene, SELECT_EXTEND_RANGE, SELECT_INVERT, and bAnimContext::view_layer.
Referenced by mouse_anim_channels().
|
static |
Definition at line 4158 of file anim_channels_edit.cc.
References Scene::adt, ADT_UI_SELECTED, bAnimListElem::data, AnimData::flag, Scene::flag, NA_SELECTED, ND_ANIMCHAN, SCE_DS_SELECTED, and SELECT_INVERT.
Referenced by mouse_anim_channels().
|
static |
Definition at line 4513 of file anim_channels_edit.cc.
References ACHANNEL_SETFLAG_CLEAR, ANIM_anim_channels_select_set(), BLI_findindex(), Key::block, bAnimListElem::data, KeyBlock::flag, bAnimListElem::id, KEYBLOCK_SEL, NA_SELECTED, ND_ANIMCHAN, bAnimContext::obact, SELECT_INVERT, and Object::shapenr.
Referenced by mouse_anim_channels().
|
static |
Find a Graph Editor area and set the context arguments accordingly.
Definition at line 5577 of file anim_channels_edit.cc.
References bScreen::areabase, BKE_area_find_region_type(), C, CTX_wm_manager(), LISTBASE_FOREACH, RGN_TYPE_WINDOW, SPACE_GRAPH, and WM_window_get_active_screen().
Referenced by view_curve_in_graph_editor_exec().
|
static |
Definition at line 5622 of file anim_channels_edit.cc.
References blender::Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::add(), SpaceGraph::ads, ANIM_animdata_filter(), ANIM_animdata_freelist(), blender::Map< Key, Value, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::contains(), bAnimContext::data, bAnimContext::datatype, filter, bDopeSheet::filterflag, LISTBASE_FOREACH, blender::Span< T >::size(), bAnimContext::sl, SPACE_GRAPH, and SpaceLink::spacetype.
Referenced by calculate_selection_fcurve_bounds(), and view_curve_in_graph_editor_exec().
|
static |
Definition at line 5603 of file anim_channels_edit.cc.
References ANIM_animdata_filter(), ANIM_animdata_freelist(), ANIMFILTER_CURVE_VISIBLE, ANIMFILTER_DATA_VISIBLE, ANIMFILTER_FCURVESONLY, ANIMFILTER_NODUPLIS, bAnimContext::data, bAnimContext::datatype, FCURVE_ACTIVE, FCURVE_SELECTED, FCURVE_VISIBLE, filter, FCurve::flag, and LISTBASE_FOREACH.
Referenced by view_curve_in_graph_editor_exec().
| void ED_anim_ale_fcurve_delete | ( | bAnimContext & | ac, |
| bAnimListElem & | ale ) |
Delete an F-Curve from its owner.
This can delete an F-Curve from an Action (both directly assigned and via an NLA strip), Drivers, and NLA control curves.
Definition at line 2908 of file anim_channels_edit.cc.
References AnimData::action, blender::animrig::action_fcurve_remove(), bAnimListElem::adt, ANIMCONT_DRIVERS, blender::animrig::animdata_fcurve_delete(), ANIMTYPE_FCURVE, ANIMTYPE_NLACURVE, BKE_nlastrip_controlcurve_remove(), BLI_assert, BLI_assert_msg, BLI_assert_unreachable, bAnimListElem::data, bAnimContext::datatype, FCurve::driver, ELEM, bAnimListElem::fcurve_owner_id, GS, ID_AC, blender::animrig::Action::is_action_legacy(), ID::name, bAnimListElem::owner, printf, FCurve::rna_path, tag_update_animation_element(), bAnimListElem::type, UNUSED_VARS_NDEBUG, and wrap().
Referenced by animchannels_delete_exec(), and delete_action_keys().
| void ED_keymap_animchannels | ( | wmKeyConfig * | keyconf | ) |
Definition at line 5956 of file anim_channels_edit.cc.
References RGN_TYPE_WINDOW, SPACE_EMPTY, and WM_keymap_ensure().
Referenced by ED_spacetypes_keymap().
| void ED_operatortypes_animchannels | ( | ) |
Definition at line 5914 of file anim_channels_edit.cc.
References ANIM_OT_channel_select_keys(), ANIM_OT_channel_view_pick(), ANIM_OT_channels_bake(), ANIM_OT_channels_clean_empty(), ANIM_OT_channels_click(), ANIM_OT_channels_collapse(), ANIM_OT_channels_delete(), ANIM_OT_channels_editable_toggle(), ANIM_OT_channels_expand(), ANIM_OT_channels_fcurves_enable(), ANIM_OT_channels_group(), ANIM_OT_channels_move(), ANIM_OT_channels_rename(), ANIM_OT_channels_select_all(), ANIM_OT_channels_select_box(), ANIM_OT_channels_select_filter(), ANIM_OT_channels_setting_disable(), ANIM_OT_channels_setting_enable(), ANIM_OT_channels_setting_toggle(), ANIM_OT_channels_ungroup(), ANIM_OT_channels_view_selected(), ANIM_OT_separate_slots(), ANIM_OT_slot_channels_move_to_new_action(), ANIM_OT_view_curve_in_graph_editor(), and WM_operatortype_append().
Referenced by ED_spacetypes_init().
|
static |
Definition at line 172 of file anim_channels_edit.cc.
References ALE_ACT, ALE_ACTION_LAYERED, ALE_ACTION_SLOT, ALE_ALL, ALE_FCURVE, ALE_GPFRAME, ALE_GREASE_PENCIL_CEL, ALE_GREASE_PENCIL_DATA, ALE_GREASE_PENCIL_GROUP, ALE_GROUP, ALE_MASKLAY, ALE_NLASTRIP, ALE_NONE, ALE_OB, ALE_SCE, ANIM_nla_tweakedit_remap(), bAnimListElem::data, bAnimListElem::datatype, get_gpencil_bounds(), get_grease_pencil_layer_bounds(), get_normalized_fcurve_bounds(), bAnimListElem::id, bAnimListElem::key_data, NLATIME_CONVERT_MAP, bAnimContext::scene, bAnimContext::sl, rctf::xmax, and rctf::xmin.
Referenced by ANIM_frame_channel_y_extents(), graphkeys_channel_view_pick_invoke(), and graphkeys_view_selected_channels_exec().
|
static |
Definition at line 5649 of file anim_channels_edit.cc.
References blender::Vector< T, InlineBufferCapacity, Allocator >::append(), BKE_animadata_fcurve_find_by_rna_path(), BKE_animdata_from_id(), i, length(), ptr, RNA_path_from_ID_to_property(), RNA_property_array_check(), and RNA_property_array_length().
Referenced by calculate_selection_fcurve_bounds(), and view_curve_in_graph_editor_exec().
Definition at line 113 of file anim_channels_edit.cc.
References bGPDlayer::frames, LISTBASE_FOREACH, rctf::xmax, rctf::xmin, rctf::ymax, and rctf::ymin.
Referenced by get_channel_bounds().
|
static |
Definition at line 139 of file anim_channels_edit.cc.
References Layer::sorted_keys(), rctf::xmax, rctf::xmin, rctf::ymax, and rctf::ymin.
Referenced by get_channel_bounds().
|
static |
Definition at line 79 of file anim_channels_edit.cc.
References ANIM_get_normalization_flags(), ANIM_unit_mapping_get_factor(), BKE_fcurve_calc_bounds(), BLI_rctf_size_y(), rctf::ymax, and rctf::ymin.
Referenced by calculate_fcurve_bounds_and_unhide(), and get_channel_bounds().
Definition at line 5042 of file anim_channels_edit.cc.
References RenderData::efra, RenderData::flag, RenderData::pefra, RenderData::psfra, Scene::r, SCER_PRV_RANGE, and RenderData::sfra.
Referenced by calculate_fcurve_bounds_and_unhide(), graphkeys_channel_view_pick_invoke(), and graphkeys_view_selected_channels_exec().
|
static |
Definition at line 5154 of file anim_channels_edit.cc.
References add_region_padding(), ANIM_animdata_filter(), ANIM_animdata_freelist(), ANIM_animdata_get_context(), animchannels_channel_get(), ANIMFILTER_DATA_VISIBLE, ANIMFILTER_LIST_CHANNELS, ANIMFILTER_LIST_VISIBLE, ANIMFILTER_NODUPLIS, bAnimContext::area, BKE_area_find_region_type(), BKE_report(), BLI_findlink(), bounds(), C, View2D::cur, bAnimContext::data, bAnimContext::datatype, filter, get_channel_bounds(), get_view_range(), wmEvent::mval, OPERATOR_CANCELLED, OPERATOR_FINISHED, wmOperator::ptr, wmOperator::reports, RGN_TYPE_WINDOW, RNA_boolean_get(), RPT_WARNING, bAnimContext::scene, SPACE_ACTION, bAnimContext::spacetype, UI_view2d_smooth_view(), ARegion::v2d, WM_operator_smooth_viewtx_get(), rctf::ymax, and rctf::ymin.
Referenced by ANIM_OT_channel_view_pick().
|
static |
Definition at line 5054 of file anim_channels_edit.cc.
References add_region_padding(), ANIM_animdata_filter(), ANIM_animdata_freelist(), ANIM_animdata_get_context(), ANIMFILTER_DATA_VISIBLE, ANIMFILTER_LIST_CHANNELS, ANIMFILTER_LIST_VISIBLE, ANIMFILTER_NODUPLIS, ANIMFILTER_SEL, bAnimContext::area, BKE_area_find_region_type(), BKE_report(), BLI_rctf_union(), bounds(), C, View2D::cur, bAnimContext::data, bAnimContext::datatype, filter, FLT_MAX, get_channel_bounds(), get_view_range(), LISTBASE_FOREACH, OPERATOR_CANCELLED, OPERATOR_FINISHED, wmOperator::ptr, wmOperator::reports, RGN_TYPE_WINDOW, RNA_boolean_get(), RPT_WARNING, bAnimContext::scene, SPACE_ACTION, bAnimContext::spacetype, UI_view2d_smooth_view(), ARegion::v2d, WM_operator_smooth_viewtx_get(), rctf::ymax, and rctf::ymin.
Referenced by ANIM_OT_channels_view_selected().
|
static |
Definition at line 1668 of file anim_channels_edit.cc.
References AGRP_MOVED, AGRP_TEMP, BLI_movelisttolist(), BLI_remlink(), bAction::curves, bAction::groups, and LISTBASE_FOREACH.
Referenced by rearrange_action_channels().
|
static |
Definition at line 4689 of file anim_channels_edit.cc.
References ANIM_animdata_filter(), ANIM_animdata_freelist(), animchannel_has_active_of_type(), ANIMFILTER_DATA_VISIBLE, ANIMFILTER_FCURVESONLY, ANIMFILTER_LIST_CHANNELS, ANIMFILTER_LIST_VISIBLE, ANIMTYPE_ACTION_SLOT, 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_GPLAYER, ANIMTYPE_GREASE_PENCIL_DATABLOCK, ANIMTYPE_GREASE_PENCIL_LAYER, ANIMTYPE_GREASE_PENCIL_LAYER_GROUP, ANIMTYPE_GROUP, ANIMTYPE_MASKDATABLOCK, ANIMTYPE_MASKLAYER, ANIMTYPE_NLACONTROLS, ANIMTYPE_NLACURVE, ANIMTYPE_OBJECT, ANIMTYPE_SCENE, ANIMTYPE_SHAPEKEY, BLI_findlink(), C, click_select_channel_action_slot(), click_select_channel_dummy(), click_select_channel_fcurve(), click_select_channel_gplayer(), click_select_channel_grease_pencil_datablock(), click_select_channel_grease_pencil_layer(), click_select_channel_grease_pencil_layer_group(), click_select_channel_group(), click_select_channel_maskdatablock(), click_select_channel_masklayer(), click_select_channel_nlacontrols(), click_select_channel_object(), click_select_channel_scene(), click_select_channel_shapekey(), CTX_wm_area(), bAnimContext::data, bAnimContext::datatype, ELEM, filter, G, G_DEBUG, printf, SELECT_EXTEND_RANGE, SELECT_INVERT, SPACE_GRAPH, SPACE_NLA, ScrArea::spacetype, and bAnimListElem::type.
Referenced by animchannels_mouseclick_invoke().
|
static |
Definition at line 2103 of file anim_channels_edit.cc.
References blender::animrig::legacy::action_treat_as_legacy(), ANIMTYPE_FCURVE, ANIMTYPE_GROUP, BLI_assert, BLI_freelistN(), EXPANDED_AGRP, bAction::groups, join_groups_action_temp(), LISTBASE_FOREACH, rearrange_animchannel_islands(), rearrange_animchannels_filter_visible(), rearrange_get_mode_func(), rearrange_layered_action_channel_groups(), rearrange_layered_action_fcurves(), rearrange_layered_action_slots(), and split_groups_action_temp().
Referenced by animchannels_rearrange_exec().
|
static |
Definition at line 1304 of file anim_channels_edit.cc.
References AGRP_TEMP, ANIMTYPE_FCURVE, ANIMTYPE_GPLAYER, ANIMTYPE_GROUP, ANIMTYPE_NLACURVE, ANIMTYPE_NLATRACK, BLI_addtail(), BLI_remlink(), tReorderChannelIsland::channels, bActionGroup::flag, tReorderChannelIsland::flag, ListBase::last, MEM_callocN(), printf, REORDER_ISLAND_HIDDEN, REORDER_ISLAND_SELECTED, REORDER_ISLAND_UNTOUCHABLE, SEL_AGRP, SEL_FCU, SEL_GPL, and SEL_NLT.
Referenced by rearrange_animchannel_islands().
Definition at line 1381 of file anim_channels_edit.cc.
References BLI_assert, BLI_freelinkN(), BLI_listbase_is_empty(), BLI_movelisttolist(), tReorderChannelIsland::channels, ListBase::first, and tReorderChannelIsland::next.
Referenced by rearrange_animchannel_islands().
|
static |
Definition at line 1437 of file anim_channels_edit.cc.
References BLI_findptr(), BLI_listbase_is_empty(), data, ListBase::first, tReorderChannelIsland::flag, ListBase::last, Link::next, tReorderChannelIsland::next, offsetof, tReorderChannelIsland::prev, rearrange_animchannel_add_to_islands(), rearrange_animchannel_flatten_islands(), and REORDER_ISLAND_MOVED.
Referenced by rearrange_action_channels(), rearrange_driver_channels(), rearrange_gpencil_channels(), rearrange_nla_control_channels(), and rearrange_nla_tracks().
|
static |
Definition at line 1401 of file anim_channels_edit.cc.
References ANIM_animdata_filter(), ANIMFILTER_DATA_VISIBLE, ANIMFILTER_LIST_CHANNELS, ANIMFILTER_LIST_VISIBLE, ANIMTYPE_NLATRACK, BKE_nlatrack_is_nonlocal_in_liboverride(), BLI_freelinkN(), bAnimContext::data, bAnimContext::datatype, filter, and LISTBASE_FOREACH_MUTABLE.
Referenced by rearrange_action_channels(), rearrange_driver_channels(), rearrange_gpencil_channels(), rearrange_layered_action_channel_groups(), rearrange_layered_action_fcurves(), rearrange_layered_action_slots(), rearrange_nla_control_channels(), and rearrange_nla_tracks().
|
static |
Definition at line 1563 of file anim_channels_edit.cc.
References ANIMTYPE_FCURVE, BLI_freelistN(), AnimData::drivers, EXPANDED_DRVD, rearrange_animchannel_islands(), rearrange_animchannels_filter_visible(), and rearrange_get_mode_func().
Referenced by animchannels_rearrange_exec().
|
static |
Definition at line 1268 of file anim_channels_edit.cc.
References REARRANGE_ANIMCHAN_BOTTOM, REARRANGE_ANIMCHAN_DOWN, REARRANGE_ANIMCHAN_TOP, REARRANGE_ANIMCHAN_UP, rearrange_island_bottom(), rearrange_island_down(), rearrange_island_top(), and rearrange_island_up().
Referenced by rearrange_action_channels(), rearrange_driver_channels(), rearrange_nla_control_channels(), and rearrange_nla_tracks().
|
static |
Definition at line 2257 of file anim_channels_edit.cc.
References ANIM_animdata_filter(), ANIM_animdata_freelist(), ANIMFILTER_ANIMDATA, ANIMFILTER_DATA_VISIBLE, ANIMFILTER_LIST_CHANNELS, ANIMFILTER_LIST_VISIBLE, ANIMTYPE_DSGPENCIL, ANIMTYPE_GPLAYER, BLI_freelistN(), bAnimContext::data, bAnimContext::datatype, DEG_id_tag_update(), filter, bGPdata::flag, GP_DATA_EXPAND, bGPdata::id, ID_RECALC_GEOMETRY, ID_RECALC_TRANSFORM, bGPdata::layers, LISTBASE_FOREACH, NA_EDITED, NC_GPENCIL, ND_DATA, rearrange_animchannel_islands(), rearrange_animchannels_filter_visible(), rearrange_gpencil_get_mode_func(), and WM_main_add_notifier().
Referenced by animchannels_rearrange_exec().
|
static |
Definition at line 1285 of file anim_channels_edit.cc.
References REARRANGE_ANIMCHAN_BOTTOM, REARRANGE_ANIMCHAN_DOWN, REARRANGE_ANIMCHAN_TOP, REARRANGE_ANIMCHAN_UP, rearrange_island_bottom(), rearrange_island_down(), rearrange_island_top(), and rearrange_island_up().
Referenced by rearrange_gpencil_channels().
|
static |
Definition at line 2204 of file anim_channels_edit.cc.
References ANIM_animdata_filter(), ANIMFILTER_DATA_VISIBLE, Layer::as_node(), BLI_freelistN(), bAnimContext::data, bAnimContext::datatype, filter, LISTBASE_FOREACH, LISTBASE_FOREACH_BACKWARD, REARRANGE_ANIMCHAN_BOTTOM, REARRANGE_ANIMCHAN_DOWN, REARRANGE_ANIMCHAN_TOP, and REARRANGE_ANIMCHAN_UP.
Referenced by animchannels_rearrange_exec().
|
static |
Definition at line 1232 of file anim_channels_edit.cc.
References BLI_addtail(), BLI_insertlinkbefore(), BLI_remlink(), tReorderChannelIsland::flag, ListBase::last, rearrange_island_ok(), and REORDER_ISLAND_UNTOUCHABLE.
Referenced by rearrange_get_mode_func(), and rearrange_gpencil_get_mode_func().
|
static |
Definition at line 1203 of file anim_channels_edit.cc.
References BLI_insertlinkafter(), BLI_remlink(), next, tReorderChannelIsland::next, rearrange_island_ok(), REORDER_ISLAND_HIDDEN, and REORDER_ISLAND_UNTOUCHABLE.
Referenced by rearrange_get_mode_func(), and rearrange_gpencil_get_mode_func().
|
static |
Definition at line 1150 of file anim_channels_edit.cc.
References tReorderChannelIsland::flag, REORDER_ISLAND_MOVED, REORDER_ISLAND_SELECTED, and REORDER_ISLAND_UNTOUCHABLE.
Referenced by rearrange_island_bottom(), rearrange_island_down(), rearrange_island_top(), and rearrange_island_up().
|
static |
Definition at line 1163 of file anim_channels_edit.cc.
References BLI_insertlinkbefore(), BLI_remlink(), ListBase::first, and rearrange_island_ok().
Referenced by rearrange_get_mode_func(), and rearrange_gpencil_get_mode_func().
|
static |
Definition at line 1178 of file anim_channels_edit.cc.
References BLI_insertlinkbefore(), BLI_remlink(), tReorderChannelIsland::prev, rearrange_island_ok(), and REORDER_ISLAND_HIDDEN.
Referenced by rearrange_get_mode_func(), and rearrange_gpencil_get_mode_func().
|
static |
Move selected, visible channel groups in the channel list according to mode.
NOTE: the current implementation has quadratic performance with respect to the number of groups in a Channelbag, due to both Span::first_index_try() and Channelbag::channel_group_move_to_index() having linear performance. If this becomes a performance bottleneck in practice, we can create a dedicated method on Channelbag for collectively moving a non-contiguous set of channel groups that works in linear time.
TODO: there's a fair amount of apparent repetition in this code and the code in rearrange_layered_action_fcurves(). In the time available when writing this, I (Nathan) wasn't able to figure out a satisfactory way to DRY that which didn't make the code significantly harder to follow. I suspect there is a good way to DRY this, and therefore this is probably worth revisiting when we have more time.
Definition at line 1821 of file anim_channels_edit.cc.
References ANIMTYPE_GROUP, BLI_assert, BLI_freelistN(), blender::animrig::Channelbag::channel_group(), blender::animrig::Channelbag::channel_group_move_to_index(), blender::animrig::Channelbag::channel_groups(), bActionGroup::channelbag, LISTBASE_FOREACH, LISTBASE_FOREACH_BACKWARD, REARRANGE_ANIMCHAN_BOTTOM, REARRANGE_ANIMCHAN_DOWN, REARRANGE_ANIMCHAN_TOP, REARRANGE_ANIMCHAN_UP, rearrange_animchannels_filter_visible(), and SEL_AGRP.
Referenced by rearrange_action_channels().
|
static |
Move selected, visible fcurves in the channel list according to mode.
NOTE: the current implementation has quadratic performance with respect to the number of fcurves in a Channelbag, due to both Span::first_index_try() and Channelbag::fcurve_move_to_index() having linear performance. If this becomes a performance bottleneck in practice, we can create a dedicated method on Channelbag for collectively moving a non-contiguous set of fcurves that works in linear time.
TODO: there's a fair amount of apparent repetition in this code and the code in rearrange_layered_action_channel_groups(). In the time available when writing this, I (Nathan) wasn't able to figure out a satisfactory way to DRY that which didn't make the code significantly harder to follow. I suspect there is a good way to DRY this, and therefore this is probably worth revisiting when we have more time.
Definition at line 1944 of file anim_channels_edit.cc.
References ANIMTYPE_FCURVE, BLI_assert, BLI_freelistN(), blender::animrig::Channelbag::channel_groups(), bActionGroup::channelbag, blender::animrig::channelbag_for_action_slot(), blender::animrig::Channelbag::fcurve(), blender::animrig::Channelbag::fcurve_move_to_index(), bActionGroup::fcurve_range_length, bActionGroup::fcurve_range_start, blender::animrig::Channelbag::fcurves(), FCurve::grp, LISTBASE_FOREACH, LISTBASE_FOREACH_BACKWARD, REARRANGE_ANIMCHAN_BOTTOM, REARRANGE_ANIMCHAN_DOWN, REARRANGE_ANIMCHAN_TOP, REARRANGE_ANIMCHAN_UP, rearrange_animchannels_filter_visible(), SEL_AGRP, and SEL_FCU.
Referenced by rearrange_action_channels().
|
static |
Move selected, visible action slots in the channel list according to mode.
Returns true if any rearranging happened, false otherwise.
Definition at line 1699 of file anim_channels_edit.cc.
References ANIMFILTER_SEL, ANIMTYPE_ACTION_SLOT, BLI_assert, BLI_freelistN(), blender::animrig::Slot::is_selected(), LISTBASE_FOREACH, LISTBASE_FOREACH_BACKWARD, REARRANGE_ANIMCHAN_BOTTOM, REARRANGE_ANIMCHAN_DOWN, REARRANGE_ANIMCHAN_TOP, REARRANGE_ANIMCHAN_UP, rearrange_animchannels_filter_visible(), blender::animrig::Action::slot(), blender::animrig::Action::slot_move_to_index(), blender::animrig::Action::slots(), and wrap().
Referenced by rearrange_action_channels().
|
static |
Definition at line 2169 of file anim_channels_edit.cc.
References ADT_NLA_SKEYS_COLLAPSED, ANIMTYPE_NLACURVE, BLI_freelistN(), AnimData::flag, LISTBASE_FOREACH, AnimData::nla_tracks, rearrange_animchannel_islands(), rearrange_animchannels_filter_visible(), rearrange_get_mode_func(), and NlaStrip::strips.
Referenced by animchannels_rearrange_exec().
|
static |
Definition at line 1497 of file anim_channels_edit.cc.
References ANIMTYPE_NLATRACK, BKE_nlatrack_is_nonlocal_in_liboverride(), BLI_assert, BLI_freelistN(), BLI_listbase_is_empty(), ListBase::first, Object::id, ID_IS_OVERRIDE_LIBRARY, ListBase::last, next, NlaTrack::next, AnimData::nla_tracks, bAnimContext::obact, NlaTrack::prev, rearrange_animchannel_islands(), rearrange_animchannels_filter_visible(), and rearrange_get_mode_func().
Referenced by animchannels_rearrange_exec().
|
static |
Definition at line 3988 of file anim_channels_edit.cc.
References bAnimContext::ads, ANIM_animdata_filter(), ANIM_animdata_freelist(), ANIM_channel_get_typeinfo(), ANIMCONT_FCURVES, ANIMCONT_NLA, ANIMFILTER_DATA_VISIBLE, ANIMFILTER_FCURVESONLY, ANIMFILTER_LIST_CHANNELS, ANIMFILTER_LIST_VISIBLE, ANIMTYPE_NLATRACK, BLI_findlink(), bAnimContext::data, bAnimListElem::data, bAnimContext::datatype, ED_region_tag_redraw(), ELEM, bAnimListElem::fcurve_owner_id, filter, NlaTrack::flag, G, G_DEBUG, bAnimListElem::id, ID_IS_EDITABLE, ID_IS_OVERRIDE_LIBRARY, bAnimChannelType::name_prop, NLATRACK_OVERRIDELIBRARY_LOCAL, printf, ptr, bAnimContext::region, bDopeSheet::renameIndex, and bAnimListElem::type.
Referenced by animchannels_rename_invoke().
|
static |
Definition at line 4921 of file anim_channels_edit.cc.
References ALE_FCURVE, ANIM_animdata_filter(), ANIM_animdata_freelist(), ANIMFILTER_DATA_VISIBLE, ANIMFILTER_FCURVESONLY, ANIMFILTER_LIST_CHANNELS, ANIMFILTER_LIST_VISIBLE, FCurve::bezt, BLI_findlink(), bAnimContext::data, bAnimContext::datatype, bAnimListElem::datatype, ED_region_tag_redraw(), BezTriple::f1, BezTriple::f2, BezTriple::f3, filter, G, G_DEBUG, i, bAnimListElem::key_data, LISTBASE_FOREACH, printf, bAnimContext::region, and SELECT.
Referenced by animchannels_channel_select_keys_invoke().
|
static |
Definition at line 494 of file anim_channels_edit.cc.
References ADS_FILTER_ONLYSEL, AGRP_SELECTED, BKE_pose_channel_find_name(), ED_pose_bone_select(), bAnimContext::filters, bActionGroup::flag, bAnimContext::flag, GS, bAnimListElem::id, ID_OB, bActionGroup::name, ID::name, OB_ARMATURE, Object::pose, and Object::type.
Referenced by anim_channels_select_set(), animchannel_select_range(), and box_select_anim_channels().
|
static |
Definition at line 5502 of file anim_channels_edit.cc.
References blender::animrig::action_add(), BKE_reportf(), BLI_assert, C, CTX_data_active_object(), CTX_data_main(), DATA_, DEG_id_tag_update(), DEG_relations_tag_update(), blender::animrig::get_action(), bAction::id, Object::id, ID_RECALC_ANIMATION_NO_FLUSH, ActionSlot::identifier, blender::animrig::Action::layer_add(), MAX_ID_NAME, blender::animrig::move_slot(), NA_EDITED, ID::name, NC_ANIMATION, ND_NLA_ACTCHANGE, OPERATOR_FINISHED, wmOperator::reports, RPT_INFO, blender::animrig::Action::slot(), bAction::slot_array_num, SNPRINTF_UTF8, and WM_event_add_notifier().
Referenced by ANIM_OT_separate_slots().
|
static |
Definition at line 5540 of file anim_channels_edit.cc.
References C, CTX_data_active_object(), CTX_wm_operator_poll_msg_set(), blender::animrig::get_action(), Object::id, and blender::animrig::Action::is_action_layered().
Referenced by ANIM_OT_separate_slots().
|
static |
Set/clear a particular flag (setting) for all selected + visible channels
| setting | the setting to modify. |
| mode | eAnimChannels_SetFlag. |
| onlysel | only selected channels get the flag set. |
TODO: enable a setting which turns flushing on/off?
Definition at line 3141 of file anim_channels_edit.cc.
References ACHANNEL_SETFLAG_ADD, ACHANNEL_SETFLAG_CLEAR, ACHANNEL_SETFLAG_TOGGLE, ANIM_animdata_filter(), ANIM_animdata_freelist(), ANIM_channel_setting_get(), ANIM_channel_setting_set(), ANIM_flush_setting_anim_channels(), ANIMFILTER_CURVE_VISIBLE, ANIMFILTER_DATA_VISIBLE, ANIMFILTER_FCURVESONLY, ANIMFILTER_LIST_CHANNELS, ANIMFILTER_LIST_VISIBLE, ANIMFILTER_NODUPLIS, ANIMFILTER_SEL, BLI_freelistN(), bAnimContext::data, bAnimContext::datatype, filter, LISTBASE_FOREACH, bAnimContext::regiontype, RGN_TYPE_CHANNELS, SPACE_GRAPH, bAnimContext::spacetype, and tag_update_animation_element().
Referenced by animchannels_collapse_exec(), animchannels_expand_exec(), and animchannels_setflag_exec().
|
static |
Definition at line 5406 of file anim_channels_edit.cc.
References blender::animrig::action_add(), ANIM_animdata_filter(), ANIM_animdata_freelist(), ANIM_animdata_get_context(), ANIMFILTER_DATA_VISIBLE, ANIMFILTER_LIST_CHANNELS, ANIMFILTER_NODUPLIS, ANIMFILTER_SEL, ANIMTYPE_ACTION_SLOT, blender::Vector< T, InlineBufferCapacity, Allocator >::append(), BKE_report(), BLI_assert, C, CTX_data_main(), bAnimContext::data, DATA_, bAnimContext::datatype, DEG_id_tag_update(), DEG_relations_tag_update(), filter, GS, bAction::id, ID_AC, ID_RECALC_ANIMATION_NO_FLUSH, blender::animrig::Action::layer_add(), LISTBASE_FOREACH, MAX_ID_NAME, blender::animrig::move_slot(), NA_EDITED, NC_ANIMATION, ND_NLA_ACTCHANGE, OPERATOR_CANCELLED, OPERATOR_FINISHED, wmOperator::reports, RPT_WARNING, blender::Vector< T, InlineBufferCapacity, Allocator >::size(), SNPRINTF_UTF8, and WM_event_add_notifier().
Referenced by ANIM_OT_slot_channels_move_to_new_action().
|
static |
Definition at line 5472 of file anim_channels_edit.cc.
References ANIM_active_action_from_area(), C, CTX_data_scene(), CTX_data_view_layer(), CTX_wm_area(), and CTX_wm_operator_poll_msg_set().
Referenced by ANIM_OT_slot_channels_move_to_new_action().
|
static |
Definition at line 1594 of file anim_channels_edit.cc.
References AGRP_EXPANDED, AGRP_EXPANDED_G, AGRP_TEMP, BLI_addtail(), BLI_assert, bActionGroup::channels, bActionGroup::cs, bAction::curves, ListBase::first, bActionGroup::flag, bAction::groups, FCurve::grp, ListBase::last, LISTBASE_FOREACH, bActionGroup::name, FCurve::next, FCurve::prev, and STRNCPY_UTF8.
Referenced by rearrange_action_channels().
|
static |
Definition at line 2725 of file anim_channels_edit.cc.
References AnimData::action, BKE_animdata_from_id(), DEG_id_tag_update(), bAction::id, bAnimListElem::id, and ID_RECALC_ANIMATION.
Referenced by animchannels_delete_containers(), ED_anim_ale_fcurve_delete(), and setflag_anim_channels().
|
static |
Update the selection state of selectable_thing based on selectmode.
This is basically the C++ variant of the macro ACHANNEL_SET_FLAG(thing, sel, selection_flag), except that this function doesn't require that the selectable thing has a member variable flag. Instead, it requires that it has two functions to query & set its selection state.
| selectable_thing | something with functions set_selected(bool) and bool is_selected(). |
| selectmode | the selection operation to perform. |
Definition at line 653 of file anim_channels_edit.cc.
References ACHANNEL_SETFLAG_ADD, ACHANNEL_SETFLAG_CLEAR, ACHANNEL_SETFLAG_EXTEND_RANGE, ACHANNEL_SETFLAG_INVERT, ACHANNEL_SETFLAG_TOGGLE, and T.
Referenced by anim_channels_select_set(), and box_select_anim_channels().
|
static |
Definition at line 5770 of file anim_channels_edit.cc.
References add_region_padding(), ANIM_animdata_get_context(), BKE_report(), BLI_rctf_is_valid(), BLI_rctf_union(), bounds(), C, calculate_fcurve_bounds_and_unhide(), calculate_selection_fcurve_bounds(), context_find_graph_editor(), count_fcurves_hidden_by_filter(), CTX_wm_area(), CTX_wm_area_set(), CTX_wm_region(), CTX_wm_region_set(), CTX_wm_window(), CTX_wm_window_set(), deselect_all_fcurves(), ED_area_tag_redraw(), get_fcurves_of_property(), blender::Vector< T, InlineBufferCapacity, Allocator >::is_empty(), OPERATOR_CANCELLED, OPERATOR_FINISHED, OPERATOR_PASS_THROUGH, PointerRNA::owner_id, wmOperator::ptr, wmOperator::reports, RNA_boolean_get(), RPT_ERROR, RPT_WARNING, bAnimContext::scene, bAnimContext::sl, UI_context_active_but_prop_get(), UI_context_copy_to_selected_list(), UI_view2d_smooth_view(), and WM_operator_smooth_viewtx_get().
Referenced by ANIM_OT_view_curve_in_graph_editor().
|
static |
Definition at line 5240 of file anim_channels_edit.cc.
Referenced by ANIM_OT_channels_bake().
|
static |
Definition at line 1122 of file anim_channels_edit.cc.
Referenced by ANIM_OT_channels_move().
|
static |
Definition at line 3115 of file anim_channels_edit.cc.
Referenced by ANIM_OT_channels_editable_toggle(), ANIM_OT_channels_setting_disable(), ANIM_OT_channels_setting_enable(), and ANIM_OT_channels_setting_toggle().
|
static |
Definition at line 3125 of file anim_channels_edit.cc.
Referenced by ANIM_OT_channels_editable_toggle(), ANIM_OT_channels_setting_disable(), ANIM_OT_channels_setting_enable(), and ANIM_OT_channels_setting_toggle().