diff options
author | Thomas Dinges <blender@dingto.org> | 2013-12-13 23:57:36 +0400 |
---|---|---|
committer | Thomas Dinges <blender@dingto.org> | 2013-12-13 23:57:54 +0400 |
commit | f372758257e268d4c1278aceeb243c1aa83ad695 (patch) | |
tree | 6e77b53e970897047e874307176b9792fb468770 /source/blender/blenkernel/intern/modifier.c | |
parent | 1e045a241789270cba91f779d4fa1871d6b4c43b (diff) |
Interface / Modifiers: Don't show cage placeholder in modifier header, if the current modifier does not support it or the cage is disabled (like Subsurf 0).
This way we save some space but still avoid the jumping around while changing settings in the header itself.
Thanks to Brecht for help on this. :)
Diffstat (limited to 'source/blender/blenkernel/intern/modifier.c')
-rw-r--r-- | source/blender/blenkernel/intern/modifier.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/source/blender/blenkernel/intern/modifier.c b/source/blender/blenkernel/intern/modifier.c index 4871b9bf3bf..9f82fa8c84f 100644 --- a/source/blender/blenkernel/intern/modifier.c +++ b/source/blender/blenkernel/intern/modifier.c @@ -263,6 +263,18 @@ void modifier_copyData(ModifierData *md, ModifierData *target) mti->copyData(md, target); } + +bool modifier_supportsCage(struct Scene *scene, ModifierData *md) +{ + ModifierTypeInfo *mti = modifierType_getInfo(md->type); + + md->scene = scene; + + return ((!mti->isDisabled || !mti->isDisabled(md, 0)) && + (mti->flags & eModifierTypeFlag_SupportsEditmode) && + modifier_supportsMapping(md)); +} + bool modifier_couldBeCage(struct Scene *scene, ModifierData *md) { ModifierTypeInfo *mti = modifierType_getInfo(md->type); |