Modifiers: add icon field to ModifierTypeInfo

With this change `outliner_draw.c` does not have to be
edited anymore when a new modifier is added.

Reviewers: campbellbarton

Differential Revision: https://developer.blender.org/D8998
This commit is contained in:
2020-09-25 12:45:30 +02:00
parent f057e92ae2
commit d15e8bdaa3
58 changed files with 69 additions and 157 deletions

View File

@@ -173,6 +173,9 @@ typedef struct ModifierTypeInfo {
ModifierTypeType type; ModifierTypeType type;
ModifierTypeFlag flags; ModifierTypeFlag flags;
/* Icon of the modifier. Usually something like ICON_MOD_*. */
int icon;
/********************* Non-optional functions *********************/ /********************* Non-optional functions *********************/
/** /**

View File

@@ -2137,163 +2137,12 @@ TreeElementIcon tree_element_get_icon(TreeStoreElem *tselem, TreeElement *te)
if (ob->type != OB_GPENCIL) { if (ob->type != OB_GPENCIL) {
ModifierData *md = BLI_findlink(&ob->modifiers, tselem->nr); ModifierData *md = BLI_findlink(&ob->modifiers, tselem->nr);
switch ((ModifierType)md->type) { const ModifierTypeInfo *modifier_type = BKE_modifier_get_info(md->type);
case eModifierType_Subsurf: if (modifier_type != NULL) {
data.icon = ICON_MOD_SUBSURF; data.icon = modifier_type->icon;
break; }
case eModifierType_Armature: else {
data.icon = ICON_MOD_ARMATURE; data.icon = ICON_DOT;
break;
case eModifierType_Lattice:
data.icon = ICON_MOD_LATTICE;
break;
case eModifierType_Curve:
data.icon = ICON_MOD_CURVE;
break;
case eModifierType_Build:
data.icon = ICON_MOD_BUILD;
break;
case eModifierType_Mirror:
data.icon = ICON_MOD_MIRROR;
break;
case eModifierType_Decimate:
data.icon = ICON_MOD_DECIM;
break;
case eModifierType_Wave:
data.icon = ICON_MOD_WAVE;
break;
case eModifierType_Hook:
data.icon = ICON_HOOK;
break;
case eModifierType_Softbody:
data.icon = ICON_MOD_SOFT;
break;
case eModifierType_Boolean:
data.icon = ICON_MOD_BOOLEAN;
break;
case eModifierType_ParticleSystem:
data.icon = ICON_MOD_PARTICLES;
break;
case eModifierType_ParticleInstance:
data.icon = ICON_MOD_PARTICLES;
break;
case eModifierType_EdgeSplit:
data.icon = ICON_MOD_EDGESPLIT;
break;
case eModifierType_Array:
data.icon = ICON_MOD_ARRAY;
break;
case eModifierType_UVProject:
case eModifierType_UVWarp: /* TODO, get own icon */
data.icon = ICON_MOD_UVPROJECT;
break;
case eModifierType_Displace:
data.icon = ICON_MOD_DISPLACE;
break;
case eModifierType_Shrinkwrap:
data.icon = ICON_MOD_SHRINKWRAP;
break;
case eModifierType_Cast:
data.icon = ICON_MOD_CAST;
break;
case eModifierType_MeshDeform:
case eModifierType_SurfaceDeform:
data.icon = ICON_MOD_MESHDEFORM;
break;
case eModifierType_Bevel:
data.icon = ICON_MOD_BEVEL;
break;
case eModifierType_Smooth:
case eModifierType_LaplacianSmooth:
case eModifierType_CorrectiveSmooth:
data.icon = ICON_MOD_SMOOTH;
break;
case eModifierType_SimpleDeform:
data.icon = ICON_MOD_SIMPLEDEFORM;
break;
case eModifierType_Mask:
data.icon = ICON_MOD_MASK;
break;
case eModifierType_Cloth:
data.icon = ICON_MOD_CLOTH;
break;
case eModifierType_Explode:
data.icon = ICON_MOD_EXPLODE;
break;
case eModifierType_Collision:
case eModifierType_Surface:
data.icon = ICON_MOD_PHYSICS;
break;
case eModifierType_Fluidsim: /* deprecated, old fluid modifier */
data.icon = ICON_MOD_FLUIDSIM;
break;
case eModifierType_Multires:
data.icon = ICON_MOD_MULTIRES;
break;
case eModifierType_Fluid:
data.icon = ICON_MOD_FLUID;
break;
case eModifierType_Solidify:
data.icon = ICON_MOD_SOLIDIFY;
break;
case eModifierType_Screw:
data.icon = ICON_MOD_SCREW;
break;
case eModifierType_Remesh:
data.icon = ICON_MOD_REMESH;
break;
case eModifierType_WeightVGEdit:
case eModifierType_WeightVGMix:
case eModifierType_WeightVGProximity:
data.icon = ICON_MOD_VERTEX_WEIGHT;
break;
case eModifierType_DynamicPaint:
data.icon = ICON_MOD_DYNAMICPAINT;
break;
case eModifierType_Ocean:
data.icon = ICON_MOD_OCEAN;
break;
case eModifierType_Warp:
data.icon = ICON_MOD_WARP;
break;
case eModifierType_Skin:
data.icon = ICON_MOD_SKIN;
break;
case eModifierType_Triangulate:
data.icon = ICON_MOD_TRIANGULATE;
break;
case eModifierType_MeshCache:
data.icon = ICON_MOD_MESHDEFORM; /* XXX, needs own icon */
break;
case eModifierType_MeshSequenceCache:
data.icon = ICON_MOD_MESHDEFORM; /* XXX, needs own icon */
break;
case eModifierType_Wireframe:
data.icon = ICON_MOD_WIREFRAME;
break;
case eModifierType_Weld:
data.icon = ICON_AUTOMERGE_OFF; /* XXX, needs own icon */
break;
case eModifierType_LaplacianDeform:
data.icon = ICON_MOD_MESHDEFORM; /* XXX, needs own icon */
break;
case eModifierType_DataTransfer:
data.icon = ICON_MOD_DATA_TRANSFER;
break;
case eModifierType_NormalEdit:
case eModifierType_WeightedNormal:
data.icon = ICON_MOD_NORMALEDIT;
break;
case eModifierType_Simulation:
data.icon = ICON_PHYSICS; /* TODO: Use correct icon. */
break;
/* Default */
case eModifierType_None:
case eModifierType_ShapeKey:
case NUM_MODIFIER_TYPES:
data.icon = ICON_DOT;
break;
} }
} }
else { else {

View File

@@ -281,6 +281,7 @@ ModifierTypeInfo modifierType_Armature = {
/* type */ eModifierTypeType_OnlyDeform, /* type */ eModifierTypeType_OnlyDeform,
/* flags */ eModifierTypeFlag_AcceptsCVs | eModifierTypeFlag_AcceptsVertexCosOnly | /* flags */ eModifierTypeFlag_AcceptsCVs | eModifierTypeFlag_AcceptsVertexCosOnly |
eModifierTypeFlag_SupportsEditmode, eModifierTypeFlag_SupportsEditmode,
/* icon */ ICON_MOD_ARMATURE,
/* copyData */ copyData, /* copyData */ copyData,

View File

@@ -1014,6 +1014,7 @@ ModifierTypeInfo modifierType_Array = {
/* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsMapping | /* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsMapping |
eModifierTypeFlag_SupportsEditmode | eModifierTypeFlag_EnableInEditmode | eModifierTypeFlag_SupportsEditmode | eModifierTypeFlag_EnableInEditmode |
eModifierTypeFlag_AcceptsCVs, eModifierTypeFlag_AcceptsCVs,
/* icon */ ICON_MOD_ARRAY,
/* copyData */ BKE_modifier_copydata_generic, /* copyData */ BKE_modifier_copydata_generic,

View File

@@ -449,6 +449,7 @@ ModifierTypeInfo modifierType_Bevel = {
/* type */ eModifierTypeType_Constructive, /* type */ eModifierTypeType_Constructive,
/* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsEditmode | /* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsEditmode |
eModifierTypeFlag_EnableInEditmode | eModifierTypeFlag_AcceptsCVs, eModifierTypeFlag_EnableInEditmode | eModifierTypeFlag_AcceptsCVs,
/* icon */ ICON_MOD_BEVEL,
/* copyData */ copyData, /* copyData */ copyData,
/* deformVerts */ NULL, /* deformVerts */ NULL,
/* deformMatrices */ NULL, /* deformMatrices */ NULL,

View File

@@ -753,6 +753,7 @@ ModifierTypeInfo modifierType_Boolean = {
/* structSize */ sizeof(BooleanModifierData), /* structSize */ sizeof(BooleanModifierData),
/* type */ eModifierTypeType_Nonconstructive, /* type */ eModifierTypeType_Nonconstructive,
/* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsEditmode, /* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsEditmode,
/* icon */ ICON_MOD_BOOLEAN,
/* copyData */ BKE_modifier_copydata_generic, /* copyData */ BKE_modifier_copydata_generic,

View File

@@ -333,6 +333,7 @@ ModifierTypeInfo modifierType_Build = {
/* structSize */ sizeof(BuildModifierData), /* structSize */ sizeof(BuildModifierData),
/* type */ eModifierTypeType_Nonconstructive, /* type */ eModifierTypeType_Nonconstructive,
/* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_AcceptsCVs, /* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_AcceptsCVs,
/* icon */ ICON_MOD_BUILD,
/* copyData */ BKE_modifier_copydata_generic, /* copyData */ BKE_modifier_copydata_generic,

View File

@@ -582,6 +582,7 @@ ModifierTypeInfo modifierType_Cast = {
/* type */ eModifierTypeType_OnlyDeform, /* type */ eModifierTypeType_OnlyDeform,
/* flags */ eModifierTypeFlag_AcceptsCVs | eModifierTypeFlag_AcceptsVertexCosOnly | /* flags */ eModifierTypeFlag_AcceptsCVs | eModifierTypeFlag_AcceptsVertexCosOnly |
eModifierTypeFlag_SupportsEditmode, eModifierTypeFlag_SupportsEditmode,
/* icon */ ICON_MOD_CAST,
/* copyData */ BKE_modifier_copydata_generic, /* copyData */ BKE_modifier_copydata_generic,

View File

@@ -287,6 +287,7 @@ ModifierTypeInfo modifierType_Cloth = {
/* type */ eModifierTypeType_OnlyDeform, /* type */ eModifierTypeType_OnlyDeform,
/* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_UsesPointCache | /* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_UsesPointCache |
eModifierTypeFlag_Single, eModifierTypeFlag_Single,
/* icon */ ICON_MOD_CLOTH,
/* copyData */ copyData, /* copyData */ copyData,

View File

@@ -304,6 +304,7 @@ ModifierTypeInfo modifierType_Collision = {
/* structSize */ sizeof(CollisionModifierData), /* structSize */ sizeof(CollisionModifierData),
/* type */ eModifierTypeType_OnlyDeform, /* type */ eModifierTypeType_OnlyDeform,
/* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_Single, /* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_Single,
/* icon */ ICON_MOD_PHYSICS,
/* copyData */ NULL, /* copyData */ NULL,

View File

@@ -846,6 +846,7 @@ ModifierTypeInfo modifierType_CorrectiveSmooth = {
/* structSize */ sizeof(CorrectiveSmoothModifierData), /* structSize */ sizeof(CorrectiveSmoothModifierData),
/* type */ eModifierTypeType_OnlyDeform, /* type */ eModifierTypeType_OnlyDeform,
/* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsEditmode, /* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsEditmode,
/* icon */ ICON_MOD_SMOOTH,
/* copyData */ copyData, /* copyData */ copyData,

View File

@@ -221,6 +221,7 @@ ModifierTypeInfo modifierType_Curve = {
/* type */ eModifierTypeType_OnlyDeform, /* type */ eModifierTypeType_OnlyDeform,
/* flags */ eModifierTypeFlag_AcceptsCVs | eModifierTypeFlag_AcceptsVertexCosOnly | /* flags */ eModifierTypeFlag_AcceptsCVs | eModifierTypeFlag_AcceptsVertexCosOnly |
eModifierTypeFlag_SupportsEditmode, eModifierTypeFlag_SupportsEditmode,
/* icon */ ICON_MOD_CURVE,
/* copyData */ BKE_modifier_copydata_generic, /* copyData */ BKE_modifier_copydata_generic,

View File

@@ -473,6 +473,7 @@ ModifierTypeInfo modifierType_DataTransfer = {
/* type */ eModifierTypeType_NonGeometrical, /* type */ eModifierTypeType_NonGeometrical,
/* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsMapping | /* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsMapping |
eModifierTypeFlag_SupportsEditmode | eModifierTypeFlag_UsesPreview, eModifierTypeFlag_SupportsEditmode | eModifierTypeFlag_UsesPreview,
/* icon */ ICON_MOD_DATA_TRANSFER,
/* copyData */ BKE_modifier_copydata_generic, /* copyData */ BKE_modifier_copydata_generic,

View File

@@ -286,6 +286,7 @@ ModifierTypeInfo modifierType_Decimate = {
/* structSize */ sizeof(DecimateModifierData), /* structSize */ sizeof(DecimateModifierData),
/* type */ eModifierTypeType_Nonconstructive, /* type */ eModifierTypeType_Nonconstructive,
/* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_AcceptsCVs, /* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_AcceptsCVs,
/* icon */ ICON_MOD_DECIM,
/* copyData */ BKE_modifier_copydata_generic, /* copyData */ BKE_modifier_copydata_generic,

View File

@@ -504,6 +504,7 @@ ModifierTypeInfo modifierType_Displace = {
/* structSize */ sizeof(DisplaceModifierData), /* structSize */ sizeof(DisplaceModifierData),
/* type */ eModifierTypeType_OnlyDeform, /* type */ eModifierTypeType_OnlyDeform,
/* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsEditmode, /* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsEditmode,
/* icon */ ICON_MOD_DISPLACE,
/* copyData */ BKE_modifier_copydata_generic, /* copyData */ BKE_modifier_copydata_generic,

View File

@@ -207,6 +207,7 @@ ModifierTypeInfo modifierType_DynamicPaint = {
/* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsMapping | /* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsMapping |
eModifierTypeFlag_UsesPointCache | eModifierTypeFlag_Single | eModifierTypeFlag_UsesPointCache | eModifierTypeFlag_Single |
eModifierTypeFlag_UsesPreview, eModifierTypeFlag_UsesPreview,
/* icon */ ICON_MOD_DYNAMICPAINT,
/* copyData */ copyData, /* copyData */ copyData,

View File

@@ -171,6 +171,7 @@ ModifierTypeInfo modifierType_EdgeSplit = {
/* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_AcceptsCVs | /* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_AcceptsCVs |
eModifierTypeFlag_SupportsMapping | eModifierTypeFlag_SupportsEditmode | eModifierTypeFlag_SupportsMapping | eModifierTypeFlag_SupportsEditmode |
eModifierTypeFlag_EnableInEditmode, eModifierTypeFlag_EnableInEditmode,
/* icon */ ICON_MOD_EDGESPLIT,
/* copyData */ BKE_modifier_copydata_generic, /* copyData */ BKE_modifier_copydata_generic,

View File

@@ -1242,6 +1242,7 @@ ModifierTypeInfo modifierType_Explode = {
/* structSize */ sizeof(ExplodeModifierData), /* structSize */ sizeof(ExplodeModifierData),
/* type */ eModifierTypeType_Constructive, /* type */ eModifierTypeType_Constructive,
/* flags */ eModifierTypeFlag_AcceptsMesh, /* flags */ eModifierTypeFlag_AcceptsMesh,
/* icon */ ICON_MOD_EXPLODE,
/* copyData */ copyData, /* copyData */ copyData,
/* deformVerts */ NULL, /* deformVerts */ NULL,

View File

@@ -227,6 +227,7 @@ ModifierTypeInfo modifierType_Fluid = {
/* structSize */ sizeof(FluidModifierData), /* structSize */ sizeof(FluidModifierData),
/* type */ eModifierTypeType_Constructive, /* type */ eModifierTypeType_Constructive,
/* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_Single, /* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_Single,
/* icon */ ICON_MOD_FLUIDSIM,
/* copyData */ copyData, /* copyData */ copyData,

View File

@@ -561,6 +561,7 @@ ModifierTypeInfo modifierType_Hook = {
/* type */ eModifierTypeType_OnlyDeform, /* type */ eModifierTypeType_OnlyDeform,
/* flags */ eModifierTypeFlag_AcceptsCVs | eModifierTypeFlag_AcceptsVertexCosOnly | /* flags */ eModifierTypeFlag_AcceptsCVs | eModifierTypeFlag_AcceptsVertexCosOnly |
eModifierTypeFlag_SupportsEditmode, eModifierTypeFlag_SupportsEditmode,
/* icon */ ICON_HOOK,
/* copyData */ copyData, /* copyData */ copyData,
/* deformVerts */ deformVerts, /* deformVerts */ deformVerts,

View File

@@ -877,6 +877,7 @@ ModifierTypeInfo modifierType_LaplacianDeform = {
/* structSize */ sizeof(LaplacianDeformModifierData), /* structSize */ sizeof(LaplacianDeformModifierData),
/* type */ eModifierTypeType_OnlyDeform, /* type */ eModifierTypeType_OnlyDeform,
/* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsEditmode, /* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsEditmode,
/* icon */ ICON_MOD_MESHDEFORM,
/* copyData */ copyData, /* copyData */ copyData,
/* deformVerts */ deformVerts, /* deformVerts */ deformVerts,

View File

@@ -624,6 +624,7 @@ ModifierTypeInfo modifierType_LaplacianSmooth = {
/* structSize */ sizeof(LaplacianSmoothModifierData), /* structSize */ sizeof(LaplacianSmoothModifierData),
/* type */ eModifierTypeType_OnlyDeform, /* type */ eModifierTypeType_OnlyDeform,
/* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsEditmode, /* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsEditmode,
/* icon */ ICON_MOD_SMOOTH,
/* copyData */ BKE_modifier_copydata_generic, /* copyData */ BKE_modifier_copydata_generic,

View File

@@ -177,6 +177,7 @@ ModifierTypeInfo modifierType_Lattice = {
/* type */ eModifierTypeType_OnlyDeform, /* type */ eModifierTypeType_OnlyDeform,
/* flags */ eModifierTypeFlag_AcceptsCVs | eModifierTypeFlag_AcceptsVertexCosOnly | /* flags */ eModifierTypeFlag_AcceptsCVs | eModifierTypeFlag_AcceptsVertexCosOnly |
eModifierTypeFlag_SupportsEditmode, eModifierTypeFlag_SupportsEditmode,
/* icon */ ICON_MOD_LATTICE,
/* copyData */ BKE_modifier_copydata_generic, /* copyData */ BKE_modifier_copydata_generic,

View File

@@ -441,6 +441,7 @@ ModifierTypeInfo modifierType_Mask = {
/* flags */ /* flags */
(ModifierTypeFlag)(eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsMapping | (ModifierTypeFlag)(eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsMapping |
eModifierTypeFlag_SupportsEditmode), eModifierTypeFlag_SupportsEditmode),
/* icon */ ICON_MOD_MASK,
/* copyData */ BKE_modifier_copydata_generic, /* copyData */ BKE_modifier_copydata_generic,

View File

@@ -383,6 +383,7 @@ ModifierTypeInfo modifierType_MeshCache = {
/* type */ eModifierTypeType_OnlyDeform, /* type */ eModifierTypeType_OnlyDeform,
/* flags */ eModifierTypeFlag_AcceptsCVs | eModifierTypeFlag_AcceptsVertexCosOnly | /* flags */ eModifierTypeFlag_AcceptsCVs | eModifierTypeFlag_AcceptsVertexCosOnly |
eModifierTypeFlag_SupportsEditmode, eModifierTypeFlag_SupportsEditmode,
/* icon */ ICON_MOD_MESHDEFORM, /* TODO: Use correct icon. */
/* copyData */ BKE_modifier_copydata_generic, /* copyData */ BKE_modifier_copydata_generic,

View File

@@ -632,6 +632,7 @@ ModifierTypeInfo modifierType_MeshDeform = {
/* type */ eModifierTypeType_OnlyDeform, /* type */ eModifierTypeType_OnlyDeform,
/* flags */ eModifierTypeFlag_AcceptsCVs | eModifierTypeFlag_AcceptsVertexCosOnly | /* flags */ eModifierTypeFlag_AcceptsCVs | eModifierTypeFlag_AcceptsVertexCosOnly |
eModifierTypeFlag_SupportsEditmode, eModifierTypeFlag_SupportsEditmode,
/* icon */ ICON_MOD_MESHDEFORM,
/* copyData */ copyData, /* copyData */ copyData,

View File

@@ -263,6 +263,7 @@ ModifierTypeInfo modifierType_MeshSequenceCache = {
/* structSize */ sizeof(MeshSeqCacheModifierData), /* structSize */ sizeof(MeshSeqCacheModifierData),
/* type */ eModifierTypeType_Constructive, /* type */ eModifierTypeType_Constructive,
/* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_AcceptsCVs, /* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_AcceptsCVs,
/* icon */ ICON_MOD_MESHDEFORM, /* TODO: Use correct icon. */
/* copyData */ copyData, /* copyData */ copyData,

View File

@@ -222,6 +222,7 @@ ModifierTypeInfo modifierType_Mirror = {
eModifierTypeFlag_AcceptsCVs | eModifierTypeFlag_AcceptsCVs |
/* this is only the case when 'MOD_MIR_VGROUP' is used */ /* this is only the case when 'MOD_MIR_VGROUP' is used */
eModifierTypeFlag_UsesPreview, eModifierTypeFlag_UsesPreview,
/* icon */ ICON_MOD_MIRROR,
/* copyData */ BKE_modifier_copydata_generic, /* copyData */ BKE_modifier_copydata_generic,

View File

@@ -513,6 +513,7 @@ ModifierTypeInfo modifierType_Multires = {
/* type */ eModifierTypeType_Constructive, /* type */ eModifierTypeType_Constructive,
/* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsMapping | /* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsMapping |
eModifierTypeFlag_RequiresOriginalData, eModifierTypeFlag_RequiresOriginalData,
/* icon */ ICON_MOD_MULTIRES,
/* copyData */ copyData, /* copyData */ copyData,

View File

@@ -27,6 +27,8 @@
#include "MOD_modifiertypes.h" #include "MOD_modifiertypes.h"
#include "UI_resources.h"
/* We only need to define isDisabled; because it always returns 1, /* We only need to define isDisabled; because it always returns 1,
* no other functions will be called * no other functions will be called
*/ */
@@ -44,6 +46,7 @@ ModifierTypeInfo modifierType_None = {
/* structSize */ sizeof(ModifierData), /* structSize */ sizeof(ModifierData),
/* type */ eModifierTypeType_None, /* type */ eModifierTypeType_None,
/* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_AcceptsCVs, /* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_AcceptsCVs,
/* icon */ ICON_NONE,
/* copyData */ NULL, /* copyData */ NULL,

View File

@@ -785,6 +785,7 @@ ModifierTypeInfo modifierType_NormalEdit = {
/* type */ eModifierTypeType_Constructive, /* type */ eModifierTypeType_Constructive,
/* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsMapping | /* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsMapping |
eModifierTypeFlag_SupportsEditmode | eModifierTypeFlag_EnableInEditmode, eModifierTypeFlag_SupportsEditmode | eModifierTypeFlag_EnableInEditmode,
/* icon */ ICON_MOD_NORMALEDIT,
/* copyData */ BKE_modifier_copydata_generic, /* copyData */ BKE_modifier_copydata_generic,

View File

@@ -761,6 +761,7 @@ ModifierTypeInfo modifierType_Ocean = {
/* type */ eModifierTypeType_Constructive, /* type */ eModifierTypeType_Constructive,
/* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsEditmode | /* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsEditmode |
eModifierTypeFlag_EnableInEditmode, eModifierTypeFlag_EnableInEditmode,
/* icon */ ICON_MOD_OCEAN,
/* copyData */ copyData, /* copyData */ copyData,
/* deformMatrices_DM */ NULL, /* deformMatrices_DM */ NULL,

View File

@@ -674,6 +674,7 @@ ModifierTypeInfo modifierType_ParticleInstance = {
/* type */ eModifierTypeType_Constructive, /* type */ eModifierTypeType_Constructive,
/* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsMapping | /* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsMapping |
eModifierTypeFlag_SupportsEditmode | eModifierTypeFlag_EnableInEditmode, eModifierTypeFlag_SupportsEditmode | eModifierTypeFlag_EnableInEditmode,
/* icon */ ICON_MOD_PARTICLE_INSTANCE,
/* copyData */ BKE_modifier_copydata_generic, /* copyData */ BKE_modifier_copydata_generic,

View File

@@ -318,6 +318,7 @@ ModifierTypeInfo modifierType_ParticleSystem = {
eModifierTypeFlag_SupportsEditmode | eModifierTypeFlag_SupportsEditmode |
eModifierTypeFlag_EnableInEditmode */ eModifierTypeFlag_EnableInEditmode */
, ,
/* icon */ ICON_MOD_PARTICLES,
/* copyData */ copyData, /* copyData */ copyData,

View File

@@ -294,6 +294,7 @@ ModifierTypeInfo modifierType_Remesh = {
/* type */ eModifierTypeType_Nonconstructive, /* type */ eModifierTypeType_Nonconstructive,
/* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_AcceptsCVs | /* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_AcceptsCVs |
eModifierTypeFlag_SupportsEditmode, eModifierTypeFlag_SupportsEditmode,
/* icon */ ICON_MOD_REMESH,
/* copyData */ BKE_modifier_copydata_generic, /* copyData */ BKE_modifier_copydata_generic,

View File

@@ -1251,6 +1251,7 @@ ModifierTypeInfo modifierType_Screw = {
/* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_AcceptsCVs | /* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_AcceptsCVs |
eModifierTypeFlag_SupportsEditmode | eModifierTypeFlag_EnableInEditmode, eModifierTypeFlag_SupportsEditmode | eModifierTypeFlag_EnableInEditmode,
/* icon */ ICON_MOD_SCREW,
/* copyData */ BKE_modifier_copydata_generic, /* copyData */ BKE_modifier_copydata_generic,

View File

@@ -33,6 +33,8 @@
#include "MOD_modifiertypes.h" #include "MOD_modifiertypes.h"
#include "UI_resources.h"
static void deformVerts(ModifierData *UNUSED(md), static void deformVerts(ModifierData *UNUSED(md),
const ModifierEvalContext *ctx, const ModifierEvalContext *ctx,
Mesh *UNUSED(mesh), Mesh *UNUSED(mesh),
@@ -124,6 +126,7 @@ ModifierTypeInfo modifierType_ShapeKey = {
/* type */ eModifierTypeType_OnlyDeform, /* type */ eModifierTypeType_OnlyDeform,
/* flags */ eModifierTypeFlag_AcceptsCVs | eModifierTypeFlag_AcceptsVertexCosOnly | /* flags */ eModifierTypeFlag_AcceptsCVs | eModifierTypeFlag_AcceptsVertexCosOnly |
eModifierTypeFlag_SupportsEditmode, eModifierTypeFlag_SupportsEditmode,
/* icon */ ICON_DOT,
/* copyData */ NULL, /* copyData */ NULL,

View File

@@ -282,6 +282,7 @@ ModifierTypeInfo modifierType_Shrinkwrap = {
/* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_AcceptsCVs | /* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_AcceptsCVs |
eModifierTypeFlag_AcceptsVertexCosOnly | eModifierTypeFlag_SupportsEditmode | eModifierTypeFlag_AcceptsVertexCosOnly | eModifierTypeFlag_SupportsEditmode |
eModifierTypeFlag_EnableInEditmode, eModifierTypeFlag_EnableInEditmode,
/* icon */ ICON_MOD_SHRINKWRAP,
/* copyData */ BKE_modifier_copydata_generic, /* copyData */ BKE_modifier_copydata_generic,

View File

@@ -545,6 +545,7 @@ ModifierTypeInfo modifierType_SimpleDeform = {
/* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_AcceptsCVs | /* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_AcceptsCVs |
eModifierTypeFlag_AcceptsVertexCosOnly | eModifierTypeFlag_SupportsEditmode | eModifierTypeFlag_AcceptsVertexCosOnly | eModifierTypeFlag_SupportsEditmode |
eModifierTypeFlag_EnableInEditmode, eModifierTypeFlag_EnableInEditmode,
/* icon */ ICON_MOD_SIMPLEDEFORM,
/* copyData */ BKE_modifier_copydata_generic, /* copyData */ BKE_modifier_copydata_generic,

View File

@@ -183,6 +183,7 @@ ModifierTypeInfo modifierType_Simulation = {
/* structSize */ sizeof(SimulationModifierData), /* structSize */ sizeof(SimulationModifierData),
/* type */ eModifierTypeType_None, /* type */ eModifierTypeType_None,
/* flags */ (ModifierTypeFlag)0, /* flags */ (ModifierTypeFlag)0,
/* icon */ ICON_PHYSICS, /* TODO: Use correct icon. */
/* copyData */ copyData, /* copyData */ copyData,

View File

@@ -2013,6 +2013,7 @@ ModifierTypeInfo modifierType_Skin = {
/* structSize */ sizeof(SkinModifierData), /* structSize */ sizeof(SkinModifierData),
/* type */ eModifierTypeType_Constructive, /* type */ eModifierTypeType_Constructive,
/* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsEditmode, /* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsEditmode,
/* icon */ ICON_MOD_SKIN,
/* copyData */ BKE_modifier_copydata_generic, /* copyData */ BKE_modifier_copydata_generic,

View File

@@ -275,6 +275,7 @@ ModifierTypeInfo modifierType_Smooth = {
/* type */ eModifierTypeType_OnlyDeform, /* type */ eModifierTypeType_OnlyDeform,
/* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_AcceptsCVs | /* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_AcceptsCVs |
eModifierTypeFlag_SupportsEditmode, eModifierTypeFlag_SupportsEditmode,
/* icon */ ICON_MOD_SMOOTH,
/* copyData */ BKE_modifier_copydata_generic, /* copyData */ BKE_modifier_copydata_generic,

View File

@@ -108,6 +108,7 @@ ModifierTypeInfo modifierType_Softbody = {
/* flags */ eModifierTypeFlag_AcceptsCVs | eModifierTypeFlag_AcceptsVertexCosOnly | /* flags */ eModifierTypeFlag_AcceptsCVs | eModifierTypeFlag_AcceptsVertexCosOnly |
eModifierTypeFlag_RequiresOriginalData | eModifierTypeFlag_Single | eModifierTypeFlag_RequiresOriginalData | eModifierTypeFlag_Single |
eModifierTypeFlag_UsesPointCache, eModifierTypeFlag_UsesPointCache,
/* icon */ ICON_MOD_SOFT,
/* copyData */ NULL, /* copyData */ NULL,

View File

@@ -265,6 +265,7 @@ ModifierTypeInfo modifierType_Solidify = {
/* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_AcceptsCVs | /* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_AcceptsCVs |
eModifierTypeFlag_SupportsMapping | eModifierTypeFlag_SupportsEditmode | eModifierTypeFlag_SupportsMapping | eModifierTypeFlag_SupportsEditmode |
eModifierTypeFlag_EnableInEditmode, eModifierTypeFlag_EnableInEditmode,
/* icon */ ICON_MOD_SOLIDIFY,
/* copyData */ BKE_modifier_copydata_generic, /* copyData */ BKE_modifier_copydata_generic,

View File

@@ -480,6 +480,7 @@ ModifierTypeInfo modifierType_Subsurf = {
/* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsMapping | /* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsMapping |
eModifierTypeFlag_SupportsEditmode | eModifierTypeFlag_EnableInEditmode | eModifierTypeFlag_SupportsEditmode | eModifierTypeFlag_EnableInEditmode |
eModifierTypeFlag_AcceptsCVs, eModifierTypeFlag_AcceptsCVs,
/* icon */ ICON_MOD_SUBSURF,
/* copyData */ copyData, /* copyData */ copyData,

View File

@@ -229,6 +229,7 @@ ModifierTypeInfo modifierType_Surface = {
/* type */ eModifierTypeType_OnlyDeform, /* type */ eModifierTypeType_OnlyDeform,
/* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_AcceptsCVs | /* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_AcceptsCVs |
eModifierTypeFlag_NoUserAdd, eModifierTypeFlag_NoUserAdd,
/* icon */ ICON_MOD_PHYSICS,
/* copyData */ copyData, /* copyData */ copyData,

View File

@@ -1502,6 +1502,7 @@ ModifierTypeInfo modifierType_SurfaceDeform = {
/* structSize */ sizeof(SurfaceDeformModifierData), /* structSize */ sizeof(SurfaceDeformModifierData),
/* type */ eModifierTypeType_OnlyDeform, /* type */ eModifierTypeType_OnlyDeform,
/* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsEditmode, /* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsEditmode,
/* icon */ ICON_MOD_MESHDEFORM,
/* copyData */ copyData, /* copyData */ copyData,

View File

@@ -156,6 +156,7 @@ ModifierTypeInfo modifierType_Triangulate = {
/* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsEditmode | /* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsEditmode |
eModifierTypeFlag_SupportsMapping | eModifierTypeFlag_EnableInEditmode | eModifierTypeFlag_SupportsMapping | eModifierTypeFlag_EnableInEditmode |
eModifierTypeFlag_AcceptsCVs, eModifierTypeFlag_AcceptsCVs,
/* icon */ ICON_MOD_TRIANGULATE,
/* copyData */ BKE_modifier_copydata_generic, /* copyData */ BKE_modifier_copydata_generic,

View File

@@ -369,6 +369,7 @@ ModifierTypeInfo modifierType_UVProject = {
/* type */ eModifierTypeType_NonGeometrical, /* type */ eModifierTypeType_NonGeometrical,
/* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsMapping | /* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsMapping |
eModifierTypeFlag_SupportsEditmode | eModifierTypeFlag_EnableInEditmode, eModifierTypeFlag_SupportsEditmode | eModifierTypeFlag_EnableInEditmode,
/* icon */ ICON_MOD_UVPROJECT,
/* copyData */ BKE_modifier_copydata_generic, /* copyData */ BKE_modifier_copydata_generic,

View File

@@ -329,6 +329,7 @@ ModifierTypeInfo modifierType_UVWarp = {
/* type */ eModifierTypeType_NonGeometrical, /* type */ eModifierTypeType_NonGeometrical,
/* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsEditmode | /* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsEditmode |
eModifierTypeFlag_EnableInEditmode, eModifierTypeFlag_EnableInEditmode,
/* icon */ ICON_MOD_UVPROJECT, /* TODO: Use correct icon. */
/* copyData */ BKE_modifier_copydata_generic, /* copyData */ BKE_modifier_copydata_generic,

View File

@@ -536,6 +536,7 @@ ModifierTypeInfo modifierType_Warp = {
/* type */ eModifierTypeType_OnlyDeform, /* type */ eModifierTypeType_OnlyDeform,
/* flags */ eModifierTypeFlag_AcceptsCVs | eModifierTypeFlag_AcceptsVertexCosOnly | /* flags */ eModifierTypeFlag_AcceptsCVs | eModifierTypeFlag_AcceptsVertexCosOnly |
eModifierTypeFlag_SupportsEditmode, eModifierTypeFlag_SupportsEditmode,
/* icon */ ICON_MOD_WARP,
/* copyData */ copyData, /* copyData */ copyData,
/* deformVerts */ deformVerts, /* deformVerts */ deformVerts,

View File

@@ -498,6 +498,7 @@ ModifierTypeInfo modifierType_Wave = {
/* type */ eModifierTypeType_OnlyDeform, /* type */ eModifierTypeType_OnlyDeform,
/* flags */ eModifierTypeFlag_AcceptsCVs | eModifierTypeFlag_AcceptsVertexCosOnly | /* flags */ eModifierTypeFlag_AcceptsCVs | eModifierTypeFlag_AcceptsVertexCosOnly |
eModifierTypeFlag_SupportsEditmode, eModifierTypeFlag_SupportsEditmode,
/* icon */ ICON_MOD_WAVE,
/* copyData */ BKE_modifier_copydata_generic, /* copyData */ BKE_modifier_copydata_generic,

View File

@@ -750,6 +750,7 @@ ModifierTypeInfo modifierType_WeightedNormal = {
/* type */ eModifierTypeType_Constructive, /* type */ eModifierTypeType_Constructive,
/* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsMapping | /* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsMapping |
eModifierTypeFlag_SupportsEditmode | eModifierTypeFlag_EnableInEditmode, eModifierTypeFlag_SupportsEditmode | eModifierTypeFlag_EnableInEditmode,
/* icon */ ICON_MOD_VERTEX_WEIGHT,
/* copyData */ BKE_modifier_copydata_generic, /* copyData */ BKE_modifier_copydata_generic,

View File

@@ -426,6 +426,7 @@ ModifierTypeInfo modifierType_WeightVGEdit = {
/* type */ eModifierTypeType_NonGeometrical, /* type */ eModifierTypeType_NonGeometrical,
/* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsMapping | /* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsMapping |
eModifierTypeFlag_SupportsEditmode | eModifierTypeFlag_UsesPreview, eModifierTypeFlag_SupportsEditmode | eModifierTypeFlag_UsesPreview,
/* icon */ ICON_MOD_VERTEX_WEIGHT,
/* copyData */ copyData, /* copyData */ copyData,

View File

@@ -513,6 +513,7 @@ ModifierTypeInfo modifierType_WeightVGMix = {
/* type */ eModifierTypeType_NonGeometrical, /* type */ eModifierTypeType_NonGeometrical,
/* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsMapping | /* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsMapping |
eModifierTypeFlag_SupportsEditmode | eModifierTypeFlag_UsesPreview, eModifierTypeFlag_SupportsEditmode | eModifierTypeFlag_UsesPreview,
/* icon */ ICON_MOD_VERTEX_WEIGHT,
/* copyData */ BKE_modifier_copydata_generic, /* copyData */ BKE_modifier_copydata_generic,

View File

@@ -722,6 +722,7 @@ ModifierTypeInfo modifierType_WeightVGProximity = {
/* type */ eModifierTypeType_NonGeometrical, /* type */ eModifierTypeType_NonGeometrical,
/* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsMapping | /* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsMapping |
eModifierTypeFlag_SupportsEditmode | eModifierTypeFlag_UsesPreview, eModifierTypeFlag_SupportsEditmode | eModifierTypeFlag_UsesPreview,
/* icon */ ICON_MOD_VERTEX_WEIGHT,
/* copyData */ BKE_modifier_copydata_generic, /* copyData */ BKE_modifier_copydata_generic,

View File

@@ -1959,6 +1959,7 @@ ModifierTypeInfo modifierType_Weld = {
/* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsMapping | /* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsMapping |
eModifierTypeFlag_SupportsEditmode | eModifierTypeFlag_EnableInEditmode | eModifierTypeFlag_SupportsEditmode | eModifierTypeFlag_EnableInEditmode |
eModifierTypeFlag_AcceptsCVs, eModifierTypeFlag_AcceptsCVs,
/* icon */ ICON_AUTOMERGE_OFF, /* TODO: Use correct icon. */
/* copyData */ BKE_modifier_copydata_generic, /* copyData */ BKE_modifier_copydata_generic,

View File

@@ -182,6 +182,7 @@ ModifierTypeInfo modifierType_Wireframe = {
/* structSize */ sizeof(WireframeModifierData), /* structSize */ sizeof(WireframeModifierData),
/* type */ eModifierTypeType_Constructive, /* type */ eModifierTypeType_Constructive,
/* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsEditmode, /* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsEditmode,
/* icon */ ICON_MOD_WIREFRAME,
/* copyData */ BKE_modifier_copydata_generic, /* copyData */ BKE_modifier_copydata_generic,