[Bf-blender-cvs] [bc032b9] pie-menus: Cancel the pie menu when releasing without a valid item selected.
Antony Riakiotakis
noreply at git.blender.org
Sun Jun 1 21:20:33 CEST 2014
Commit: bc032b98801c9962932748d01b5ae73bf5062773
Author: Antony Riakiotakis
Date: Sat May 31 01:34:53 2014 +0300
https://developer.blender.org/rBbc032b98801c9962932748d01b5ae73bf5062773
Cancel the pie menu when releasing without a valid item selected.
===================================================================
M source/blender/editors/interface/interface_handlers.c
===================================================================
diff --git a/source/blender/editors/interface/interface_handlers.c b/source/blender/editors/interface/interface_handlers.c
index 83168f1..f018c97 100644
--- a/source/blender/editors/interface/interface_handlers.c
+++ b/source/blender/editors/interface/interface_handlers.c
@@ -7858,14 +7858,20 @@ static int ui_handle_menu_event(
if (event->customdata == menu->scrolltimer)
ui_menu_scroll(ar, block, my, NULL);
}
- else if ((block->flag & UI_BLOCK_RADIAL) && but && (event->type == block->event) && event->val == KM_RELEASE) {
- wmEvent local_event = *event;
- local_event.type = RETKEY;
- local_event.val = KM_PRESS;
- ui_handle_menu_button(C, &local_event, menu);
- local_event.type = RETKEY;
- local_event.val = KM_RELEASE;
- return ui_handle_menu_button(C, &local_event, menu);
+ else if ((block->flag & UI_BLOCK_RADIAL) && (event->type == block->event) && event->val == KM_RELEASE) {
+ if (but) {
+ wmEvent local_event = *event;
+ local_event.type = RETKEY;
+ local_event.val = KM_PRESS;
+ ui_handle_menu_button(C, &local_event, menu);
+ local_event.type = RETKEY;
+ local_event.val = KM_RELEASE;
+ return ui_handle_menu_button(C, &local_event, menu);
+ }
+ else {
+ menu->menuretval = UI_RETURN_CANCEL;
+ return WM_UI_HANDLER_BREAK;
+ }
}
else {
/* for ui_mouse_motion_towards_block */
More information about the Bf-blender-cvs
mailing list