diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2010-08-10 10:36:42 +0400 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2010-08-10 10:36:42 +0400 |
commit | c0e39df6ac42d137fd51eeea463aace856bf97d4 (patch) | |
tree | 86be54ecb6f01b8192905a05707b12402970d5a4 /source/blender/makesrna/intern/rna_object.c | |
parent | 41531e4fb6547df543a80d62b473c250d5b78753 (diff) |
- Enable shape key switching in edit mode for curves, surfaces and latticies
- Disable changing of lattice size if there are shape keys
Diffstat (limited to 'source/blender/makesrna/intern/rna_object.c')
-rw-r--r-- | source/blender/makesrna/intern/rna_object.c | 22 |
1 files changed, 18 insertions, 4 deletions
diff --git a/source/blender/makesrna/intern/rna_object.c b/source/blender/makesrna/intern/rna_object.c index 51e2fc38014..ee38505d792 100644 --- a/source/blender/makesrna/intern/rna_object.c +++ b/source/blender/makesrna/intern/rna_object.c @@ -128,6 +128,8 @@ EnumPropertyItem object_type_curve_items[] = { #include "ED_mesh.h" #include "ED_object.h" #include "ED_particle.h" +#include "ED_curve.h" +#include "ED_lattice.h" static void rna_Object_internal_update(Main *bmain, Scene *scene, PointerRNA *ptr) { @@ -182,12 +184,24 @@ void rna_Object_internal_update_data(Main *bmain, Scene *scene, PointerRNA *ptr) void rna_Object_active_shape_update(Main *bmain, Scene *scene, PointerRNA *ptr) { Object *ob= ptr->id.data; - int editmode= (scene->obedit == ob && ob->type == OB_MESH); - if(editmode) { + if(scene->obedit == ob) { /* exit/enter editmode to get new shape */ - load_editMesh(scene, ob); - make_editMesh(scene, ob); + switch(ob->type) { + case OB_MESH: + load_editMesh(scene, ob); + make_editMesh(scene, ob); + break; + case OB_CURVE: + case OB_SURF: + load_editNurb(ob); + make_editNurb(ob); + break; + case OB_LATTICE: + load_editLatt(ob); + make_editLatt(ob); + break; + } } rna_Object_internal_update_data(bmain, scene, ptr); |