[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [60807] trunk/blender/source/blender/ editors/interface/interface_handlers.c: patch [#37114] copypaste for NORMAL buttons (BUT_NORMAL)

Campbell Barton ideasman42 at gmail.com
Thu Oct 17 01:42:45 CEST 2013


Revision: 60807
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=60807
Author:   campbellbarton
Date:     2013-10-16 23:42:44 +0000 (Wed, 16 Oct 2013)
Log Message:
-----------
patch [#37114] copypaste for NORMAL buttons (BUT_NORMAL)
from Philipp Oeser (lichtwerk)

Modified Paths:
--------------
    trunk/blender/source/blender/editors/interface/interface_handlers.c

Modified: trunk/blender/source/blender/editors/interface/interface_handlers.c
===================================================================
--- trunk/blender/source/blender/editors/interface/interface_handlers.c	2013-10-16 22:07:16 UTC (rev 60806)
+++ trunk/blender/source/blender/editors/interface/interface_handlers.c	2013-10-16 23:42:44 UTC (rev 60807)
@@ -1376,6 +1376,32 @@
 		}
 	}
 
+	/* NORMAL button */
+	else if (but->type == BUT_NORMAL) {
+		float xyz[3];
+
+		if (but->poin == NULL && but->rnapoin.data == NULL) {
+			/* pass */
+		}
+		else if (mode == 'c') {
+			ui_get_but_vectorf(but, xyz);
+			BLI_snprintf(buf, sizeof(buf), "[%f, %f, %f]", xyz[0], xyz[1], xyz[2]);
+			WM_clipboard_text_set(buf, 0);
+		}
+		else {
+			if (sscanf(buf, "[%f, %f, %f]", &xyz[0], &xyz[1], &xyz[2]) == 3) {
+				if (normalize_v3(xyz) == 0.0f) {
+					/* better set Z up then have a zero vector */
+					xyz[2] = 1.0;
+				}
+				button_activate_state(C, but, BUTTON_STATE_NUM_EDITING);
+				ui_set_but_vectorf(but, xyz);
+				button_activate_state(C, but, BUTTON_STATE_EXIT);
+			}
+		}
+	}
+
+
 	/* RGB triple */
 	else if (but->type == COLOR) {
 		float rgba[4];




More information about the Bf-blender-cvs mailing list