[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [40517] branches/bmesh/blender/source/ blender: fix for missing memfree with raddish merge, copy over changes from trunk for switching mode - Ctrl+Tab wasnt setting weight paint .
Campbell Barton
ideasman42 at gmail.com
Sat Sep 24 13:42:13 CEST 2011
Revision: 40517
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=40517
Author: campbellbarton
Date: 2011-09-24 11:42:11 +0000 (Sat, 24 Sep 2011)
Log Message:
-----------
fix for missing memfree with raddish merge, copy over changes from trunk for switching mode - Ctrl+Tab wasnt setting weight paint.
Modified Paths:
--------------
branches/bmesh/blender/source/blender/blenkernel/intern/DerivedMesh.c
branches/bmesh/blender/source/blender/editors/object/object_edit.c
Modified: branches/bmesh/blender/source/blender/blenkernel/intern/DerivedMesh.c
===================================================================
--- branches/bmesh/blender/source/blender/blenkernel/intern/DerivedMesh.c 2011-09-24 11:24:34 UTC (rev 40516)
+++ branches/bmesh/blender/source/blender/blenkernel/intern/DerivedMesh.c 2011-09-24 11:42:11 UTC (rev 40517)
@@ -982,6 +982,8 @@
}
}
+ MEM_freeN(defbase_sel);
+
CustomData_add_layer(&dm->loopData, CD_WEIGHT_MLOOPCOL, CD_ASSIGN, wlcol, totloop);
}
Modified: branches/bmesh/blender/source/blender/editors/object/object_edit.c
===================================================================
--- branches/bmesh/blender/source/blender/editors/object/object_edit.c 2011-09-24 11:24:34 UTC (rev 40516)
+++ branches/bmesh/blender/source/blender/editors/object/object_edit.c 2011-09-24 11:42:11 UTC (rev 40517)
@@ -379,7 +379,7 @@
}
BLI_freelistN(&pidlist);
- BKE_ptcache_object_reset(scene, obedit, PTCACHE_RESET_DEPSGRAPH);
+ BKE_ptcache_object_reset(scene, obedit, PTCACHE_RESET_OUTDATED);
/* also flush ob recalc, doesn't take much overhead, but used for particles */
DAG_id_tag_update(&obedit->id, OB_RECALC_OB|OB_RECALC_DATA);
@@ -1833,16 +1833,11 @@
{
ObjectMode mode = RNA_enum_get(op->ptr, "mode");
- if(mode == OB_MODE_OBJECT)
- return 1;
-
if(ob) {
- switch(ob->type) {
- case OB_EMPTY:
- case OB_LAMP:
- case OB_CAMERA:
- return 0;
+ if(mode == OB_MODE_OBJECT)
+ return 1;
+ switch(ob->type) {
case OB_MESH:
if(mode & (OB_MODE_EDIT|OB_MODE_SCULPT|OB_MODE_VERTEX_PAINT|OB_MODE_WEIGHT_PAINT|OB_MODE_TEXTURE_PAINT|OB_MODE_PARTICLE_EDIT))
return 1;
@@ -1851,14 +1846,14 @@
case OB_SURF:
case OB_FONT:
case OB_MBALL:
- if(mode & (OB_MODE_OBJECT|OB_MODE_EDIT))
+ if(mode & (OB_MODE_EDIT))
return 1;
return 0;
case OB_LATTICE:
- if(mode & (OB_MODE_OBJECT|OB_MODE_EDIT|OB_MODE_WEIGHT_PAINT))
+ if(mode & (OB_MODE_EDIT|OB_MODE_WEIGHT_PAINT))
return 1;
case OB_ARMATURE:
- if(mode & (OB_MODE_OBJECT|OB_MODE_EDIT|OB_MODE_POSE))
+ if(mode & (OB_MODE_EDIT|OB_MODE_POSE))
return 1;
}
}
@@ -1874,7 +1869,7 @@
int toggle = RNA_boolean_get(op->ptr, "toggle");
if(!ob || !object_mode_set_compat(C, op, ob))
- return OPERATOR_CANCELLED;
+ return OPERATOR_PASS_THROUGH;
/* Exit current mode if it's not the mode we're setting */
if(ob->mode != OB_MODE_OBJECT && ob->mode != mode)
@@ -1915,7 +1910,7 @@
/* flags */
ot->flag= 0; /* no register/undo here, leave it to operators being called */
- prop= RNA_def_enum(ot->srna, "mode", object_mode_items, 0, "Mode", "");
+ prop= RNA_def_enum(ot->srna, "mode", object_mode_items, OB_MODE_OBJECT, "Mode", "");
RNA_def_enum_funcs(prop, object_mode_set_itemsf);
RNA_def_boolean(ot->srna, "toggle", 0, "Toggle", "");
More information about the Bf-blender-cvs
mailing list