[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [36818] trunk/blender/source/blender/ editors: - view dolly now quits on pressing escape ( if activated from the search menu).

Campbell Barton ideasman42 at gmail.com
Sun May 22 13:36:57 CEST 2011


Revision: 36818
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=36818
Author:   campbellbarton
Date:     2011-05-22 11:36:56 +0000 (Sun, 22 May 2011)
Log Message:
-----------
- view dolly now quits on pressing escape (if activated from the search menu).
- adding new bones now makes them active.

Modified Paths:
--------------
    trunk/blender/source/blender/editors/armature/editarmature.c
    trunk/blender/source/blender/editors/space_view3d/view3d_edit.c
    trunk/blender/source/blender/editors/space_view3d/view3d_intern.h
    trunk/blender/source/blender/editors/space_view3d/view3d_ops.c

Modified: trunk/blender/source/blender/editors/armature/editarmature.c
===================================================================
--- trunk/blender/source/blender/editors/armature/editarmature.c	2011-05-22 11:29:55 UTC (rev 36817)
+++ trunk/blender/source/blender/editors/armature/editarmature.c	2011-05-22 11:36:56 UTC (rev 36818)
@@ -2356,6 +2356,7 @@
 void add_primitive_bone(Scene *scene, View3D *v3d, RegionView3D *rv3d)
 {
 	Object *obedit= scene->obedit; // XXX get from context
+	bArmature *arm= obedit->data;
 	float		obmat[3][3], curs[3], viewmat[3][3], totmat[3][3], imat[3][3];
 	EditBone	*bone;
 
@@ -2374,8 +2375,10 @@
 	ED_armature_deselect_all(obedit, 0);
 	
 	/*	Create a bone	*/
-	bone= ED_armature_edit_bone_add(obedit->data, "Bone");
+	bone= ED_armature_edit_bone_add(arm, "Bone");
 
+	arm->act_edbone= bone;
+
 	copy_v3_v3(bone->head, curs);
 	
 	if (rv3d && (U.flag & USER_ADD_VIEWALIGNED))

Modified: trunk/blender/source/blender/editors/space_view3d/view3d_edit.c
===================================================================
--- trunk/blender/source/blender/editors/space_view3d/view3d_edit.c	2011-05-22 11:29:55 UTC (rev 36817)
+++ trunk/blender/source/blender/editors/space_view3d/view3d_edit.c	2011-05-22 11:36:56 UTC (rev 36818)
@@ -1039,6 +1039,7 @@
 
 /* ************************ viewzoom ******************************** */
 
+/* viewdolly_modal_keymap has an exact copy of this, apply fixes to both */
 /* called in transform_ops.c, on each regeneration of keymaps  */
 void viewzoom_modal_keymap(wmKeyConfig *keyconf)
 {
@@ -1297,6 +1298,39 @@
 	return OPERATOR_FINISHED;
 }
 
+/* this is an exact copy of viewzoom_modal_keymap */
+/* called in transform_ops.c, on each regeneration of keymaps  */
+void viewdolly_modal_keymap(wmKeyConfig *keyconf)
+{
+	static EnumPropertyItem modal_items[] = {
+	{VIEW_MODAL_CONFIRM,	"CONFIRM", 0, "Confirm", ""},
+
+	{VIEWROT_MODAL_SWITCH_ROTATE, "SWITCH_TO_ROTATE", 0, "Switch to Rotate"},
+	{VIEWROT_MODAL_SWITCH_MOVE, "SWITCH_TO_MOVE", 0, "Switch to Move"},
+
+	{0, NULL, 0, NULL, NULL}};
+
+	wmKeyMap *keymap= WM_modalkeymap_get(keyconf, "View3D Dolly Modal");
+
+	/* this function is called for each spacetype, only needs to add map once */
+	if(keymap) return;
+
+	keymap= WM_modalkeymap_add(keyconf, "View3D Dolly Modal", modal_items);
+
+	/* items for modal map */
+	WM_modalkeymap_add_item(keymap, MIDDLEMOUSE, KM_RELEASE, KM_ANY, 0, VIEW_MODAL_CONFIRM);
+	WM_modalkeymap_add_item(keymap, ESCKEY, KM_PRESS, KM_ANY, 0, VIEW_MODAL_CONFIRM);
+
+	/* disabled mode switching for now, can re-implement better, later on
+	WM_modalkeymap_add_item(keymap, LEFTMOUSE, KM_RELEASE, KM_ANY, 0, VIEWROT_MODAL_SWITCH_ROTATE);
+	WM_modalkeymap_add_item(keymap, LEFTCTRLKEY, KM_RELEASE, KM_ANY, 0, VIEWROT_MODAL_SWITCH_ROTATE);
+	WM_modalkeymap_add_item(keymap, LEFTSHIFTKEY, KM_PRESS, KM_ANY, 0, VIEWROT_MODAL_SWITCH_MOVE);
+	 */
+	
+	/* assign map to operators */
+	WM_modalkeymap_assign(keymap, "VIEW3D_OT_dolly");
+}
+
 /* viewdolly_invoke() copied this function, changes here may apply there */
 static int viewzoom_invoke(bContext *C, wmOperator *op, wmEvent *event)
 {

Modified: trunk/blender/source/blender/editors/space_view3d/view3d_intern.h
===================================================================
--- trunk/blender/source/blender/editors/space_view3d/view3d_intern.h	2011-05-22 11:29:55 UTC (rev 36817)
+++ trunk/blender/source/blender/editors/space_view3d/view3d_intern.h	2011-05-22 11:36:56 UTC (rev 36818)
@@ -165,6 +165,7 @@
 void viewrotate_modal_keymap(struct wmKeyConfig *keyconf);
 void viewmove_modal_keymap(struct wmKeyConfig *keyconf);
 void viewzoom_modal_keymap(struct wmKeyConfig *keyconf);
+void viewdolly_modal_keymap(struct wmKeyConfig *keyconf);
 
 /* view3d_buttons.c */
 void VIEW3D_OT_properties(struct wmOperatorType *ot);

Modified: trunk/blender/source/blender/editors/space_view3d/view3d_ops.c
===================================================================
--- trunk/blender/source/blender/editors/space_view3d/view3d_ops.c	2011-05-22 11:29:55 UTC (rev 36817)
+++ trunk/blender/source/blender/editors/space_view3d/view3d_ops.c	2011-05-22 11:36:56 UTC (rev 36818)
@@ -305,5 +305,6 @@
 	viewrotate_modal_keymap(keyconf);
 	viewmove_modal_keymap(keyconf);
 	viewzoom_modal_keymap(keyconf);
+	viewdolly_modal_keymap(keyconf);
 }
 




More information about the Bf-blender-cvs mailing list