[Bf-blender-cvs] [d5d2633] master: Mesh/Curve Join: remove edit-mode toggle

Campbell Barton noreply at git.blender.org
Fri Jul 8 08:49:39 CEST 2016


Commit: d5d26338b5a13aaaaefd051efcbbc93c453b57c7
Author: Campbell Barton
Date:   Fri Jul 8 16:41:22 2016 +1000
Branches: master
https://developer.blender.org/rBd5d26338b5a13aaaaefd051efcbbc93c453b57c7

Mesh/Curve Join: remove edit-mode toggle

Toggling edit-node after joining objects is redundant as far as I can see -
(dates back to first revision).

Also caused all edges to be drawn w/ meshes, redundant undo step w/ curves.

===================================================================

M	source/blender/editors/curve/editcurve.c
M	source/blender/editors/mesh/meshtools.c

===================================================================

diff --git a/source/blender/editors/curve/editcurve.c b/source/blender/editors/curve/editcurve.c
index 420f72f..d87f8a6 100644
--- a/source/blender/editors/curve/editcurve.c
+++ b/source/blender/editors/curve/editcurve.c
@@ -6034,9 +6034,8 @@ int join_curve_exec(bContext *C, wmOperator *op)
 	BLI_movelisttolist(&cu->nurb, &tempbase);
 	
 	DAG_relations_tag_update(bmain);   // because we removed object(s), call before editmode!
-	
-	ED_object_editmode_enter(C, EM_WAITCURSOR);
-	ED_object_editmode_exit(C, EM_FREEDATA | EM_WAITCURSOR | EM_DO_UNDO);
+
+	DAG_id_tag_update(&ob->id, OB_RECALC_OB | OB_RECALC_DATA);
 
 	WM_event_add_notifier(C, NC_SCENE | ND_OB_ACTIVE, scene);
 
diff --git a/source/blender/editors/mesh/meshtools.c b/source/blender/editors/mesh/meshtools.c
index 1b2d4b7..123f701 100644
--- a/source/blender/editors/mesh/meshtools.c
+++ b/source/blender/editors/mesh/meshtools.c
@@ -564,21 +564,10 @@ int join_mesh_exec(bContext *C, wmOperator *op)
 		BKE_key_sort(key);
 	}
 
-
 	DAG_relations_tag_update(bmain);   // removed objects, need to rebuild dag
 
-#if 0
-	ED_object_editmode_enter(C, EM_WAITCURSOR);
-	ED_object_editmode_exit(C, EM_FREEDATA | EM_WAITCURSOR | EM_DO_UNDO);
-#else
-	/* toggle editmode using lower level functions so this can be called from python */
-	EDBM_mesh_make(scene->toolsettings, ob, false);
-	EDBM_mesh_load(ob);
-	EDBM_mesh_free(me->edit_btmesh);
-	MEM_freeN(me->edit_btmesh);
-	me->edit_btmesh = NULL;
 	DAG_id_tag_update(&ob->id, OB_RECALC_OB | OB_RECALC_DATA);
-#endif
+
 	WM_event_add_notifier(C, NC_SCENE | ND_OB_ACTIVE, scene);
 
 	return OPERATOR_FINISHED;




More information about the Bf-blender-cvs mailing list