[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [52741] trunk/blender: Image Editor / UV:

Thomas Dinges blender at dingto.org
Mon Dec 3 13:03:20 CET 2012


Revision: 52741
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=52741
Author:   dingto
Date:     2012-12-03 12:03:16 +0000 (Mon, 03 Dec 2012)
Log Message:
-----------
Image Editor / UV: 
* Bring back "Snap to Vertex", own regression introduced in r39460.

Patch by Brecht (DNA, Transform) and myself (RNA, Script).

Revision Links:
--------------
    http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=39460

Modified Paths:
--------------
    trunk/blender/release/scripts/startup/bl_ui/space_image.py
    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_image.py
===================================================================
--- trunk/blender/release/scripts/startup/bl_ui/space_image.py	2012-12-03 11:32:12 UTC (rev 52740)
+++ trunk/blender/release/scripts/startup/bl_ui/space_image.py	2012-12-03 12:03:16 UTC (rev 52741)
@@ -414,7 +414,9 @@
 
             row = layout.row(align=True)
             row.prop(toolsettings, "use_snap", text="")
-            row.prop(toolsettings, "snap_target", text="")
+            row.prop(toolsettings, "snap_uv_element", text="", icon_only=True)
+            if toolsettings.snap_uv_element != 'INCREMENT':
+                row.prop(toolsettings, "snap_target", text="")
 
             mesh = context.edit_object.data
             layout.prop_search(mesh.uv_textures, "active", mesh, "uv_textures", text="")

Modified: trunk/blender/source/blender/editors/transform/transform_snap.c
===================================================================
--- trunk/blender/source/blender/editors/transform/transform_snap.c	2012-12-03 11:32:12 UTC (rev 52740)
+++ trunk/blender/source/blender/editors/transform/transform_snap.c	2012-12-03 12:03:16 UTC (rev 52741)
@@ -408,9 +408,15 @@
 		
 		t->tsnap.mode = ts->snap_node_mode;
 	}
+	else if (t->spacetype == SPACE_IMAGE) {
+		/* force project off when not supported */
+		t->tsnap.project = 0;
+		
+		t->tsnap.mode = ts->snap_uv_mode;
+	}
 	else {
 		/* force project off when not supported */
-		if (t->spacetype == SPACE_IMAGE || ts->snap_mode != SCE_SNAP_MODE_FACE)
+		if (ts->snap_mode != SCE_SNAP_MODE_FACE)
 			t->tsnap.project = 0;
 		
 		t->tsnap.mode = ts->snap_mode;

Modified: trunk/blender/source/blender/makesdna/DNA_scene_types.h
===================================================================
--- trunk/blender/source/blender/makesdna/DNA_scene_types.h	2012-12-03 11:32:12 UTC (rev 52740)
+++ trunk/blender/source/blender/makesdna/DNA_scene_types.h	2012-12-03 12:03:16 UTC (rev 52741)
@@ -1009,7 +1009,7 @@
 
 	/* Transform */
 	char snap_mode, snap_node_mode;
-	char pad3;
+	char snap_uv_mode;
 	short snap_flag, snap_target;
 	short proportional, prop_mode;
 	char proportional_objects; /* proportional edit, object mode */

Modified: trunk/blender/source/blender/makesrna/intern/rna_scene.c
===================================================================
--- trunk/blender/source/blender/makesrna/intern/rna_scene.c	2012-12-03 11:32:12 UTC (rev 52740)
+++ trunk/blender/source/blender/makesrna/intern/rna_scene.c	2012-12-03 12:03:16 UTC (rev 52741)
@@ -145,6 +145,11 @@
 	{0, NULL, 0, NULL, NULL}
 };
 
+EnumPropertyItem snap_uv_element_items[] = {
+	{SCE_SNAP_MODE_INCREMENT, "INCREMENT", ICON_SNAP_INCREMENT, "Increment", "Snap to increments of grid"},
+	{SCE_SNAP_MODE_VERTEX, "VERTEX", ICON_SNAP_VERTEX, "Vertex", "Snap to vertices"},
+	{0, NULL, 0, NULL, NULL}
+};
 
 /* workaround for duplicate enums,
  * have each enum line as a defne then conditionally set it or not
@@ -1642,6 +1647,13 @@
 	RNA_def_property_enum_items(prop, snap_node_element_items);
 	RNA_def_property_ui_text(prop, "Snap Node Element", "Type of element to snap to");
 	RNA_def_property_update(prop, NC_SCENE | ND_TOOLSETTINGS, NULL); /* header redraw */
+	
+	/* image editor uses own set of snap modes */
+	prop = RNA_def_property(srna, "snap_uv_element", PROP_ENUM, PROP_NONE);
+	RNA_def_property_enum_sdna(prop, NULL, "snap_uv_mode");
+	RNA_def_property_enum_items(prop, snap_uv_element_items);
+	RNA_def_property_ui_text(prop, "Snap UV Element", "Type of element to snap to");
+	RNA_def_property_update(prop, NC_SCENE | ND_TOOLSETTINGS, NULL); /* header redraw */
 
 	prop = RNA_def_property(srna, "snap_target", PROP_ENUM, PROP_NONE);
 	RNA_def_property_enum_sdna(prop, NULL, "snap_target");




More information about the Bf-blender-cvs mailing list