[Bf-blender-cvs] [997a210b08] master: Fix T49632: Grease pencil in "Edit Strokes" mode: Snap tool did not snap points to active object A simple confusion between enums: ~SNAP_NOT_ACTIVE~

Germano Cavalcante noreply at git.blender.org
Mon Jan 30 22:30:31 CET 2017


Commit: 997a210b086f93a881b10cb1c3ba6bedcb33676a
Author: Germano Cavalcante
Date:   Mon Jan 30 18:30:19 2017 -0300
Branches: master
https://developer.blender.org/rB997a210b086f93a881b10cb1c3ba6bedcb33676a

Fix T49632: Grease pencil in "Edit Strokes" mode: Snap tool did not snap points to active object
A simple confusion between enums: ~SNAP_NOT_ACTIVE~

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

M	source/blender/editors/transform/transform_snap.c

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

diff --git a/source/blender/editors/transform/transform_snap.c b/source/blender/editors/transform/transform_snap.c
index f8bb124e94..87ac54b2bd 100644
--- a/source/blender/editors/transform/transform_snap.c
+++ b/source/blender/editors/transform/transform_snap.c
@@ -569,7 +569,9 @@ static void initSnappingMode(TransInfo *t)
 		else if (t->tsnap.applySnap != NULL && // A snapping function actually exist
 		         (obedit == NULL) ) // Object Mode
 		{
-			t->tsnap.modeSelect = SNAP_NOT_SELECTED;
+			/* In "Edit Strokes" mode, Snap tool can perform snap to selected or active objects (see T49632)
+			 * TODO: perform self snap in gpencil_strokes */
+			t->tsnap.modeSelect = ((t->options & CTX_GPENCIL_STROKES) != 0) ? SNAP_ALL : SNAP_NOT_SELECTED;
 		}
 		else {
 			/* Grid if snap is not possible */
@@ -1214,7 +1216,7 @@ bool snapObjectsTransform(
 	        t->tsnap.object_context,
 	        t->scene->toolsettings->snap_mode,
 	        &(const struct SnapObjectParams){
-	            .snap_select = ((t->options & CTX_GPENCIL_STROKES) != 0) ? SNAP_NOT_ACTIVE : t->tsnap.modeSelect,
+	            .snap_select = t->tsnap.modeSelect,
 	            .use_object_edit_cage = (t->flag & T_EDIT) != 0,
 	        },
 	        mval, dist_px, NULL,
@@ -1304,7 +1306,7 @@ bool peelObjectsTransform(
 	        t->tsnap.object_context,
 	        mval,
 	        &(const struct SnapObjectParams){
-	            .snap_select = ((t->options & CTX_GPENCIL_STROKES) != 0) ? SNAP_NOT_ACTIVE : t->tsnap.modeSelect,
+	            .snap_select = t->tsnap.modeSelect,
 	            .use_object_edit_cage = (t->flag & T_EDIT) != 0,
 	        },
 	        use_peel_object,




More information about the Bf-blender-cvs mailing list