[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [53867] trunk/blender: fix for arrow keys being reversed in the snap menu (Ctrl+Shift+Tab)

Campbell Barton ideasman42 at gmail.com
Thu Jan 17 02:04:00 CET 2013


Revision: 53867
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=53867
Author:   campbellbarton
Date:     2013-01-17 01:03:56 +0000 (Thu, 17 Jan 2013)
Log Message:
-----------
fix for arrow keys being reversed in the snap menu (Ctrl+Shift+Tab)
also - when expanding rna enums into existing menus - don't nest inside a row/column.

Modified Paths:
--------------
    trunk/blender/release/scripts/startup/bl_operators/wm.py
    trunk/blender/source/blender/editors/interface/interface_handlers.c
    trunk/blender/source/blender/editors/interface/interface_layout.c

Modified: trunk/blender/release/scripts/startup/bl_operators/wm.py
===================================================================
--- trunk/blender/release/scripts/startup/bl_operators/wm.py	2013-01-17 00:56:04 UTC (rev 53866)
+++ trunk/blender/release/scripts/startup/bl_operators/wm.py	2013-01-17 01:03:56 UTC (rev 53867)
@@ -509,8 +509,7 @@
 
         layout = self.layout
         layout.label(prop.name, icon=prop.icon)
-        col = self.layout.column()
-        col.prop(value_base, prop_string, expand=True)
+        layout.prop(value_base, prop_string, expand=True)
 
 
 class WM_OT_context_menu_enum(Operator):

Modified: trunk/blender/source/blender/editors/interface/interface_handlers.c
===================================================================
--- trunk/blender/source/blender/editors/interface/interface_handlers.c	2013-01-17 00:56:04 UTC (rev 53866)
+++ trunk/blender/source/blender/editors/interface/interface_handlers.c	2013-01-17 01:03:56 UTC (rev 53867)
@@ -6559,6 +6559,7 @@
 							ui_pan_to_scroll(event, &type, &val);
 						
 						if (val == KM_PRESS) {
+							const eButType type_flip = BUT | ROW;
 
 							PASS_EVENT_TO_PARENT_IF_NONACTIVE;
 
@@ -6571,13 +6572,13 @@
 								{
 									/* the following is just a hack - uiBut->type set to BUT and BUTM have there menus built 
 									 * opposite ways - this should be changed so that all popup-menus use the same uiBlock->direction */
-									if (but->type & BUT)
+									if (but->type & type_flip)
 										but = ui_but_next(but);
 									else
 										but = ui_but_prev(but);
 								}
 								else {
-									if (but->type & BUT)
+									if (but->type & type_flip)
 										but = ui_but_prev(but);
 									else
 										but = ui_but_next(but);
@@ -6594,7 +6595,7 @@
 								    ((ELEM(type, UPARROWKEY, WHEELUPMOUSE)) && (block->direction & UI_RIGHT)) ||
 								    ((ELEM(type, DOWNARROWKEY, WHEELDOWNMOUSE)) && (block->direction & UI_TOP)))
 								{
-									if ((bt = ui_but_first(block)) && (bt->type & BUT)) {
+									if ((bt = ui_but_first(block)) && (bt->type & type_flip)) {
 										bt = ui_but_last(block);
 									}
 									else {
@@ -6602,7 +6603,7 @@
 									}
 								}
 								else {
-									if ((bt = ui_but_first(block)) && (bt->type & BUT)) {
+									if ((bt = ui_but_first(block)) && (bt->type & type_flip)) {
 										/* keep ui_but_first() */
 									}
 									else {

Modified: trunk/blender/source/blender/editors/interface/interface_layout.c
===================================================================
--- trunk/blender/source/blender/editors/interface/interface_layout.c	2013-01-17 00:56:04 UTC (rev 53866)
+++ trunk/blender/source/blender/editors/interface/interface_layout.c	2013-01-17 01:03:56 UTC (rev 53867)
@@ -491,7 +491,14 @@
 
 	RNA_property_enum_items_gettexted(block->evil_C, ptr, prop, &item, &totitem, &free);
 
-	uiBlockSetCurLayout(block, ui_item_local_sublayout(layout, layout, 1));
+	/* we dont want nested rows, cols in menus */
+	if (layout->root->type != UI_LAYOUT_MENU) {
+		uiBlockSetCurLayout(block, ui_item_local_sublayout(layout, layout, 1));
+	}
+	else {
+		uiBlockSetCurLayout(block, layout);
+	}
+
 	for (a = 0; a < totitem; a++) {
 		if (!item[a].identifier[0])
 			continue;




More information about the Bf-blender-cvs mailing list