Spin Tool: hide options unrelated to duplication

This commit is contained in:
Campbell Barton 2018-09-27 11:52:21 +10:00
parent 63658ae76d
commit 09c7bfe42b

@ -125,6 +125,21 @@ static int edbm_spin_invoke(bContext *C, wmOperator *op, const wmEvent *UNUSED(e
return edbm_spin_exec(C, op);
}
static bool edbm_spin_poll_property(const bContext *UNUSED(C), wmOperator *op, const PropertyRNA *prop)
{
const char *prop_id = RNA_property_identifier(prop);
const bool dupli = RNA_boolean_get(op->ptr, "dupli");
if (dupli) {
if (STREQ(prop_id, "use_auto_merge") ||
STREQ(prop_id, "use_normal_flip"))
{
return false;
}
}
return true;
}
void MESH_OT_spin(wmOperatorType *ot)
{
PropertyRNA *prop;
@ -138,6 +153,7 @@ void MESH_OT_spin(wmOperatorType *ot)
ot->invoke = edbm_spin_invoke;
ot->exec = edbm_spin_exec;
ot->poll = ED_operator_editmesh;
ot->poll_property = edbm_spin_poll_property;
/* flags */
ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO;