[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [59058] trunk/blender/source/blender/ editors/mesh/editmesh_tools.c: edge-split now leaves split edges selected

Campbell Barton ideasman42 at gmail.com
Sun Aug 11 01:22:36 CEST 2013


Revision: 59058
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=59058
Author:   campbellbarton
Date:     2013-08-10 23:22:35 +0000 (Sat, 10 Aug 2013)
Log Message:
-----------
edge-split now leaves split edges selected

Modified Paths:
--------------
    trunk/blender/source/blender/editors/mesh/editmesh_tools.c

Modified: trunk/blender/source/blender/editors/mesh/editmesh_tools.c
===================================================================
--- trunk/blender/source/blender/editors/mesh/editmesh_tools.c	2013-08-10 23:05:48 UTC (rev 59057)
+++ trunk/blender/source/blender/editors/mesh/editmesh_tools.c	2013-08-10 23:22:35 UTC (rev 59058)
@@ -852,22 +852,23 @@
 {
 	Object *obedit = CTX_data_edit_object(C);
 	BMEditMesh *em = BKE_editmesh_from_object(obedit);
-	BMesh *bm = em->bm;
-	BMOperator bmop;
-	int len = 0;
-	
-	if (!EDBM_op_init(em, &bmop, op, "split_edges edges=%he", BM_ELEM_SELECT)) {
+
+	if (!EDBM_op_call_and_selectf(
+	        em, op,
+	        "edges.out", false,
+	        "split_edges edges=%he",
+	        BM_ELEM_SELECT))
+	{
 		return OPERATOR_CANCELLED;
 	}
-	BMO_op_exec(bm, &bmop);
-	len = BMO_slot_get(bmop.slots_out, "edges.out")->len;
-	if (!EDBM_op_finish(em, &bmop, op, true)) {
-		return OPERATOR_CANCELLED;
+	
+	if (em->selectmode == SCE_SELECT_FACE) {
+		EDBM_select_flush(em);
 	}
-	
+
 	EDBM_update_generic(em, true, true);
 
-	return len ? OPERATOR_FINISHED : OPERATOR_CANCELLED;
+	return OPERATOR_FINISHED;
 }
 
 void MESH_OT_edge_split(wmOperatorType *ot)




More information about the Bf-blender-cvs mailing list