Blender
V3.3
|
#include <math.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "DNA_anim_types.h"
#include "DNA_object_types.h"
#include "DNA_scene_types.h"
#include "BLI_blenlib.h"
#include "BLI_utildefines.h"
#include "BKE_anim_data.h"
#include "BKE_context.h"
#include "BKE_global.h"
#include "BKE_nla.h"
#include "BKE_report.h"
#include "BKE_scene.h"
#include "BKE_screen.h"
#include "ED_anim_api.h"
#include "ED_keyframes_edit.h"
#include "ED_object.h"
#include "ED_screen.h"
#include "RNA_access.h"
#include "RNA_define.h"
#include "WM_api.h"
#include "WM_types.h"
#include "UI_interface.h"
#include "DEG_depsgraph.h"
#include "DEG_depsgraph_build.h"
#include "UI_view2d.h"
#include "nla_intern.h"
Go to the source code of this file.
|
static |
Definition at line 61 of file nla_channels.c.
References ACHANNEL_SETFLAG_CLEAR, bAnimListElem::adt, Scene::adt, ADT_UI_ACTIVE, ADT_UI_SELECTED, ANIM_anim_channels_select_set(), ANIM_animdata_filter(), ANIM_animdata_freelist(), ANIM_animdata_update(), ANIM_set_active_channel(), ANIM_UPDATE_DEPS, ANIMFILTER_DATA_VISIBLE, ANIMFILTER_FCURVESONLY, ANIMFILTER_LIST_CHANNELS, ANIMFILTER_LIST_VISIBLE, ANIMTYPE_DSARM, ANIMTYPE_DSCACHEFILE, ANIMTYPE_DSCAM, ANIMTYPE_DSCUR, ANIMTYPE_DSGPENCIL, ANIMTYPE_DSHAIR, ANIMTYPE_DSLAM, ANIMTYPE_DSLAT, ANIMTYPE_DSLINESTYLE, ANIMTYPE_DSMAT, ANIMTYPE_DSMBALL, ANIMTYPE_DSMESH, ANIMTYPE_DSNTREE, ANIMTYPE_DSPART, ANIMTYPE_DSPOINTCLOUD, ANIMTYPE_DSSIMULATION, ANIMTYPE_DSSKEY, ANIMTYPE_DSSPK, ANIMTYPE_DSTEX, ANIMTYPE_DSVOLUME, ANIMTYPE_DSWOR, ANIMTYPE_FILLACTD, ANIMTYPE_NLAACTION, ANIMTYPE_NLATRACK, ANIMTYPE_OBJECT, ANIMTYPE_PALETTE, ANIMTYPE_SCENE, usdtokens::b(), BA_DESELECT, BA_INVERT, BA_SELECT, BASE_SELECTABLE, BKE_animdata_from_id(), BLI_findlink(), C, bAnimContext::data, bAnimListElem::data, bAnimContext::datatype, ED_object_base_activate_with_mode_exit_if_needed(), ED_object_base_select(), filter(), NlaTrack::flag, AnimData::flag, Base::flag, Scene::flag, G, G_DEBUG, bAnimListElem::id, if(), LISTBASE_FOREACH, NA_SELECTED, ND_ANIMCHAN, ND_NLA_ACTCHANGE, nlaedit_disable_tweakmode(), nlaedit_is_tweakmode_on(), NLATRACK_SELECTED, NULL, Base::object, ViewLayer::object_bases, SCE_DS_SELECTED, SELECT_INVERT, bAnimListElem::type, bAnimListElem::update, and bAnimContext::view_layer.
Referenced by nlachannels_mouseclick_invoke().
|
static |
Definition at line 497 of file nla_channels.c.
References AnimData::action, C, PointerRNA::data, ED_animedit_unlink_action(), nla_panel_context(), NULL, OPERATOR_CANCELLED, OPERATOR_FINISHED, PointerRNA::owner_id, wmOperator::ptr, wmOperator::reports, and RNA_boolean_get().
Referenced by nla_action_unlink_invoke(), and NLA_OT_action_unlink().
|
static |
Definition at line 522 of file nla_channels.c.
References C, KM_SHIFT, wmEvent::modifier, nla_action_unlink_exec(), wmOperator::ptr, and RNA_boolean_set().
Referenced by NLA_OT_action_unlink().
Definition at line 486 of file nla_channels.c.
References C, PointerRNA::data, ED_operator_nla_active(), nla_panel_context(), and NULL.
Referenced by NLA_OT_action_unlink().
void NLA_OT_action_pushdown | ( | wmOperatorType * | ot | ) |
Definition at line 457 of file nla_channels.c.
References wmOperatorType::description, wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::name, nlachannels_pushdown_exec(), nlaop_poll_tweakmode_off(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, wmOperatorType::poll, wmOperatorType::prop, PROP_SKIP_SAVE, RNA_def_int(), RNA_def_property_flag(), and wmOperatorType::srna.
Referenced by nla_operatortypes().
void NLA_OT_action_unlink | ( | wmOperatorType * | ot | ) |
Definition at line 530 of file nla_channels.c.
References wmOperatorType::description, wmOperatorType::exec, wmOperatorType::idname, wmOperatorType::invoke, wmOperatorType::name, nla_action_unlink_exec(), nla_action_unlink_invoke(), nla_action_unlink_poll(), ot, wmOperatorType::poll, PROP_SKIP_SAVE, RNA_def_boolean(), RNA_def_property_flag(), and wmOperatorType::srna.
Referenced by nla_operatortypes().
void NLA_OT_channels_click | ( | wmOperatorType * | ot | ) |
Definition at line 336 of file nla_channels.c.
References wmOperatorType::description, ED_operator_nla_active(), wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::invoke, wmOperatorType::name, nlachannels_mouseclick_invoke(), OPTYPE_UNDO, ot, wmOperatorType::poll, PROP_SKIP_SAVE, RNA_def_boolean(), RNA_def_property_flag(), and wmOperatorType::srna.
Referenced by nla_operatortypes().
void NLA_OT_selected_objects_add | ( | wmOperatorType * | ot | ) |
Definition at line 811 of file nla_channels.c.
References wmOperatorType::description, wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::name, nlaedit_objects_add_exec(), nlaop_poll_tweakmode_off(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, and wmOperatorType::poll.
Referenced by nla_operatortypes().
void NLA_OT_tracks_add | ( | wmOperatorType * | ot | ) |
Definition at line 675 of file nla_channels.c.
References wmOperatorType::description, wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::name, nlaedit_add_tracks_exec(), nlaop_poll_tweakmode_off(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, wmOperatorType::poll, RNA_def_boolean(), and wmOperatorType::srna.
Referenced by nla_operatortypes().
void NLA_OT_tracks_delete | ( | wmOperatorType * | ot | ) |
Definition at line 755 of file nla_channels.c.
References wmOperatorType::description, wmOperatorType::exec, wmOperatorType::flag, wmOperatorType::idname, wmOperatorType::name, nlaedit_delete_tracks_exec(), nlaop_poll_tweakmode_off(), OPTYPE_REGISTER, OPTYPE_UNDO, ot, and wmOperatorType::poll.
Referenced by nla_operatortypes().
|
static |
Definition at line 287 of file nla_channels.c.
References ANIM_animdata_get_context(), C, if(), mouse_nla_channels(), wmEvent::mval, NC_ANIMATION, NLACHANNEL_FIRST_TOP, NLACHANNEL_NAMEWIDTH, NLACHANNEL_STEP, NULL, OPERATOR_CANCELLED, OPERATOR_FINISHED, wmOperator::ptr, bAnimContext::region, RNA_boolean_get(), SELECT_INVERT, SELECT_REPLACE, bAnimContext::sl, UI_view2d_listview_view_to_cell(), UI_view2d_region_to_view(), ARegion::v2d, WM_event_add_notifier(), x, and y.
Referenced by NLA_OT_channels_click().
|
static |
Definition at line 362 of file nla_channels.c.
References AnimData::action, bAnimListElem::adt, ANIM_animdata_filter(), ANIM_animdata_freelist(), ANIM_animdata_get_context(), ANIMFILTER_DATA_VISIBLE, ANIMFILTER_FCURVESONLY, ANIMFILTER_LIST_CHANNELS, ANIMFILTER_LIST_VISIBLE, ANIMTYPE_NLAACTION, BKE_nla_action_pushdown(), BKE_report(), BKE_reportf(), BLI_findlink(), C, CTX_data_main(), bAnimContext::data, PointerRNA::data, bAnimContext::datatype, DEG_id_tag_update_ex(), filter(), bAnimListElem::id, bAction::id, ID_IS_OVERRIDE_LIBRARY, ID_RECALC_ANIMATION, NC_ANIMATION, ND_NLA_ACTCHANGE, nla_panel_context(), nlaedit_is_tweakmode_on(), NULL, OPERATOR_CANCELLED, OPERATOR_FINISHED, PointerRNA::owner_id, wmOperator::ptr, wmOperator::reports, RNA_int_get(), RPT_ERROR, RPT_WARNING, bAnimListElem::type, and WM_event_add_notifier().
Referenced by NLA_OT_action_pushdown().
bool nlaedit_add_tracks_empty | ( | bAnimContext * | ac | ) |
helper - add NLA Tracks to empty (and selected) AnimData blocks.
Definition at line 604 of file nla_channels.c.
References bAnimListElem::adt, ADT_UI_SELECTED, ANIM_animdata_filter(), ANIM_animdata_freelist(), ANIM_animdata_update(), ANIM_UPDATE_DEPS, ANIMFILTER_ANIMDATA, ANIMFILTER_DATA_VISIBLE, ANIMFILTER_FCURVESONLY, ANIMFILTER_LIST_VISIBLE, ANIMFILTER_NODUPLIS, ANIMFILTER_SEL, BKE_nlatrack_add(), BLI_assert, BLI_listbase_is_empty(), bAnimContext::data, bAnimContext::datatype, filter(), ListBase::first, AnimData::flag, bAnimListElem::id, ID_IS_OVERRIDE_LIBRARY, bAnimListElem::next, AnimData::nla_tracks, NULL, and bAnimListElem::update.
Referenced by nlaedit_add_actionclip_exec(), and nlaedit_add_tracks_exec().
|
static |
Definition at line 641 of file nla_channels.c.
References ANIM_animdata_get_context(), BKE_report(), C, CTX_data_main(), DEG_relations_tag_update(), NA_ADDED, NC_ANIMATION, ND_NLA, nlaedit_add_tracks_empty(), nlaedit_add_tracks_existing(), NULL, OPERATOR_CANCELLED, OPERATOR_FINISHED, wmOperator::ptr, wmOperator::reports, RNA_boolean_get(), RPT_WARNING, and WM_event_add_notifier().
Referenced by NLA_OT_tracks_add().
bool nlaedit_add_tracks_existing | ( | bAnimContext * | ac, |
bool | above_sel | ||
) |
Helper - add NLA Tracks alongside existing ones.
Definition at line 556 of file nla_channels.c.
References bAnimListElem::adt, ANIM_animdata_filter(), ANIM_animdata_freelist(), ANIM_animdata_update(), ANIM_UPDATE_DEPS, ANIMFILTER_DATA_VISIBLE, ANIMFILTER_FCURVESONLY, ANIMFILTER_LIST_VISIBLE, ANIMFILTER_NODUPLIS, ANIMFILTER_SEL, ANIMTYPE_NLATRACK, BKE_nlatrack_add(), bAnimContext::data, bAnimListElem::data, bAnimContext::datatype, filter(), ListBase::first, bAnimListElem::id, ID_IS_OVERRIDE_LIBRARY, bAnimListElem::next, NULL, bAnimListElem::type, and bAnimListElem::update.
Referenced by nlaedit_add_tracks_exec().
|
static |
Definition at line 700 of file nla_channels.c.
References bAnimListElem::adt, ADT_NLA_SOLO_TRACK, ANIM_animdata_filter(), ANIM_animdata_freelist(), ANIM_animdata_get_context(), ANIM_animdata_update(), ANIM_UPDATE_DEPS, ANIMFILTER_DATA_VISIBLE, ANIMFILTER_FCURVESONLY, ANIMFILTER_LIST_VISIBLE, ANIMFILTER_NODUPLIS, ANIMFILTER_SEL, ANIMTYPE_NLATRACK, BKE_nlatrack_free(), BKE_nlatrack_is_nonlocal_in_liboverride(), bAnimContext::bmain, C, bAnimContext::data, bAnimListElem::data, bAnimContext::datatype, DEG_relations_tag_update(), filter(), ListBase::first, NlaTrack::flag, bAnimListElem::id, if(), NA_REMOVED, NC_ANIMATION, ND_NLA, bAnimListElem::next, NLATRACK_SOLO, NULL, OPERATOR_CANCELLED, OPERATOR_FINISHED, bAnimListElem::type, bAnimListElem::update, and WM_event_add_notifier().
Referenced by NLA_OT_tracks_delete().
|
static |
Definition at line 781 of file nla_channels.c.
References SpaceNla::ads, ADS_FILTER_NLA_NOACT, ANIM_animdata_get_context(), BKE_animdata_ensure_id(), C, CTX_DATA_BEGIN, CTX_DATA_END, bDopeSheet::filterflag, if(), NA_EDITED, NC_ANIMATION, ND_NLA, NULL, OPERATOR_CANCELLED, OPERATOR_FINISHED, bAnimContext::sl, and WM_event_add_notifier().
Referenced by NLA_OT_selected_objects_add().