Cleanup: Grease Pencil: Remove legacy animation drawing code

`ANIMTYPE_GPDATABLOCK` is not used anymore animation editor for channel
drawing. `ANIMTYPE_GPLAYER` is still needed for annotation channels in
dopesheet.

Pull Request: https://projects.blender.org/blender/blender/pulls/135556
This commit is contained in:
Pratik Borhade
2025-03-07 10:32:33 +01:00
committed by Falk David
parent 9b9bddb3fd
commit 4e141d11c5
10 changed files with 1 additions and 119 deletions

View File

@@ -3618,13 +3618,6 @@ static bAnimChannelType ACF_SHAPEKEY = {
/* GPencil Datablock (Legacy) ------------------------------------------- */
/* get backdrop color for gpencil datablock widget */
static void acf_gpd_color(bAnimContext * /*ac*/, bAnimListElem * /*ale*/, float r_color[3])
{
/* these are ID-blocks, but not exactly standalone... */
UI_GetThemeColorShade3fv(TH_DOPESHEET_CHANNELSUBOB, 20, r_color);
}
/* TODO: just get this from RNA? */
static int acf_gpd_icon(bAnimListElem * /*ale*/)
{
@@ -3647,59 +3640,6 @@ static bool acf_gpd_setting_valid(bAnimContext * /*ac*/,
}
}
/* Get the appropriate flag(s) for the setting when it is valid. */
static int acf_gpd_setting_flag_legacy(bAnimContext * /*ac*/,
eAnimChannel_Settings setting,
bool *r_neg)
{
/* Clear extra return data first. */
*r_neg = false;
switch (setting) {
case ACHANNEL_SETTING_SELECT: /* selected */
return AGRP_SELECTED;
case ACHANNEL_SETTING_EXPAND: /* expanded */
return GP_DATA_EXPAND;
default:
/* these shouldn't happen */
return 0;
}
}
/* get pointer to the setting */
static void *acf_gpd_setting_ptr_legacy(bAnimListElem *ale,
eAnimChannel_Settings /*setting*/,
short *r_type)
{
bGPdata *grease_pencil = (bGPdata *)ale->data;
/* all flags are just in gpd->flag for now... */
return GET_ACF_FLAG_PTR(grease_pencil->flag, r_type);
}
/** Grease-pencil data-block type define. (Legacy) */
static bAnimChannelType ACF_GPD_LEGACY = {
/*channel_type_name*/ "GPencil Datablock",
/*channel_role*/ ACHANNEL_ROLE_EXPANDER,
/*get_backdrop_color*/ acf_gpd_color,
/*get_channel_color*/ nullptr,
/*draw_backdrop*/ acf_group_backdrop,
/*get_indent_level*/ acf_generic_indentation_0,
/*get_offset*/ acf_generic_group_offset,
/*name*/ acf_generic_idblock_name,
/*name_prop*/ acf_generic_idfill_name_prop,
/*icon*/ acf_gpd_icon,
/*has_setting*/ acf_gpd_setting_valid,
/*setting_flag*/ acf_gpd_setting_flag_legacy,
/*setting_ptr*/ acf_gpd_setting_ptr_legacy,
/*setting_post_update*/ nullptr,
};
/* GPencil Layer (Legacy) ------------------------------------------- */
/* name for grease pencil layer entries */
@@ -4662,7 +4602,6 @@ static void ANIM_init_channel_typeinfo_data()
animchannelTypeInfo[type++] = &ACF_SHAPEKEY; /* ShapeKey */
animchannelTypeInfo[type++] = &ACF_GPD_LEGACY; /* Grease Pencil Datablock (Legacy) */
animchannelTypeInfo[type++] = &ACF_GPL_LEGACY; /* Grease Pencil Layer (Legacy) */
animchannelTypeInfo[type++] = &ACF_GPD; /* Grease Pencil Datablock. */

View File

@@ -323,7 +323,6 @@ void ANIM_set_active_channel(bAnimContext *ac,
case ANIMTYPE_FILLDRIVERS:
case ANIMTYPE_DSNTREE:
case ANIMTYPE_SHAPEKEY:
case ANIMTYPE_GPDATABLOCK:
case ANIMTYPE_GREASE_PENCIL_DATABLOCK:
case ANIMTYPE_GREASE_PENCIL_LAYER_GROUP:
case ANIMTYPE_GREASE_PENCIL_LAYER:
@@ -473,7 +472,6 @@ bool ANIM_is_active_channel(bAnimListElem *ale)
case ANIMTYPE_NLACONTROLS:
case ANIMTYPE_FILLDRIVERS:
case ANIMTYPE_SHAPEKEY:
case ANIMTYPE_GPDATABLOCK:
case ANIMTYPE_GREASE_PENCIL_DATABLOCK:
case ANIMTYPE_GREASE_PENCIL_LAYER_GROUP:
case ANIMTYPE_MASKDATABLOCK:
@@ -622,7 +620,6 @@ static eAnimChannels_SetFlag anim_channels_selection_flag_for_toggle(const ListB
case ANIMTYPE_SUMMARY:
case ANIMTYPE_NLACONTROLS:
case ANIMTYPE_FILLDRIVERS:
case ANIMTYPE_GPDATABLOCK:
case ANIMTYPE_GREASE_PENCIL_DATABLOCK:
case ANIMTYPE_GREASE_PENCIL_LAYER_GROUP:
case ANIMTYPE_GREASE_PENCIL_LAYER:
@@ -807,7 +804,6 @@ static void anim_channels_select_set(bAnimContext *ac,
case ANIMTYPE_SUMMARY:
case ANIMTYPE_NLACONTROLS:
case ANIMTYPE_FILLDRIVERS:
case ANIMTYPE_GPDATABLOCK:
case ANIMTYPE_GREASE_PENCIL_DATABLOCK:
case ANIMTYPE_GREASE_PENCIL_LAYER_GROUP:
case ANIMTYPE_MASKDATABLOCK:
@@ -2245,7 +2241,7 @@ static void rearrange_gpencil_channels(bAnimContext *ac, eRearrangeAnimChan_Mode
LISTBASE_FOREACH (bAnimListElem *, ale, &anim_data) {
/* only consider grease pencil container channels */
if (!ELEM(ale->type, ANIMTYPE_GPDATABLOCK, ANIMTYPE_DSGPENCIL)) {
if (ale->type != ANIMTYPE_DSGPENCIL) {
continue;
}
@@ -2848,7 +2844,6 @@ static bool animchannels_delete_containers(const bContext *C, bAnimContext *ac)
case ANIMTYPE_DSPOINTCLOUD:
case ANIMTYPE_DSVOLUME:
case ANIMTYPE_SHAPEKEY:
case ANIMTYPE_GPDATABLOCK:
case ANIMTYPE_GPLAYER:
case ANIMTYPE_GREASE_PENCIL_DATABLOCK:
case ANIMTYPE_GREASE_PENCIL_LAYER_GROUP:
@@ -3009,7 +3004,6 @@ static int animchannels_delete_exec(bContext *C, wmOperator * /*op*/)
case ANIMTYPE_DSPOINTCLOUD:
case ANIMTYPE_DSVOLUME:
case ANIMTYPE_SHAPEKEY:
case ANIMTYPE_GPDATABLOCK:
case ANIMTYPE_GREASE_PENCIL_DATABLOCK:
case ANIMTYPE_GREASE_PENCIL_LAYER_GROUP:
case ANIMTYPE_MASKDATABLOCK:
@@ -3763,11 +3757,6 @@ static void box_select_anim_channels(bAnimContext *ac, const rcti &rect, short s
LISTBASE_FOREACH (bAnimListElem *, ale, &anim_data) {
float ymin;
if (ale->type == ANIMTYPE_GPDATABLOCK) {
ymax -= ANIM_UI_get_channel_step();
continue;
}
if (ac->datatype == ANIMCONT_NLA) {
ymin = ymax - NLATRACK_STEP(snla);
}
@@ -3839,7 +3828,6 @@ static void box_select_anim_channels(bAnimContext *ac, const rcti &rect, short s
case ANIMTYPE_DSPOINTCLOUD:
case ANIMTYPE_DSVOLUME:
case ANIMTYPE_SHAPEKEY:
case ANIMTYPE_GPDATABLOCK:
case ANIMTYPE_GPLAYER:
case ANIMTYPE_GREASE_PENCIL_DATABLOCK:
case ANIMTYPE_GREASE_PENCIL_LAYER_GROUP:
@@ -4484,19 +4472,6 @@ static int click_select_channel_nlacontrols(bAnimListElem *ale)
return (ND_ANIMCHAN | NA_EDITED);
}
static int click_select_channel_gpdatablock(bAnimListElem *ale)
{
bGPdata *gpd = (bGPdata *)ale->data;
/* Toggle expand:
* - Although the triangle widget already allows this,
* the whole channel can also be used for this purpose.
*/
gpd->flag ^= GP_DATA_EXPAND;
return (ND_ANIMCHAN | NA_EDITED);
}
static int click_select_channel_gplayer(bContext *C,
bAnimContext *ac,
bAnimListElem *ale,
@@ -4735,9 +4710,6 @@ static int mouse_anim_channels(bContext *C,
case ANIMTYPE_NLACONTROLS:
notifierFlags |= click_select_channel_nlacontrols(ale);
break;
case ANIMTYPE_GPDATABLOCK:
notifierFlags |= click_select_channel_gpdatablock(ale);
break;
case ANIMTYPE_GPLAYER:
notifierFlags |= click_select_channel_gplayer(C, ac, ale, selectmode, filter);
break;

View File

@@ -332,7 +332,6 @@ void ANIM_sync_animchannels_to_data(const bContext *C)
case ANIMTYPE_DSPOINTCLOUD:
case ANIMTYPE_DSVOLUME:
case ANIMTYPE_SHAPEKEY:
case ANIMTYPE_GPDATABLOCK:
case ANIMTYPE_GREASE_PENCIL_DATABLOCK:
case ANIMTYPE_GREASE_PENCIL_LAYER_GROUP:
case ANIMTYPE_MASKDATABLOCK:

View File

@@ -239,7 +239,6 @@ bool ANIM_nla_mapping_allowed(const bAnimListElem *ale)
return !fcurve->driver;
}
case ANIMTYPE_DSGPENCIL:
case ANIMTYPE_GPDATABLOCK:
case ANIMTYPE_GPLAYER:
case ANIMTYPE_GREASE_PENCIL_DATABLOCK:
case ANIMTYPE_GREASE_PENCIL_LAYER_GROUP:

View File

@@ -942,7 +942,6 @@ static bAnimListElem *make_new_animlistelem(
case ANIMTYPE_ANIMDATA:
case ANIMTYPE_SPECIALDATA__UNUSED:
case ANIMTYPE_DSMBALL:
case ANIMTYPE_GPDATABLOCK:
case ANIMTYPE_MASKDATABLOCK:
case ANIMTYPE_PALETTE:
case ANIMTYPE_NUM_TYPES:

View File

@@ -197,7 +197,6 @@ enum eAnim_ChannelType {
ANIMTYPE_SHAPEKEY,
ANIMTYPE_GPDATABLOCK,
ANIMTYPE_GPLAYER,
ANIMTYPE_GREASE_PENCIL_DATABLOCK,

View File

@@ -460,17 +460,6 @@ static void box_select_elem(
bAnimContext *ac = sel_data->ac;
switch (ale->type) {
#if 0 /* XXX: Keyframes are not currently shown here */
case ANIMTYPE_GPDATABLOCK: {
bGPdata *gpd = ale->data;
bGPDlayer *gpl;
for (gpl = gpd->layers.first; gpl; gpl = gpl->next) {
ED_gpencil_layer_frames_select_box(gpl, xmin, xmax, data->selectmode);
}
ale->update |= ANIM_UPDATE_DEPS;
break;
}
#endif
case ANIMTYPE_GREASE_PENCIL_DATABLOCK: {
GreasePencil *grease_pencil = static_cast<GreasePencil *>(ale->data);
for (blender::bke::greasepencil::Layer *layer : grease_pencil->layers_for_write()) {
@@ -736,17 +725,6 @@ static void region_select_elem(RegionSelectData *sel_data, bAnimListElem *ale, b
bAnimContext *ac = sel_data->ac;
switch (ale->type) {
#if 0 /* XXX: Keyframes are not currently shown here */
case ANIMTYPE_GPDATABLOCK: {
bGPdata *gpd = ale->data;
bGPDlayer *gpl;
for (gpl = gpd->layers.first; gpl; gpl = gpl->next) {
ED_gpencil_layer_frames_select_region(
&rdata->ked, ale->data, rdata->mode, rdata->selectmode);
}
break;
}
#endif
case ANIMTYPE_GPLAYER: {
ED_gpencil_layer_frames_select_region(&sel_data->ked,
static_cast<bGPDlayer *>(ale->data),

View File

@@ -178,7 +178,6 @@ bool nla_panel_context(const bContext *C,
case ANIMTYPE_FILLDRIVERS:
case ANIMTYPE_DSMCLIP:
case ANIMTYPE_SHAPEKEY:
case ANIMTYPE_GPDATABLOCK:
case ANIMTYPE_GPLAYER:
case ANIMTYPE_GREASE_PENCIL_DATABLOCK:
case ANIMTYPE_GREASE_PENCIL_LAYER_GROUP:

View File

@@ -947,7 +947,6 @@ void draw_nla_main_data(bAnimContext *ac, SpaceNla *snla, ARegion *region)
case ANIMTYPE_DSPOINTCLOUD:
case ANIMTYPE_DSVOLUME:
case ANIMTYPE_SHAPEKEY:
case ANIMTYPE_GPDATABLOCK:
case ANIMTYPE_GPLAYER:
case ANIMTYPE_GREASE_PENCIL_DATABLOCK:
case ANIMTYPE_GREASE_PENCIL_LAYER_GROUP:

View File

@@ -751,7 +751,6 @@ static void createTransActionData(bContext *C, TransInfo *t)
case ANIMTYPE_DSPOINTCLOUD:
case ANIMTYPE_DSVOLUME:
case ANIMTYPE_SHAPEKEY:
case ANIMTYPE_GPDATABLOCK:
case ANIMTYPE_GREASE_PENCIL_DATABLOCK:
case ANIMTYPE_GREASE_PENCIL_LAYER_GROUP:
case ANIMTYPE_MASKDATABLOCK: