From f372758257e268d4c1278aceeb243c1aa83ad695 Mon Sep 17 00:00:00 2001 From: Thomas Dinges Date: Fri, 13 Dec 2013 20:57:36 +0100 Subject: 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. :) --- source/blender/blenkernel/intern/modifier.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'source/blender/blenkernel/intern/modifier.c') 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); -- cgit v1.2.3