[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [60438] trunk/blender/source/blender/ editors/object/object_edit.c: Fix [#36846] Adding a cloth sim to an object does not make it possible to go into Particle Mode for that object .

Bastien Montagne montagne29 at wanadoo.fr
Mon Sep 30 12:20:55 CEST 2013


Revision: 60438
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=60438
Author:   mont29
Date:     2013-09-30 10:20:54 +0000 (Mon, 30 Sep 2013)
Log Message:
-----------
Fix [#36846] Adding a cloth sim to an object does not make it possible to go into Particle Mode for that object. 

Softbody/cloth were not checked when building available modes enum.

Modified Paths:
--------------
    trunk/blender/source/blender/editors/object/object_edit.c

Modified: trunk/blender/source/blender/editors/object/object_edit.c
===================================================================
--- trunk/blender/source/blender/editors/object/object_edit.c	2013-09-30 10:02:34 UTC (rev 60437)
+++ trunk/blender/source/blender/editors/object/object_edit.c	2013-09-30 10:20:54 UTC (rev 60438)
@@ -1471,12 +1471,14 @@
 
 	ob = CTX_data_active_object(C);
 	if (ob) {
+		const bool use_mode_particle_edit = (ob->particlesystem.first != NULL) || (ob->soft != NULL) ||
+		                                    (modifiers_findByType(ob, eModifierType_Cloth) != NULL);
 		while (input->identifier) {
 			if ((input->value == OB_MODE_EDIT && OB_TYPE_SUPPORT_EDITMODE(ob->type)) ||
 			    (input->value == OB_MODE_POSE && (ob->type == OB_ARMATURE)) ||
-			    (input->value == OB_MODE_PARTICLE_EDIT && ob->particlesystem.first) ||
-			    ((input->value == OB_MODE_SCULPT || input->value == OB_MODE_VERTEX_PAINT ||
-			      input->value == OB_MODE_WEIGHT_PAINT || input->value == OB_MODE_TEXTURE_PAINT) && (ob->type == OB_MESH)) ||
+			    (input->value == OB_MODE_PARTICLE_EDIT && use_mode_particle_edit) ||
+			    (ELEM4(input->value, OB_MODE_SCULPT, OB_MODE_VERTEX_PAINT,
+			           OB_MODE_WEIGHT_PAINT, OB_MODE_TEXTURE_PAINT) && (ob->type == OB_MESH)) ||
 			    (input->value == OB_MODE_OBJECT))
 			{
 				RNA_enum_item_add(&item, &totitem, input);




More information about the Bf-blender-cvs mailing list