Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Dinges <blender@dingto.org>2013-12-13 23:57:36 +0400
committerThomas Dinges <blender@dingto.org>2013-12-13 23:57:54 +0400
commitf372758257e268d4c1278aceeb243c1aa83ad695 (patch)
tree6e77b53e970897047e874307176b9792fb468770 /source/blender/blenkernel/intern/modifier.c
parent1e045a241789270cba91f779d4fa1871d6b4c43b (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.c12
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);