[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [52529] trunk/blender/source/blender/ editors/mesh/editmesh_tools.c: use a search popup for 'blend from shape' tool, suggested by Juan Pablo.

Campbell Barton ideasman42 at gmail.com
Sat Nov 24 06:38:21 CET 2012


Revision: 52529
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=52529
Author:   campbellbarton
Date:     2012-11-24 05:38:20 +0000 (Sat, 24 Nov 2012)
Log Message:
-----------
use a search popup for 'blend from shape' tool, suggested by Juan Pablo.
use standard operator panel, since the popup was too easy to cancel by accident, especially with a popup search menu.

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

Modified: trunk/blender/source/blender/editors/mesh/editmesh_tools.c
===================================================================
--- trunk/blender/source/blender/editors/mesh/editmesh_tools.c	2012-11-24 05:36:48 UTC (rev 52528)
+++ trunk/blender/source/blender/editors/mesh/editmesh_tools.c	2012-11-24 05:38:20 UTC (rev 52529)
@@ -72,6 +72,7 @@
 #include "RE_render_ext.h"
 
 #include "UI_interface.h"
+#include "UI_resources.h"
 
 #include "mesh_intern.h"
 
@@ -2508,6 +2509,22 @@
 	return item;
 }
 
+static void edbm_blend_from_shape_ui(bContext *C, wmOperator *op)
+{
+	uiLayout *layout = op->layout;
+	PointerRNA ptr;
+	Object *obedit = CTX_data_edit_object(C);
+	Mesh *me = obedit->data;
+	PointerRNA ptr_key;
+
+	RNA_pointer_create(NULL, op->type->srna, op->properties, &ptr);
+	RNA_id_pointer_create((ID *)me->key, &ptr_key);
+
+	uiItemPointerR(layout, &ptr, "shape", &ptr_key, "key_blocks", "", ICON_SHAPEKEY_DATA);
+	uiItemR(layout, &ptr, "blend", 0, NULL, ICON_NONE);
+	uiItemR(layout, &ptr, "add", 0, NULL, ICON_NONE);
+}
+
 void MESH_OT_blend_from_shape(wmOperatorType *ot)
 {
 	PropertyRNA *prop;
@@ -2520,7 +2537,8 @@
 
 	/* api callbacks */
 	ot->exec = edbm_blend_from_shape_exec;
-	ot->invoke = WM_operator_props_popup_call;
+//	ot->invoke = WM_operator_props_popup_call;  /* disable because search popup closes too easily */
+	ot->ui = edbm_blend_from_shape_ui;
 	ot->poll = ED_operator_editmesh;
 
 	/* flags */




More information about the Bf-blender-cvs mailing list