92 #define EXTRA_SCROLL_PAD 100.0f
95 #define INDENT_STEP_SIZE (0.35f * U.widget_unit)
98 #define ANIM_CHAN_NAME_SIZE 256
101 #define GET_ACF_FLAG_PTR(ptr, type) ((*(type) = sizeof((ptr))), &(ptr))
205 if (showGroupColors && (grp) && (grp->
customCol)) {
211 else if (indent == 1) {
224 int colOfs = 10 - 10 * indent;
241 int colOfs = 10 - 10 * indent;
352 offset +=
U.widget_unit;
356 offset += (short)(0.7f *
U.widget_unit);
362 offset += (short)(0.7f *
U.widget_unit);
394 return (*prop !=
NULL);
404 return (*prop !=
NULL);
411 static bool acf_generic_none_setting_valid(
bAnimContext *ac,
568 return ICON_SCENE_DATA;
682 return ICON_OUTLINER_OB_LIGHT;
684 return ICON_OUTLINER_OB_MESH;
686 return ICON_OUTLINER_OB_CAMERA;
688 return ICON_OUTLINER_OB_CURVE;
690 return ICON_OUTLINER_OB_META;
692 return ICON_OUTLINER_OB_LATTICE;
694 return ICON_OUTLINER_OB_SPEAKER;
696 return ICON_OUTLINER_OB_LIGHTPROBE;
698 return ICON_OUTLINER_OB_ARMATURE;
700 return ICON_OUTLINER_OB_FONT;
702 return ICON_OUTLINER_OB_SURFACE;
704 return ICON_OUTLINER_OB_HAIR;
706 return ICON_OUTLINER_OB_POINTCLOUD;
708 return ICON_OUTLINER_OB_VOLUME;
710 return ICON_OUTLINER_OB_EMPTY;
712 return ICON_OUTLINER_OB_GREASEPENCIL;
714 return ICON_OBJECT_DATA;
736 return (*prop !=
NULL);
856 if (showGroupColors && agrp->
customCol) {
925 return (*prop !=
NULL);
1051 return (*prop !=
NULL);
1252 "NLA Controls Expander",
1292 "NLA Control F-Curve",
1489 return ICON_MATERIAL_DATA;
1546 "Material Data Expander",
1568 return ICON_LIGHT_DATA;
1649 return ICON_TEXTURE_DATA;
1713 "Texture Data Expander",
1783 if (cache_file->
adt) {
1796 "Cache File Expander",
1818 return ICON_CAMERA_DATA;
1906 return ICON_FONT_DATA;
1908 return ICON_SURFACE_DATA;
1910 return ICON_CURVE_DATA;
1990 return ICON_SHAPEKEY_DATA;
2066 "Shape Key Expander",
2088 return ICON_WORLD_DATA;
2167 return ICON_PARTICLE_DATA;
2224 "Particle Data Expander",
2246 return ICON_META_DATA;
2305 "Metaball Expander",
2327 return ICON_ARMATURE_DATA;
2384 "Armature Expander",
2406 return ICON_NODETREE;
2476 "Node Tree Expander",
2498 return ICON_LINE_DATA;
2557 "Line Style Expander",
2579 return ICON_MESH_DATA;
2659 return ICON_LATTICE_DATA;
2739 return ICON_SPEAKER;
2818 return ICON_HAIR_DATA;
2897 return ICON_POINTCLOUD_DATA;
2944 if (pointcloud->
adt) {
2956 "PointCloud Expander",
2978 return ICON_VOLUME_DATA;
3059 return ICON_PHYSICS;
3115 "Simulation Expander",
3137 return ICON_GREASEPENCIL;
3196 "GPencil DS Expander",
3218 return ICON_SEQUENCE;
3277 "Movieclip Expander",
3323 return (*prop !=
NULL);
3421 return ICON_GREASEPENCIL;
3472 "GPencil Datablock",
3508 return (*prop !=
NULL);
3600 return ICON_MOD_MASK;
3677 if (masklay && name) {
3689 return (*prop !=
NULL);
3773 bool nonSolo =
false;
3804 return (*prop !=
NULL);
3916 return ICON_ACTION_TWEAK;
4010 return (*prop !=
NULL);
4070 "NLA Active Action",
4188 for (; indent_level > 0; indent_level--) {
4198 acf->
name(ale, name);
4208 printf(
"ChanType: <Unknown - %d>\n", ale->
type);
4211 printf(
"<Invalid channel - NULL>\n");
4240 const int *val = (
int *)
ptr;
4243 return ((*val) & flag) == 0;
4245 return ((*val) & flag) != 0;
4249 const short *val = (
short *)
ptr;
4252 return ((*val) & flag) == 0;
4254 return ((*val) & flag) != 0;
4258 const char *val = (
char *)
ptr;
4261 return ((*val) & flag) == 0;
4263 return ((*val) & flag) != 0;
4275 #define ACF_SETTING_SET(sval, sflag, smode) \
4278 if (smode == ACHANNEL_SETFLAG_INVERT) { \
4279 (sval) ^= (sflag); \
4281 else if (smode == ACHANNEL_SETFLAG_ADD) { \
4282 (sval) &= ~(sflag); \
4285 (sval) |= (sflag); \
4289 if (smode == ACHANNEL_SETFLAG_INVERT) { \
4290 (sval) ^= (sflag); \
4292 else if (smode == ACHANNEL_SETFLAG_ADD) { \
4293 (sval) |= (sflag); \
4296 (sval) &= ~(sflag); \
4329 int *val = (
int *)
ptr;
4335 short *val = (
short *)
ptr;
4341 char *val = (
char *)
ptr;
4353 #define ICON_WIDTH (0.85f * U.widget_unit)
4355 #define SLIDER_WIDTH (4 * U.widget_unit)
4357 #define RENAME_TEXT_MIN_WIDTH (U.widget_unit)
4359 #define GRAPH_COLOR_BAND_WIDTH (0.3f * U.widget_unit)
4361 #define GRAPH_ICON_VISIBILITY_OFFSET (GRAPH_COLOR_BAND_WIDTH * 1.5f)
4366 size_t channel_index)
4385 short selected, offset;
4386 float y, ymid, ytext;
4402 y = (ymaxc - yminc) / 2 + yminc;
4405 ytext =
y - 0.2f *
U.widget_unit;
4504 acf->
name(ale, name);
4545 short draw_sliders = 0;
4546 float ymin_ofs = 0.0f;
4615 if ((draw_sliders) &&
4626 v2d->
cur.
xmax - (
float)offset,
4673 if (ale_setting->
id) {
4730 ID *
id = (
ID *)id_poin;
4752 &nla_cache, &id_ptr, adt, &anim_eval_context);
4769 reports,
ptr, prop, fcu, &anim_eval_context, ts->
keyframe_type, nla_context, flag);
4787 Key *key = (
Key *)key_poin;
4808 &nla_cache, &id_ptr, key->
adt, &anim_eval_context);
4831 &anim_eval_context, remapped_frame);
4836 &remapped_anim_eval_context,
4911 short ptrsize, butType;
4913 bool usetoggle =
true;
4916 const char *tooltip;
4929 icon = ICON_HIDE_ON;
4932 tooltip =
TIP_(
"F-Curve visibility in Graph Editor");
4935 tooltip =
TIP_(
"Grease Pencil layer is visible in the viewport");
4938 tooltip =
TIP_(
"Channels are visible in Graph Editor for editing");
4943 icon = ICON_UNPINNED;
4944 tooltip =
TIP_(
"Channels are visible in Graph Editor for editing");
4948 icon = ICON_MODIFIER_OFF;
4949 tooltip =
TIP_(
"Enable F-Curve modifiers");
4954 icon = ICON_TRIA_RIGHT;
4955 tooltip =
TIP_(
"Make channels grouped under this channel visible");
4960 icon = ICON_SOLO_OFF;
4962 "NLA Track is the only one evaluated in this animation data-block, with all others "
4971 icon = ICON_UNLOCKED;
4974 tooltip =
TIP_(
"Editability of keyframes for this channel");
4977 tooltip =
TIP_(
"Editability of NLA Strips in this track");
4982 icon = ((
enabled) ? ICON_CHECKBOX_DEHLT : ICON_CHECKBOX_HLT);
4986 tooltip =
TIP_(
"Does F-Curve contribute to result");
4990 "Temporarily disable NLA stack evaluation (i.e. only the active action is evaluated)");
4994 "Shows all keyframes during animation playback and enabled all frames for editing "
4995 "(uncheck to use only the current keyframe during animation playback and editing)");
4998 tooltip =
TIP_(
"Do channels contribute to result (toggle channel muting)");
5004 icon = ICON_UNPINNED;
5007 tooltip =
TIP_(
"Display action without any time remapping (when unpinned)");
5141 size_t channel_index)
5155 short offset = rect->
xmin;
5210 if (is_being_renamed) {
5263 offset = (int)rect->
xmax;
5266 if (v2d && !is_being_renamed) {
5267 short draw_sliders = 0;
5329 "NLA_OT_action_pushdown",
5339 RNA_int_set(opptr_b,
"channel_index", channel_index);
5357 if (((draw_sliders) &&
ELEM(ale->
type,
5405 char *rna_path =
NULL;
5406 int array_index = 0;
5407 short free_path = 0;
5430 char *gp_rna_path =
NULL;
5465 icon = ICON_LAYER_ACTIVE;
5467 icon = ICON_MOD_MASK;
5470 icon = ICON_LAYER_ACTIVE;
typedef float(TangentPoint)[2]
struct AnimData * BKE_animdata_from_id(struct ID *id)
void BKE_animsys_free_nla_keyframing_context_cache(struct ListBase *cache)
AnimationEvalContext BKE_animsys_eval_context_construct(struct Depsgraph *depsgraph, float eval_time)
struct NlaKeyframingContext * BKE_animsys_get_nla_keyframing_context(struct ListBase *cache, struct PointerRNA *ptr, struct AnimData *adt, const struct AnimationEvalContext *anim_eval_context)
AnimationEvalContext BKE_animsys_eval_context_construct_at(const AnimationEvalContext *anim_eval_context, float eval_time)
struct Scene * CTX_data_scene(const bContext *C)
struct ReportList * CTX_wm_reports(const bContext *C)
struct Depsgraph * CTX_data_depsgraph_pointer(const bContext *C)
struct Main * CTX_data_main(const bContext *C)
short BKE_curve_type_get(const struct Curve *cu)
char * BKE_keyblock_curval_rnapath_get(struct Key *key, struct KeyBlock *kb)
void BKE_nlatrack_solo_toggle(struct AnimData *adt, struct NlaTrack *nlt)
float BKE_nla_tweakedit_remap(struct AnimData *adt, float cframe, short mode)
MINLINE int round_fl_to_int(float a)
void rgb_uchar_to_float(float r_col[3], const unsigned char col_ub[3])
MINLINE void copy_v3_v3_uchar(unsigned char r[3], const unsigned char a[3])
MINLINE void copy_v3_v3(float r[3], const float a[3])
BLI_INLINE float BLI_rctf_cent_y(const struct rctf *rct)
BLI_INLINE int BLI_rcti_size_x(const struct rcti *rct)
BLI_INLINE float BLI_rctf_size_y(const struct rctf *rct)
size_t BLI_snprintf(char *__restrict dst, size_t maxncpy, const char *__restrict format,...) ATTR_NONNULL(1
char * BLI_strncpy(char *__restrict dst, const char *__restrict src, const size_t maxncpy) ATTR_NONNULL()
#define POINTER_FROM_INT(i)
#define POINTER_AS_INT(i)
struct Depsgraph Depsgraph
void DEG_id_tag_update(struct ID *id, int flag)
@ ID_RECALC_ANIMATION_NO_FLUSH
#define ID_IS_LINKED(_id)
@ ADS_FLAG_SUMMARY_COLLAPSED
@ ADT_CURVES_ALWAYS_VISIBLE
@ ADT_NLA_SKEYS_COLLAPSED
Object is a sort of wrapper for general info.
@ USER_ANIM_SHOW_CHANNEL_GROUP_COLORS
#define ACHANNEL_BUTTON_WIDTH
void nla_action_get_color(struct AnimData *adt, struct bAction *act, float color[4])
@ ACHANNEL_SETTING_ALWAYS_VISIBLE
@ ACHANNEL_SETTING_PINNED
@ ACHANNEL_SETTING_PROTECT
@ ACHANNEL_SETTING_VISIBLE
@ ACHANNEL_SETTING_EXPAND
@ ACHANNEL_SETTING_MOD_OFF
@ ACHANNEL_SETTING_SELECT
@ ANIMFILTER_DATA_VISIBLE
@ ANIMFILTER_LIST_CHANNELS
_GL_VOID GLfloat value _GL_VOID_RET _GL_VOID const GLuint GLboolean *residences _GL_BOOL_RET _GL_VOID GLsizei GLfloat GLfloat GLfloat GLfloat const GLubyte *bitmap _GL_VOID_RET _GL_VOID GLenum const void *lists _GL_VOID_RET _GL_VOID const GLdouble *equation _GL_VOID_RET _GL_VOID GLdouble GLdouble blue _GL_VOID_RET _GL_VOID GLfloat GLfloat blue _GL_VOID_RET _GL_VOID GLint GLint blue _GL_VOID_RET _GL_VOID GLshort GLshort blue _GL_VOID_RET _GL_VOID GLubyte GLubyte blue _GL_VOID_RET _GL_VOID GLuint GLuint blue _GL_VOID_RET _GL_VOID GLushort GLushort blue _GL_VOID_RET _GL_VOID GLbyte GLbyte GLbyte alpha _GL_VOID_RET _GL_VOID GLdouble GLdouble GLdouble alpha _GL_VOID_RET _GL_VOID GLfloat GLfloat GLfloat alpha _GL_VOID_RET _GL_VOID GLint GLint GLint alpha _GL_VOID_RET _GL_VOID GLshort GLshort GLshort alpha _GL_VOID_RET _GL_VOID GLubyte GLubyte GLubyte alpha _GL_VOID_RET _GL_VOID GLuint GLuint GLuint alpha _GL_VOID_RET _GL_VOID GLushort GLushort GLushort alpha _GL_VOID_RET _GL_VOID GLenum mode _GL_VOID_RET _GL_VOID GLint GLsizei width
_GL_VOID GLfloat value _GL_VOID_RET _GL_VOID const GLuint GLboolean *residences _GL_BOOL_RET _GL_VOID GLsizei GLfloat GLfloat GLfloat GLfloat const GLubyte *bitmap _GL_VOID_RET _GL_VOID GLenum type
_GL_VOID GLfloat value _GL_VOID_RET _GL_VOID const GLuint GLboolean *residences _GL_BOOL_RET _GL_VOID GLsizei GLfloat GLfloat GLfloat GLfloat const GLubyte *bitmap _GL_VOID_RET _GL_VOID GLenum const void *lists _GL_VOID_RET _GL_VOID const GLdouble *equation _GL_VOID_RET _GL_VOID GLdouble GLdouble blue _GL_VOID_RET _GL_VOID GLfloat GLfloat blue _GL_VOID_RET _GL_VOID GLint GLint blue _GL_VOID_RET _GL_VOID GLshort GLshort blue _GL_VOID_RET _GL_VOID GLubyte GLubyte blue _GL_VOID_RET _GL_VOID GLuint GLuint blue _GL_VOID_RET _GL_VOID GLushort GLushort blue _GL_VOID_RET _GL_VOID GLbyte GLbyte GLbyte alpha _GL_VOID_RET _GL_VOID GLdouble GLdouble GLdouble alpha _GL_VOID_RET _GL_VOID GLfloat GLfloat GLfloat alpha _GL_VOID_RET _GL_VOID GLint GLint GLint alpha _GL_VOID_RET _GL_VOID GLshort GLshort GLshort alpha _GL_VOID_RET _GL_VOID GLubyte GLubyte GLubyte alpha _GL_VOID_RET _GL_VOID GLuint GLuint GLuint alpha _GL_VOID_RET _GL_VOID GLushort GLushort GLushort alpha _GL_VOID_RET _GL_VOID GLenum mode _GL_VOID_RET _GL_VOID GLint y
@ GPU_SHADER_2D_UNIFORM_COLOR
void GPU_blend(eGPUBlend blend)
void GPU_line_width(float width)
Read Guarded memory(de)allocation.
StructRNA RNA_ActionGroup
StructRNA RNA_GPencilLayer
uiBut * uiDefIconButBitC(uiBlock *block, int type, int bit, int retval, int icon, int x, int y, short width, short height, char *poin, float min, float max, float a1, float a2, const char *tip)
void UI_draw_roundbox_4fv(const struct rctf *rect, bool filled, float rad, const float col[4])
struct PointerRNA * UI_but_operator_ptr_get(uiBut *but)
uiBut * uiDefAutoButR(uiBlock *block, struct PointerRNA *ptr, struct PropertyRNA *prop, int index, const char *name, int icon, int x, int y, int width, int height)
void UI_fontstyle_draw_simple(const struct uiFontStyle *fs, float x, float y, const char *str, const uchar col[4])
void UI_draw_roundbox_3fv_alpha(const struct rctf *rect, bool filled, float rad, const float col[3], float alpha)
void UI_draw_roundbox_corner_set(int type)
uiBut * uiDefIconButBitS(uiBlock *block, int type, int bit, int retval, int icon, int x, int y, short width, short height, short *poin, float min, float max, float a1, float a2, const char *tip)
uiBut * uiDefButR(uiBlock *block, int type, int retval, const char *str, int x, int y, short width, short height, struct PointerRNA *ptr, const char *propname, int index, float min, float max, float a1, float a2, const char *tip)
void UI_block_emboss_set(uiBlock *block, eUIEmbossType emboss)
bool UI_but_active_only(const struct bContext *C, struct ARegion *region, uiBlock *block, uiBut *but)
void UI_but_func_set(uiBut *but, uiButHandleFunc func, void *arg1, void *arg2)
uiBut * UI_context_active_but_prop_get(const struct bContext *C, struct PointerRNA *r_ptr, struct PropertyRNA **r_prop, int *r_index)
void UI_but_funcN_set(uiBut *but, uiButHandleNFunc funcN, void *argN, void *arg2)
uiBut * uiDefIconButBitI(uiBlock *block, int type, int bit, int retval, int icon, int x, int y, short width, short height, int *poin, float min, float max, float a1, float a2, const char *tip)
uiBut * uiDefIconButO(uiBlock *block, int type, const char *opname, int opcontext, int icon, int x, int y, short width, short height, const char *tip)
void UI_but_flag_enable(uiBut *but, int flag)
void UI_icon_draw(float x, float y, int icon_id)
void UI_GetThemeColor3fv(int colorid, float col[3])
@ TH_DOPESHEET_CHANNELSUBOB
void UI_GetThemeColorShade3fv(int colorid, int offset, float col[3])
void UI_GetThemeColor4ubv(int colorid, unsigned char col[4])
static void acf_gpl_name(bAnimListElem *ale, char *name)
static bAnimChannelType ACF_DSWOR
static void acf_nla_controls_backdrop(bAnimContext *ac, bAnimListElem *ale, float yminc, float ymaxc)
void ANIM_channel_draw_widgets(const bContext *C, bAnimContext *ac, bAnimListElem *ale, uiBlock *block, rctf *rect, size_t channel_index)
static bAnimChannelType ACF_DSPART
static int acf_nlaaction_setting_flag(bAnimContext *UNUSED(ac), eAnimChannel_Settings setting, bool *neg)
static bAnimChannelType ACF_DSNTREE
static short acf_generic_group_offset(bAnimContext *ac, bAnimListElem *ale)
static short acf_generic_indention_flexible(bAnimContext *UNUSED(ac), bAnimListElem *ale)
static void acf_nlaaction_color(bAnimContext *UNUSED(ac), bAnimListElem *ale, float r_color[3])
static bool acf_shapekey_setting_valid(bAnimContext *UNUSED(ac), bAnimListElem *UNUSED(ale), eAnimChannel_Settings setting)
static int acf_object_icon(bAnimListElem *ale)
static void * acf_gpl_setting_ptr(bAnimListElem *ale, eAnimChannel_Settings UNUSED(setting), short *type)
static int acf_mask_icon(bAnimListElem *UNUSED(ale))
static void acf_object_name(bAnimListElem *ale, char *name)
static bAnimChannelType ACF_SCENE
static void acf_nlaaction_backdrop(bAnimContext *ac, bAnimListElem *ale, float yminc, float ymaxc)
static int acf_dscur_setting_flag(bAnimContext *UNUSED(ac), eAnimChannel_Settings setting, bool *neg)
static short acf_generic_basic_offset(bAnimContext *ac, bAnimListElem *ale)
static void * acf_dsmclip_setting_ptr(bAnimListElem *ale, eAnimChannel_Settings setting, short *type)
static void acf_filldrivers_name(bAnimListElem *UNUSED(ale), char *name)
static bAnimChannelType ACF_MASKLAYER
static void * acf_dsmball_setting_ptr(bAnimListElem *ale, eAnimChannel_Settings setting, short *type)
#define GRAPH_ICON_VISIBILITY_OFFSET
#define GET_ACF_FLAG_PTR(ptr, type)
static bAnimChannelType ACF_NLACURVE
static bool acf_gpd_setting_valid(bAnimContext *UNUSED(ac), bAnimListElem *UNUSED(ale), eAnimChannel_Settings setting)
static void * acf_dswor_setting_ptr(bAnimListElem *ale, eAnimChannel_Settings setting, short *type)
static int acf_dsmesh_setting_flag(bAnimContext *UNUSED(ac), eAnimChannel_Settings setting, bool *neg)
static bool acf_nlaaction_setting_valid(bAnimContext *UNUSED(ac), bAnimListElem *ale, eAnimChannel_Settings setting)
static int acf_dscur_icon(bAnimListElem *ale)
static void * acf_dscur_setting_ptr(bAnimListElem *ale, eAnimChannel_Settings setting, short *type)
static bAnimChannelType ACF_DSSIMULATION
static bAnimChannelType ACF_GPD
static bAnimChannelType ACF_DSLAT
void ANIM_channel_setting_set(bAnimContext *ac, bAnimListElem *ale, eAnimChannel_Settings setting, eAnimChannels_SetFlag mode)
static void draw_setting_widget(bAnimContext *ac, bAnimListElem *ale, const bAnimChannelType *acf, uiBlock *block, int xpos, int ypos, int setting)
static void * acf_shapekey_setting_ptr(bAnimListElem *ale, eAnimChannel_Settings setting, short *type)
static void * acf_dspart_setting_ptr(bAnimListElem *ale, eAnimChannel_Settings setting, short *type)
static int acf_gpl_setting_flag(bAnimContext *UNUSED(ac), eAnimChannel_Settings setting, bool *neg)
static int acf_dstex_icon(bAnimListElem *UNUSED(ale))
static void acf_nla_curve_name(bAnimListElem *ale, char *name)
static bAnimChannelType ACF_DSVOLUME
static bool acf_masklay_name_prop(bAnimListElem *ale, PointerRNA *ptr, PropertyRNA **prop)
static int acf_dsntree_icon(bAnimListElem *UNUSED(ale))
static int acf_nlaaction_icon(bAnimListElem *ale)
static bAnimChannelType ACF_DSMCLIP
static void * acf_nla_controls_setting_ptr(bAnimListElem *ale, eAnimChannel_Settings UNUSED(setting), short *type)
static int acf_fillactd_setting_flag(bAnimContext *UNUSED(ac), eAnimChannel_Settings setting, bool *neg)
static bool acf_dsskey_setting_valid(bAnimContext *ac, bAnimListElem *UNUSED(ale), eAnimChannel_Settings setting)
static bAnimChannelType ACF_NLATRACK
static int acf_dslight_setting_flag(bAnimContext *UNUSED(ac), eAnimChannel_Settings setting, bool *neg)
static int acf_dsvolume_icon(bAnimListElem *UNUSED(ale))
static int acf_dspart_setting_flag(bAnimContext *UNUSED(ac), eAnimChannel_Settings setting, bool *neg)
static bool acf_fcurve_name_prop(bAnimListElem *ale, PointerRNA *ptr, PropertyRNA **prop)
static bool acf_filldrivers_setting_valid(bAnimContext *UNUSED(ac), bAnimListElem *UNUSED(ale), eAnimChannel_Settings setting)
static int acf_object_setting_flag(bAnimContext *UNUSED(ac), eAnimChannel_Settings setting, bool *neg)
static bAnimChannelType ACF_DSPOINTCLOUD
static bAnimChannelType ACF_SUMMARY
static void acf_summary_backdrop(bAnimContext *ac, bAnimListElem *ale, float yminc, float ymaxc)
static void acf_generic_root_color(bAnimContext *UNUSED(ac), bAnimListElem *UNUSED(ale), float r_color[3])
static void * acf_group_setting_ptr(bAnimListElem *ale, eAnimChannel_Settings UNUSED(setting), short *type)
static bool acf_object_name_prop(bAnimListElem *ale, PointerRNA *ptr, PropertyRNA **prop)
static int acf_dscachefile_icon(bAnimListElem *ale)
static int acf_nlatrack_setting_flag(bAnimContext *UNUSED(ac), eAnimChannel_Settings setting, bool *neg)
static int acf_scene_setting_flag(bAnimContext *UNUSED(ac), eAnimChannel_Settings setting, bool *neg)
static bAnimChannelType ACF_DSMBALL
void ANIM_channel_draw(bAnimContext *ac, bAnimListElem *ale, float yminc, float ymaxc, size_t channel_index)
static bAnimChannelType ACF_DSLINESTYLE
static bAnimChannelType ACF_DSHAIR
static void acf_generic_idblock_name(bAnimListElem *ale, char *name)
static void * acf_fcurve_setting_ptr(bAnimListElem *ale, eAnimChannel_Settings UNUSED(setting), short *type)
static void * acf_dslat_setting_ptr(bAnimListElem *ale, eAnimChannel_Settings setting, short *type)
static int acf_dspointcloud_setting_flag(bAnimContext *UNUSED(ac), eAnimChannel_Settings setting, bool *neg)
static void * acf_dsarm_setting_ptr(bAnimListElem *ale, eAnimChannel_Settings setting, short *type)
static int acf_dsskey_setting_flag(bAnimContext *UNUSED(ac), eAnimChannel_Settings setting, bool *neg)
static void * acf_dsskey_setting_ptr(bAnimListElem *ale, eAnimChannel_Settings setting, short *type)
static bool achannel_is_being_renamed(const bAnimContext *ac, const bAnimChannelType *acf, size_t channel_index)
static void acf_group_name(bAnimListElem *ale, char *name)
#define RENAME_TEXT_MIN_WIDTH
static void acf_gpd_color(bAnimContext *UNUSED(ac), bAnimListElem *UNUSED(ale), float r_color[3])
static bAnimChannelType ACF_FCURVE
static void * acf_dsntree_setting_ptr(bAnimListElem *ale, eAnimChannel_Settings setting, short *type)
static int acf_filldrivers_setting_flag(bAnimContext *UNUSED(ac), eAnimChannel_Settings setting, bool *neg)
static bAnimChannelType ACF_DSSPK
static int acf_dsmclip_setting_flag(bAnimContext *UNUSED(ac), eAnimChannel_Settings setting, bool *neg)
static bool acf_scene_setting_valid(bAnimContext *ac, bAnimListElem *UNUSED(ale), eAnimChannel_Settings setting)
static void acf_nlatrack_name(bAnimListElem *ale, char *name)
static void * acf_summary_setting_ptr(bAnimListElem *ale, eAnimChannel_Settings setting, short *type)
static int acf_dspart_icon(bAnimListElem *UNUSED(ale))
static bAnimChannelType ACF_DSTEX
static void achannel_setting_slider_cb(bContext *C, void *id_poin, void *fcu_poin)
static void * acf_dslinestyle_setting_ptr(bAnimListElem *ale, eAnimChannel_Settings setting, short *type)
static int acf_dssimulation_setting_flag(bAnimContext *UNUSED(ac), eAnimChannel_Settings setting, bool *neg)
static short acf_dsntree_offset(bAnimContext *ac, bAnimListElem *ale)
static int acf_summary_setting_flag(bAnimContext *UNUSED(ac), eAnimChannel_Settings setting, bool *neg)
static bool acf_generic_idfill_name_prop(bAnimListElem *ale, PointerRNA *ptr, PropertyRNA **prop)
static bool acf_gpl_setting_valid(bAnimContext *UNUSED(ac), bAnimListElem *UNUSED(ale), eAnimChannel_Settings setting)
static int acf_gpd_setting_flag(bAnimContext *UNUSED(ac), eAnimChannel_Settings setting, bool *neg)
static bool acf_show_channel_colors(void)
static int acf_dsmat_icon(bAnimListElem *UNUSED(ale))
static short acf_generic_indention_0(bAnimContext *UNUSED(ac), bAnimListElem *UNUSED(ale))
static bAnimChannelType ACF_FILLACTD
static void * acf_dsgpencil_setting_ptr(bAnimListElem *ale, eAnimChannel_Settings setting, short *type)
static void achannel_nlatrack_solo_widget_cb(bContext *C, void *ale_poin, void *UNUSED(arg2))
static void acf_group_color(bAnimContext *UNUSED(ac), bAnimListElem *ale, float r_color[3])
static bool acf_nlatrack_name_prop(bAnimListElem *ale, PointerRNA *ptr, PropertyRNA **prop)
static void acf_group_backdrop(bAnimContext *ac, bAnimListElem *ale, float yminc, float ymaxc)
static void * acf_dsmat_setting_ptr(bAnimListElem *ale, eAnimChannel_Settings setting, short *type)
#define ANIM_CHAN_NAME_SIZE
static bool acf_fcurve_setting_valid(bAnimContext *ac, bAnimListElem *ale, eAnimChannel_Settings setting)
static int acf_dstex_setting_flag(bAnimContext *UNUSED(ac), eAnimChannel_Settings setting, bool *neg)
static bool acf_nlatrack_setting_valid(bAnimContext *UNUSED(ac), bAnimListElem *ale, eAnimChannel_Settings setting)
static int acf_dsarm_setting_flag(bAnimContext *UNUSED(ac), eAnimChannel_Settings setting, bool *neg)
static short acf_nodetree_rootType_offset(bNodeTree *ntree)
static int acf_dscam_icon(bAnimListElem *UNUSED(ale))
void ANIM_channel_debug_print_info(bAnimListElem *ale, short indent_level)
static bool acf_shapekey_name_prop(bAnimListElem *ale, PointerRNA *ptr, PropertyRNA **prop)
static void * acf_dssimulation_setting_ptr(bAnimListElem *ale, eAnimChannel_Settings setting, short *type)
static bool acf_masklay_setting_valid(bAnimContext *UNUSED(ac), bAnimListElem *UNUSED(ale), eAnimChannel_Settings setting)
#define ACF_SETTING_SET(sval, sflag, smode)
static void * acf_dspointcloud_setting_ptr(bAnimListElem *ale, eAnimChannel_Settings setting, short *type)
static void achannel_setting_widget_cb(bContext *C, void *UNUSED(arg1), void *UNUSED(arg2))
static void * acf_nlatrack_setting_ptr(bAnimListElem *ale, eAnimChannel_Settings UNUSED(setting), short *type)
static int acf_dslinestyle_setting_flag(bAnimContext *UNUSED(ac), eAnimChannel_Settings setting, bool *neg)
static void acf_nlaaction_name(bAnimListElem *ale, char *name)
static void * acf_dsvolume_setting_ptr(bAnimListElem *ale, eAnimChannel_Settings setting, short *type)
static bAnimChannelType ACF_DSGPENCIL
static bAnimChannelType ACF_MASKDATA
static int acf_dsspk_setting_flag(bAnimContext *UNUSED(ac), eAnimChannel_Settings setting, bool *neg)
static int acf_scene_icon(bAnimListElem *UNUSED(ale))
#define GRAPH_COLOR_BAND_WIDTH
static void * acf_fillactd_setting_ptr(bAnimListElem *ale, eAnimChannel_Settings setting, short *type)
static int acf_dslat_setting_flag(bAnimContext *UNUSED(ac), eAnimChannel_Settings setting, bool *neg)
static int acf_dsntree_setting_flag(bAnimContext *UNUSED(ac), eAnimChannel_Settings setting, bool *neg)
static int acf_mask_setting_flag(bAnimContext *UNUSED(ac), eAnimChannel_Settings setting, bool *neg)
static int acf_dsvolume_setting_flag(bAnimContext *UNUSED(ac), eAnimChannel_Settings setting, bool *neg)
static void acf_summary_name(bAnimListElem *UNUSED(ale), char *name)
static bAnimChannelType ACF_GROUP
static bool acf_group_name_prop(bAnimListElem *ale, PointerRNA *ptr, PropertyRNA **prop)
static bAnimChannelType ACF_OBJECT
static int acf_nla_controls_icon(bAnimListElem *UNUSED(ale))
static bAnimChannelType ACF_FILLDRIVERS
static void * acf_dstex_setting_ptr(bAnimListElem *ale, eAnimChannel_Settings setting, short *type)
static int acf_nla_controls_setting_flag(bAnimContext *UNUSED(ac), eAnimChannel_Settings setting, bool *neg)
static int acf_dscachefile_setting_flag(bAnimContext *ac, eAnimChannel_Settings setting, bool *neg)
static int acf_dshair_icon(bAnimListElem *UNUSED(ale))
static int acf_dsmesh_icon(bAnimListElem *UNUSED(ale))
static void acf_generic_channel_backdrop(bAnimContext *ac, bAnimListElem *ale, float yminc, float ymaxc)
static int acf_gpd_icon(bAnimListElem *UNUSED(ale))
static int acf_dslat_icon(bAnimListElem *UNUSED(ale))
static void achannel_setting_slider_nla_curve_cb(bContext *C, void *UNUSED(id_poin), void *fcu_poin)
static int acf_dslight_icon(bAnimListElem *UNUSED(ale))
static void * acf_dslight_setting_ptr(bAnimListElem *ale, eAnimChannel_Settings setting, short *type)
static bAnimChannelType ACF_NLAACTION
static int acf_group_setting_flag(bAnimContext *ac, eAnimChannel_Settings setting, bool *neg)
static bool acf_group_setting_valid(bAnimContext *ac, bAnimListElem *UNUSED(ale), eAnimChannel_Settings setting)
static bAnimChannelType ACF_DSMAT
static int acf_dssimulation_icon(bAnimListElem *UNUSED(ale))
static void acf_nla_controls_color(bAnimContext *UNUSED(ac), bAnimListElem *UNUSED(ale), float r_color[3])
static bAnimChannelType ACF_DSCUR
static int acf_dsspk_icon(bAnimListElem *UNUSED(ale))
static void acf_summary_color(bAnimContext *UNUSED(ac), bAnimListElem *UNUSED(ale), float r_color[3])
static void * acf_dscachefile_setting_ptr(bAnimListElem *ale, eAnimChannel_Settings setting, short *type)
static int acf_dsgpencil_icon(bAnimListElem *UNUSED(ale))
static void * acf_mask_setting_ptr(bAnimListElem *ale, eAnimChannel_Settings UNUSED(setting), short *type)
short ANIM_channel_setting_get(bAnimContext *ac, bAnimListElem *ale, eAnimChannel_Settings setting)
static int acf_dsmclip_icon(bAnimListElem *UNUSED(ale))
static short acf_dstex_offset(bAnimContext *UNUSED(ac), bAnimListElem *UNUSED(ale))
static bool acf_fillactd_setting_valid(bAnimContext *UNUSED(ac), bAnimListElem *UNUSED(ale), eAnimChannel_Settings setting)
static int acf_dsmball_icon(bAnimListElem *UNUSED(ale))
static bAnimChannelType ACF_DSLIGHT
static bAnimChannelType ACF_DSCACHEFILE
static bAnimChannelType ACF_DSARM
static int acf_dsmball_setting_flag(bAnimContext *UNUSED(ac), eAnimChannel_Settings setting, bool *neg)
static bAnimChannelType ACF_GPL
static int acf_dsarm_icon(bAnimListElem *UNUSED(ale))
static void * acf_dshair_setting_ptr(bAnimListElem *ale, eAnimChannel_Settings setting, short *type)
static void acf_generic_root_backdrop(bAnimContext *ac, bAnimListElem *ale, float yminc, float ymaxc)
static int acf_masklay_setting_flag(bAnimContext *UNUSED(ac), eAnimChannel_Settings setting, bool *neg)
static void acf_nlatrack_color(bAnimContext *UNUSED(ac), bAnimListElem *ale, float r_color[3])
static void acf_nla_controls_name(bAnimListElem *UNUSED(ale), char *name)
static void * acf_object_setting_ptr(bAnimListElem *ale, eAnimChannel_Settings setting, short *type)
static int acf_fcurve_setting_flag(bAnimContext *UNUSED(ac), eAnimChannel_Settings setting, bool *neg)
static int acf_dsskey_icon(bAnimListElem *UNUSED(ale))
static bAnimChannelType ACF_DSCAM
static void * acf_gpd_setting_ptr(bAnimListElem *ale, eAnimChannel_Settings UNUSED(setting), short *type)
static bAnimChannelType ACF_DSMESH
const bAnimChannelType * ANIM_channel_get_typeinfo(bAnimListElem *ale)
static short acf_generic_indention_1(bAnimContext *UNUSED(ac), bAnimListElem *UNUSED(ale))
static bool acf_object_setting_valid(bAnimContext *ac, bAnimListElem *ale, eAnimChannel_Settings setting)
static int acf_dsgpencil_setting_flag(bAnimContext *UNUSED(ac), eAnimChannel_Settings setting, bool *neg)
static int acf_dswor_icon(bAnimListElem *UNUSED(ale))
static void * acf_dsspk_setting_ptr(bAnimListElem *ale, eAnimChannel_Settings setting, short *type)
static bool acf_generic_dataexpand_setting_valid(bAnimContext *ac, bAnimListElem *UNUSED(ale), eAnimChannel_Settings setting)
static void achannel_setting_slider_shapekey_cb(bContext *C, void *key_poin, void *kb_poin)
static bool acf_mask_setting_valid(bAnimContext *UNUSED(ac), bAnimListElem *UNUSED(ale), eAnimChannel_Settings setting)
static void * acf_filldrivers_setting_ptr(bAnimListElem *ale, eAnimChannel_Settings setting, short *type)
static void acf_fcurve_name(bAnimListElem *ale, char *name)
static int acf_dspointcloud_icon(bAnimListElem *UNUSED(ale))
static int acf_dslinestyle_icon(bAnimListElem *UNUSED(ale))
static void acf_generic_channel_color(bAnimContext *ac, bAnimListElem *ale, float r_color[3])
static bool acf_nlaaction_name_prop(bAnimListElem *ale, PointerRNA *ptr, PropertyRNA **prop)
static void acf_generic_dataexpand_color(bAnimContext *UNUSED(ac), bAnimListElem *UNUSED(ale), float r_color[3])
static void * acf_scene_setting_ptr(bAnimListElem *ale, eAnimChannel_Settings setting, short *type)
static bool acf_nla_controls_setting_valid(bAnimContext *UNUSED(ac), bAnimListElem *UNUSED(ale), eAnimChannel_Settings setting)
static int acf_fillactd_icon(bAnimListElem *UNUSED(ale))
static int acf_filldrivers_icon(bAnimListElem *UNUSED(ale))
static bAnimChannelType ACF_SHAPEKEY
static void * acf_nlaaction_setting_ptr(bAnimListElem *ale, eAnimChannel_Settings UNUSED(setting), short *type)
static bAnimChannelType * animchannelTypeInfo[ANIMTYPE_NUM_TYPES]
static int acf_dscam_setting_flag(bAnimContext *UNUSED(ac), eAnimChannel_Settings setting, bool *neg)
static int acf_dshair_setting_flag(bAnimContext *UNUSED(ac), eAnimChannel_Settings setting, bool *neg)
static void acf_generic_dataexpand_backdrop(bAnimContext *ac, bAnimListElem *ale, float yminc, float ymaxc)
static void achannel_setting_flush_widget_cb(bContext *C, void *ale_npoin, void *setting_wrap)
static int acf_shapekey_setting_flag(bAnimContext *UNUSED(ac), eAnimChannel_Settings setting, bool *neg)
static bAnimChannelType ACF_NLACONTROLS
static void acf_gpencil_channel_color(bAnimContext *ac, bAnimListElem *ale, float r_color[3])
static void ANIM_init_channel_typeinfo_data(void)
static bool acf_gpl_name_prop(bAnimListElem *ale, PointerRNA *ptr, PropertyRNA **prop)
static bool acf_generic_idblock_name_prop(bAnimListElem *ale, PointerRNA *ptr, PropertyRNA **prop)
static void acf_shapekey_name(bAnimListElem *ale, char *name)
static bAnimChannelType ACF_DSSKEY
static void acf_masklay_name(bAnimListElem *ale, char *name)
static void * acf_dsmesh_setting_ptr(bAnimListElem *ale, eAnimChannel_Settings setting, short *type)
static void acf_mask_color(bAnimContext *UNUSED(ac), bAnimListElem *UNUSED(ale), float r_color[3])
static int acf_dsmat_setting_flag(bAnimContext *UNUSED(ac), eAnimChannel_Settings setting, bool *neg)
static int acf_dswor_setting_flag(bAnimContext *UNUSED(ac), eAnimChannel_Settings setting, bool *neg)
static void * acf_dscam_setting_ptr(bAnimListElem *ale, eAnimChannel_Settings setting, short *type)
static void * acf_masklay_setting_ptr(bAnimListElem *ale, eAnimChannel_Settings UNUSED(setting), short *type)
static bool acf_summary_setting_valid(bAnimContext *UNUSED(ac), bAnimListElem *UNUSED(ale), eAnimChannel_Settings setting)
void ANIM_flush_setting_anim_channels(bAnimContext *ac, ListBase *anim_data, bAnimListElem *ale_setting, eAnimChannel_Settings setting, eAnimChannels_SetFlag mode)
void ANIM_animdata_freelist(ListBase *anim_data)
bool ANIM_animdata_get_context(const bContext *C, bAnimContext *ac)
size_t ANIM_animdata_filter(bAnimContext *ac, ListBase *anim_data, eAnimFilter_Flags filter_mode, void *data, eAnimCont_Types datatype)
int getname_anim_fcurve(char *name, ID *id, FCurve *fcu)
FreestyleLineStyle linestyle
const Depsgraph * depsgraph
DO_INLINE void filter(lfVector *V, fmatrix3x3 *S)
bAction * ED_id_action_ensure(Main *bmain, ID *id)
bool fcurve_frame_has_keyframe(FCurve *fcu, float frame, short filter)
bool insert_keyframe_direct(ReportList *reports, PointerRNA ptr, PropertyRNA *prop, FCurve *fcu, const AnimationEvalContext *anim_eval_context, eBezTriple_KeyframeType keytype, struct NlaKeyframingContext *nla_context, eInsertKeyFlags flag)
FCurve * ED_action_fcurve_ensure(struct Main *bmain, struct bAction *act, const char group[], struct PointerRNA *ptr, const char rna_path[], const int array_index)
eInsertKeyFlags ANIM_get_keyframing_flags(Scene *scene, const bool use_autokey_mode)
void(* MEM_freeN)(void *vmemh)
void *(* MEM_dupallocN)(const void *vmemh)
void RNA_pointer_create(ID *id, StructRNA *type, void *data, PointerRNA *r_ptr)
void RNA_id_pointer_create(ID *id, PointerRNA *r_ptr)
const char * RNA_property_identifier(const PropertyRNA *prop)
void RNA_int_set(PointerRNA *ptr, const char *name, int value)
PropertyRNA * RNA_struct_find_property(PointerRNA *ptr, const char *identifier)
char * RNA_path_from_ID_to_property(PointerRNA *ptr, PropertyRNA *prop)
PropertyRNA * RNA_struct_type_find_property(StructRNA *srna, const char *identifier)
PropertyRNA * RNA_struct_name_property(const StructRNA *type)
bool RNA_path_resolve_property(PointerRNA *ptr, const char *path, PointerRNA *r_ptr, PropertyRNA **r_prop)
const char * RNA_property_ui_name(const PropertyRNA *prop)
struct ToolSettings * toolsettings
void *(* setting_ptr)(bAnimListElem *ale, eAnimChannel_Settings setting, short *type)
void(* name)(bAnimListElem *ale, char *name)
void(* get_backdrop_color)(bAnimContext *ac, bAnimListElem *ale, float r_color[3])
short(* get_offset)(bAnimContext *ac, bAnimListElem *ale)
bool(* name_prop)(bAnimListElem *ale, struct PointerRNA *ptr, struct PropertyRNA **prop)
void(* draw_backdrop)(bAnimContext *ac, bAnimListElem *ale, float yminc, float ymaxc)
const char * channel_type_name
bool(* has_setting)(bAnimContext *ac, bAnimListElem *ale, eAnimChannel_Settings setting)
short(* get_indent_level)(bAnimContext *ac, bAnimListElem *ale)
int(* setting_flag)(bAnimContext *ac, eAnimChannel_Settings setting, bool *neg)
int(* icon)(bAnimListElem *ale)
struct ID * fcurve_owner_id
ccl_device_inline float4 mask(const int4 &mask, const float4 &a)
void WM_event_add_notifier(const bContext *C, uint type, void *reference)