[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [28224] trunk/blender/source/blender/ editors/mesh/loopcut.c: Fix [#21559] Loopcut and scale problem.

Matt Ebb matt at mke3.net
Fri Apr 16 10:14:20 CEST 2010


Revision: 28224
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=28224
Author:   broken
Date:     2010-04-16 10:14:20 +0200 (Fri, 16 Apr 2010)

Log Message:
-----------
Fix [#21559] Loopcut and scale problem.

Force mesh out of face select mode and into edge mode when doing loop cut - 
it left an invalid edge selection in face mode, especially with edge slider afterwards.

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

Modified: trunk/blender/source/blender/editors/mesh/loopcut.c
===================================================================
--- trunk/blender/source/blender/editors/mesh/loopcut.c	2010-04-16 08:13:30 UTC (rev 28223)
+++ trunk/blender/source/blender/editors/mesh/loopcut.c	2010-04-16 08:14:20 UTC (rev 28224)
@@ -271,6 +271,16 @@
 		if (lcd->do_cut) {
 			EditMesh *em = BKE_mesh_get_editmesh(lcd->ob->data);
 			esubdivideflag(lcd->ob, em, SELECT, 0.0f, 0.0f, 0, cuts, 0, SUBDIV_SELECT_LOOPCUT);
+
+			/* force edge slide to edge select mode in in face select mode */
+			if (em->selectmode & SCE_SELECT_FACE) {
+				if (em->selectmode == SCE_SELECT_FACE)
+					em->selectmode = SCE_SELECT_EDGE;
+				else
+					em->selectmode &= ~SCE_SELECT_FACE;
+				CTX_data_tool_settings(C)->selectmode= em->selectmode;
+				EM_selectmode_set(em);
+			}
 			
 			DAG_id_flush_update(lcd->ob->data, OB_RECALC_DATA);
 			WM_event_add_notifier(C, NC_GEOM|ND_DATA, lcd->ob->data);





More information about the Bf-blender-cvs mailing list