diff options
author | Philipp Oeser <info@graphics-engineer.com> | 2021-04-21 12:05:40 +0300 |
---|---|---|
committer | Philipp Oeser <info@graphics-engineer.com> | 2021-04-21 12:05:40 +0300 |
commit | 5fe3d2dc7d22a938ce0e128ecfcf1a66ff129e8a (patch) | |
tree | 591a0cd50134366009a842ee4520b3810739d594 /source/blender | |
parent | 79d2f2c2f9a9d3266c5d44876932a25fe0bdb3b1 (diff) | |
parent | 1a6b51e17502a221bc9813301c10cb9b3c4883f7 (diff) |
Merge branch 'blender-v2.93-release'
Diffstat (limited to 'source/blender')
-rw-r--r-- | source/blender/modifiers/intern/MOD_ui_common.c | 27 |
1 files changed, 26 insertions, 1 deletions
diff --git a/source/blender/modifiers/intern/MOD_ui_common.c b/source/blender/modifiers/intern/MOD_ui_common.c index fd37ad18b4c..0be5c164089 100644 --- a/source/blender/modifiers/intern/MOD_ui_common.c +++ b/source/blender/modifiers/intern/MOD_ui_common.c @@ -344,7 +344,32 @@ static void modifier_panel_header(const bContext *C, Panel *panel) } } /* Tessellation point for curve-typed objects. */ else if (ELEM(ob->type, OB_CURVE, OB_SURF, OB_FONT)) { - if (mti->type != eModifierTypeType_Constructive) { + /* Some modifiers can work with pre-tessellated curves only. */ + if (ELEM(md->type, eModifierType_Hook, eModifierType_Softbody, eModifierType_MeshDeform)) { + /* Add button (appearing to be ON) and add tip why this cant be changed. */ + sub = uiLayoutRow(row, true); + uiBlock *block = uiLayoutGetBlock(sub); + static int apply_on_spline_always_on_hack = eModifierMode_ApplyOnSpline; + uiBut *but = uiDefIconButBitI(block, + UI_BTYPE_TOGGLE, + eModifierMode_ApplyOnSpline, + 0, + ICON_SURFACE_DATA, + 0, + 0, + UI_UNIT_X - 2, + UI_UNIT_Y, + &apply_on_spline_always_on_hack, + 0.0, + 0.0, + 0.0, + 0.0, + TIP_("Apply on Spline")); + UI_but_disable( + but, TIP_("This modifier can only deform control points, not the filled curve/surface")); + buttons_number++; + } + else if (mti->type != eModifierTypeType_Constructive) { /* Constructive modifiers tessellates curve before applying. */ uiItemR(row, ptr, "use_apply_on_spline", 0, "", ICON_NONE); buttons_number++; |