Blender V5.0
bAnimChannelType Struct Reference

#include <ED_anim_api.hh>

Public Attributes

const char * channel_type_name
eAnimChannel_Role channel_role
void(* get_backdrop_color )(bAnimContext *ac, bAnimListElem *ale, float r_color[3])
bool(* get_channel_color )(const bAnimListElem *ale, uint8_t r_color[3])
void(* draw_backdrop )(bAnimContext *ac, bAnimListElem *ale, float yminc, float ymaxc)
short(* get_indent_level )(bAnimContext *ac, bAnimListElem *ale)
short(* get_offset )(bAnimContext *ac, bAnimListElem *ale)
void(* name )(bAnimListElem *ale, char *name)
bool(* name_prop )(bAnimListElem *ale, PointerRNA *r_ptr, PropertyRNA **r_prop)
int(* icon )(bAnimListElem *ale)
bool(* has_setting )(bAnimContext *ac, bAnimListElem *ale, eAnimChannel_Settings setting)
int(* setting_flag )(bAnimContext *ac, eAnimChannel_Settings setting, bool *r_neg)
void *(* setting_ptr )(bAnimListElem *ale, eAnimChannel_Settings setting, short *r_type)
void(* setting_post_update )(Main &bmain, const bAnimListElem &ale, eAnimChannel_Settings setting)

Detailed Description

Drawing, mouse handling, and flag setting behavior.

Definition at line 678 of file ED_anim_api.hh.

Member Data Documentation

◆ channel_role

eAnimChannel_Role bAnimChannelType::channel_role

◆ channel_type_name

const char* bAnimChannelType::channel_type_name

Definition at line 681 of file ED_anim_api.hh.

Referenced by ANIM_channel_debug_print_info().

◆ draw_backdrop

void(* bAnimChannelType::draw_backdrop) (bAnimContext *ac, bAnimListElem *ale, float yminc, float ymaxc)

Draw backdrop strip for channel.

Definition at line 695 of file ED_anim_api.hh.

Referenced by ANIM_channel_draw().

◆ get_backdrop_color

void(* bAnimChannelType::get_backdrop_color) (bAnimContext *ac, bAnimListElem *ale, float r_color[3])

◆ get_channel_color

bool(* bAnimChannelType::get_channel_color) (const bAnimListElem *ale, uint8_t r_color[3])

Get RGB color that represents this channel.

Returns
true when r_color was updated, false when there is no color for this channel.

Definition at line 692 of file ED_anim_api.hh.

Referenced by ANIM_channel_draw_widgets(), and draw_backdrops().

◆ get_indent_level

short(* bAnimChannelType::get_indent_level) (bAnimContext *ac, bAnimListElem *ale)

Get depth of indentation (relative to the depth channel is nested at).

Definition at line 697 of file ED_anim_api.hh.

Referenced by acf_generic_basic_offset(), and acf_generic_channel_color().

◆ get_offset

◆ has_setting

bool(* bAnimChannelType::has_setting) (bAnimContext *ac, bAnimListElem *ale, eAnimChannel_Settings setting)

◆ icon

int(* bAnimChannelType::icon) (bAnimListElem *ale)

Get icon (for channel lists).

Definition at line 706 of file ED_anim_api.hh.

Referenced by ANIM_channel_draw(), and ANIM_channel_draw_widgets().

◆ name

void(* bAnimChannelType::name) (bAnimListElem *ale, char *name)

◆ name_prop

bool(* bAnimChannelType::name_prop) (bAnimListElem *ale, PointerRNA *r_ptr, PropertyRNA **r_prop)

Get RNA property+pointer for editing the name.

Definition at line 704 of file ED_anim_api.hh.

Referenced by achannel_is_being_renamed(), ANIM_channel_draw_widgets(), and rename_anim_channels().

◆ setting_flag

int(* bAnimChannelType::setting_flag) (bAnimContext *ac, eAnimChannel_Settings setting, bool *r_neg)

Get the flag used for this setting.

Definition at line 712 of file ED_anim_api.hh.

Referenced by ANIM_channel_debug_print_info(), ANIM_channel_setting_get(), ANIM_channel_setting_set(), and draw_setting_widget().

◆ setting_post_update

void(* bAnimChannelType::setting_post_update) (Main &bmain, const bAnimListElem &ale, eAnimChannel_Settings setting)

Called after a setting was changed via ANIM_channel_setting_set().

Parameters
aleis marked as const, as it could have been duplicated and taken out of context. This means that any hypothetical changes to ale->update, for example, will not be seen by any ANIM_animdata_update() call. So better to keep this const and avoid any manipulation. Also, because of the duplications, the ale's prev and next pointers will be dangling.

Definition at line 728 of file ED_anim_api.hh.

Referenced by achannel_setting_widget_cb(), and ANIM_channel_setting_set().

◆ setting_ptr

void *(* bAnimChannelType::setting_ptr) (bAnimListElem *ale, eAnimChannel_Settings setting, short *r_type)

Get the pointer to int/short where data is stored, with type being sizeof(ptr_data) which should be fine for runtime use.

  • assume that setting has been checked to be valid for current context.

Definition at line 718 of file ED_anim_api.hh.

Referenced by ANIM_channel_debug_print_info(), ANIM_channel_setting_get(), ANIM_channel_setting_set(), and draw_setting_widget().


The documentation for this struct was generated from the following file: