[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [38752] trunk/blender: fix [#28066] Unchecking 'self project' messes up 'Snap to Vertex'

Campbell Barton ideasman42 at gmail.com
Wed Jul 27 09:22:31 CEST 2011


Revision: 38752
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=38752
Author:   campbellbarton
Date:     2011-07-27 07:22:31 +0000 (Wed, 27 Jul 2011)
Log Message:
-----------
fix [#28066] Unchecking 'self project' messes up 'Snap to Vertex'
this option is useful for all non-grid snapping modes (when in editmode) so make available in those cases too.

Modified Paths:
--------------
    trunk/blender/release/scripts/startup/bl_ui/space_view3d.py
    trunk/blender/source/blender/editors/transform/transform.h
    trunk/blender/source/blender/editors/transform/transform_snap.c
    trunk/blender/source/blender/makesdna/DNA_scene_types.h
    trunk/blender/source/blender/makesrna/intern/rna_scene.c

Modified: trunk/blender/release/scripts/startup/bl_ui/space_view3d.py
===================================================================
--- trunk/blender/release/scripts/startup/bl_ui/space_view3d.py	2011-07-27 06:55:20 UTC (rev 38751)
+++ trunk/blender/release/scripts/startup/bl_ui/space_view3d.py	2011-07-27 07:22:31 UTC (rev 38752)
@@ -79,19 +79,22 @@
                     row.prop(toolsettings, "proportional_edit_falloff", text="", icon_only=True)
 
         # Snap
+        snap_element = toolsettings.snap_element
         row = layout.row(align=True)
         row.prop(toolsettings, "use_snap", text="")
         row.prop(toolsettings, "snap_element", text="", icon_only=True)
-        if toolsettings.snap_element != 'INCREMENT':
+        if snap_element != 'INCREMENT':
             row.prop(toolsettings, "snap_target", text="")
-            if obj and obj.mode == 'OBJECT':
-                row.prop(toolsettings, "use_snap_align_rotation", text="")
-        if toolsettings.snap_element == 'VOLUME':
+            if obj:
+                if obj.mode == 'OBJECT':
+                    row.prop(toolsettings, "use_snap_align_rotation", text="")
+                elif obj.mode == 'EDIT':
+                    row.prop(toolsettings, "use_snap_self", text="")
+
+        if snap_element == 'VOLUME':
             row.prop(toolsettings, "use_snap_peel_object", text="")
-        elif toolsettings.snap_element == 'FACE':
+        elif snap_element == 'FACE':
             row.prop(toolsettings, "use_snap_project", text="")
-            if toolsettings.use_snap_project and obj.mode == 'EDIT':
-                row.prop(toolsettings, "use_snap_project_self", text="")
 
         # OpenGL render
         row = layout.row(align=True)

Modified: trunk/blender/source/blender/editors/transform/transform.h
===================================================================
--- trunk/blender/source/blender/editors/transform/transform.h	2011-07-27 06:55:20 UTC (rev 38751)
+++ trunk/blender/source/blender/editors/transform/transform.h	2011-07-27 07:22:31 UTC (rev 38752)
@@ -96,7 +96,7 @@
 	short	modeSelect;
 	short	align;
 	char	project;
-	char	project_self;
+	char	snap_self;
 	short	peel;
 	short  	status;
 	float	snapPoint[3]; /* snapping from this point */

Modified: trunk/blender/source/blender/editors/transform/transform_snap.c
===================================================================
--- trunk/blender/source/blender/editors/transform/transform_snap.c	2011-07-27 06:55:20 UTC (rev 38751)
+++ trunk/blender/source/blender/editors/transform/transform_snap.c	2011-07-27 07:22:31 UTC (rev 38752)
@@ -392,7 +392,7 @@
 			}
 			else
 			{
-				t->tsnap.modeSelect = t->tsnap.project_self ? SNAP_ALL : SNAP_NOT_OBEDIT;
+				t->tsnap.modeSelect = t->tsnap.snap_self ? SNAP_ALL : SNAP_NOT_OBEDIT;
 			}
 		}
 		/* Particles edit mode*/
@@ -458,9 +458,9 @@
 				t->tsnap.project = RNA_boolean_get(op->ptr, "use_snap_project");
 			}
 
-			if (RNA_struct_find_property(op->ptr, "use_snap_project_self"))
+			if (RNA_struct_find_property(op->ptr, "use_snap_self"))
 			{
-				t->tsnap.project = RNA_boolean_get(op->ptr, "use_snap_project_self");
+				t->tsnap.snap_self = RNA_boolean_get(op->ptr, "use_snap_self");
 			}
 		}
 	}
@@ -473,7 +473,7 @@
 
 		t->tsnap.align = ((t->settings->snap_flag & SCE_SNAP_ROTATE) == SCE_SNAP_ROTATE);
 		t->tsnap.project = ((t->settings->snap_flag & SCE_SNAP_PROJECT) == SCE_SNAP_PROJECT);
-		t->tsnap.project_self = !((t->settings->snap_flag & SCE_SNAP_PROJECT_NO_SELF) == SCE_SNAP_PROJECT_NO_SELF);
+		t->tsnap.snap_self = !((t->settings->snap_flag & SCE_SNAP_NO_SELF) == SCE_SNAP_NO_SELF);
 		t->tsnap.peel = ((t->settings->snap_flag & SCE_SNAP_PROJECT) == SCE_SNAP_PROJECT);
 	}
 	

Modified: trunk/blender/source/blender/makesdna/DNA_scene_types.h
===================================================================
--- trunk/blender/source/blender/makesdna/DNA_scene_types.h	2011-07-27 06:55:20 UTC (rev 38751)
+++ trunk/blender/source/blender/makesdna/DNA_scene_types.h	2011-07-27 07:22:31 UTC (rev 38752)
@@ -1074,7 +1074,7 @@
 #define SCE_SNAP_ROTATE			2
 #define SCE_SNAP_PEEL_OBJECT	4
 #define SCE_SNAP_PROJECT		8
-#define SCE_SNAP_PROJECT_NO_SELF	16
+#define SCE_SNAP_NO_SELF		16
 /* toolsettings->snap_target */
 #define SCE_SNAP_TARGET_CLOSEST	0
 #define SCE_SNAP_TARGET_CENTER	1

Modified: trunk/blender/source/blender/makesrna/intern/rna_scene.c
===================================================================
--- trunk/blender/source/blender/makesrna/intern/rna_scene.c	2011-07-27 06:55:20 UTC (rev 38751)
+++ trunk/blender/source/blender/makesrna/intern/rna_scene.c	2011-07-27 07:22:31 UTC (rev 38752)
@@ -1178,9 +1178,9 @@
 	RNA_def_property_ui_icon(prop, ICON_RETOPO, 0);
 	RNA_def_property_update(prop, NC_SCENE|ND_TOOLSETTINGS, NULL); /* header redraw */
 
-	prop= RNA_def_property(srna, "use_snap_project_self", PROP_BOOLEAN, PROP_NONE);
-	RNA_def_property_boolean_negative_sdna(prop, NULL, "snap_flag", SCE_SNAP_PROJECT_NO_SELF);
-	RNA_def_property_ui_text(prop, "Project to Self", "Project into its self (editmode)");
+	prop= RNA_def_property(srna, "use_snap_self", PROP_BOOLEAN, PROP_NONE);
+	RNA_def_property_boolean_negative_sdna(prop, NULL, "snap_flag", SCE_SNAP_NO_SELF);
+	RNA_def_property_ui_text(prop, "Project to Self", "Snap onto its self (editmode)");
 	RNA_def_property_ui_icon(prop, ICON_ORTHO, 0);
 	RNA_def_property_update(prop, NC_SCENE|ND_TOOLSETTINGS, NULL); /* header redraw */
 	




More information about the Bf-blender-cvs mailing list