[Bf-blender-cvs] [3739f53] master: Fix T38112: Rigid Body can't be created for objects with linked mesh
Sergej Reich
noreply at git.blender.org
Wed Jan 8 03:35:13 CET 2014
Commit: 3739f53a6e2ea7e643cd9630f999b9c7503110e3
Author: Sergej Reich
Date: Wed Jan 8 03:29:12 2014 +0100
https://developer.blender.org/rB3739f53a6e2ea7e643cd9630f999b9c7503110e3
Fix T38112: Rigid Body can't be created for objects with linked mesh
Make poll function for rigid body add operators less strict.
===================================================================
M source/blender/editors/physics/rigidbody_object.c
===================================================================
diff --git a/source/blender/editors/physics/rigidbody_object.c b/source/blender/editors/physics/rigidbody_object.c
index b166f36..e4426fd 100644
--- a/source/blender/editors/physics/rigidbody_object.c
+++ b/source/blender/editors/physics/rigidbody_object.c
@@ -80,6 +80,16 @@ static int ED_operator_rigidbody_active_poll(bContext *C)
return 0;
}
+static int ED_operator_rigidbody_add_poll(bContext *C)
+{
+ if (ED_operator_object_active_editable(C)) {
+ Object *ob = ED_object_active_context(C);
+ return (ob && ob->type == OB_MESH);
+ }
+ else
+ return 0;
+}
+
/* ----------------- */
bool ED_rigidbody_object_add(Scene *scene, Object *ob, int type, ReportList *reports)
@@ -172,7 +182,7 @@ void RIGIDBODY_OT_object_add(wmOperatorType *ot)
/* callbacks */
ot->exec = rigidbody_object_add_exec;
- ot->poll = ED_operator_object_active_editable_mesh;
+ ot->poll = ED_operator_rigidbody_add_poll;
/* flags */
ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO;
@@ -263,7 +273,7 @@ void RIGIDBODY_OT_objects_add(wmOperatorType *ot)
/* callbacks */
ot->exec = rigidbody_objects_add_exec;
- ot->poll = ED_operator_object_active_editable_mesh;
+ ot->poll = ED_operator_rigidbody_add_poll;
/* flags */
ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO;
More information about the Bf-blender-cvs
mailing list