diff options
Diffstat (limited to 'source/blender/gpencil_modifiers/intern/MOD_gpencillattice.c')
-rw-r--r-- | source/blender/gpencil_modifiers/intern/MOD_gpencillattice.c | 25 |
1 files changed, 7 insertions, 18 deletions
diff --git a/source/blender/gpencil_modifiers/intern/MOD_gpencillattice.c b/source/blender/gpencil_modifiers/intern/MOD_gpencillattice.c index efb8cf86fb5..098a2edf04a 100644 --- a/source/blender/gpencil_modifiers/intern/MOD_gpencillattice.c +++ b/source/blender/gpencil_modifiers/intern/MOD_gpencillattice.c @@ -22,12 +22,14 @@ */ #include <stdio.h> +#include <string.h> /* For #MEMCPY_STRUCT_AFTER. */ #include "BLI_listbase.h" #include "BLI_utildefines.h" #include "BLT_translation.h" +#include "DNA_defaults.h" #include "DNA_gpencil_modifier_types.h" #include "DNA_gpencil_types.h" #include "DNA_meshdata_types.h" @@ -65,11 +67,10 @@ static void initData(GpencilModifierData *md) { LatticeGpencilModifierData *gpmd = (LatticeGpencilModifierData *)md; - gpmd->pass_index = 0; - gpmd->material = NULL; - gpmd->object = NULL; - gpmd->cache_data = NULL; - gpmd->strength = 1.0f; + + BLI_assert(MEMCMP_STRUCT_AFTER_IS_ZERO(gpmd, modifier)); + + MEMCPY_STRUCT_AFTER(gpmd, DNA_struct_default_get(LatticeGpencilModifierData), modifier); } static void copyData(const GpencilModifierData *md, GpencilModifierData *target) @@ -203,23 +204,12 @@ static void updateDepsgraph(GpencilModifierData *md, const ModifierUpdateDepsgra DEG_add_object_relation(ctx->node, ctx->object, DEG_OB_COMP_TRANSFORM, "Lattice Modifier"); } -static void foreachObjectLink(GpencilModifierData *md, - Object *ob, - ObjectWalkFunc walk, - void *userData) -{ - LatticeGpencilModifierData *mmd = (LatticeGpencilModifierData *)md; - - walk(userData, ob, &mmd->object, IDWALK_CB_NOP); -} - static void foreachIDLink(GpencilModifierData *md, Object *ob, IDWalkFunc walk, void *userData) { LatticeGpencilModifierData *mmd = (LatticeGpencilModifierData *)md; walk(userData, ob, (ID **)&mmd->material, IDWALK_CB_USER); - - foreachObjectLink(md, ob, (ObjectWalkFunc)walk, userData); + walk(userData, ob, (ID **)&mmd->object, IDWALK_CB_NOP); } static void panel_draw(const bContext *UNUSED(C), Panel *panel) @@ -288,7 +278,6 @@ GpencilModifierTypeInfo modifierType_Gpencil_Lattice = { /* isDisabled */ isDisabled, /* updateDepsgraph */ updateDepsgraph, /* dependsOnTime */ NULL, - /* foreachObjectLink */ foreachObjectLink, /* foreachIDLink */ foreachIDLink, /* foreachTexLink */ NULL, /* panelRegister */ panelRegister, |