[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [23331] trunk/blender/source/blender: 2.5: Handlers are now evaluated in a different order, fixing some
Brecht Van Lommel
brecht at blender.org
Fri Sep 18 14:43:37 CEST 2009
Revision: 23331
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=23331
Author: blendix
Date: 2009-09-18 14:43:36 +0200 (Fri, 18 Sep 2009)
Log Message:
-----------
2.5: Handlers are now evaluated in a different order, fixing some
issues like Shift+R (repeat last) not giving capital R in the text
editor. There is also new modal handler list at the window level,
and the API call will always add it to that one now, since modal
handlers were not used in other levels.
The order used to be:
* window modal + keymap
* area modal + keymap
* region modal + keymap
Now it is:
* window modal
* region keymap
* area keymap
* window keymap
Modified Paths:
--------------
trunk/blender/source/blender/blenloader/intern/readfile.c
trunk/blender/source/blender/editors/animation/anim_markers.c
trunk/blender/source/blender/editors/animation/anim_ops.c
trunk/blender/source/blender/editors/armature/editarmature_sketch.c
trunk/blender/source/blender/editors/armature/poselib.c
trunk/blender/source/blender/editors/gpencil/gpencil_paint.c
trunk/blender/source/blender/editors/interface/interface_handlers.c
trunk/blender/source/blender/editors/interface/interface_panel.c
trunk/blender/source/blender/editors/interface/interface_regions.c
trunk/blender/source/blender/editors/interface/view2d_ops.c
trunk/blender/source/blender/editors/mesh/loopcut.c
trunk/blender/source/blender/editors/physics/editparticle.c
trunk/blender/source/blender/editors/screen/screen_ops.c
trunk/blender/source/blender/editors/sculpt_paint/paint_image.c
trunk/blender/source/blender/editors/sculpt_paint/paint_vertex.c
trunk/blender/source/blender/editors/sculpt_paint/sculpt.c
trunk/blender/source/blender/editors/space_image/image_ops.c
trunk/blender/source/blender/editors/space_node/node_edit.c
trunk/blender/source/blender/editors/space_text/text_ops.c
trunk/blender/source/blender/editors/space_view3d/view3d_edit.c
trunk/blender/source/blender/editors/transform/transform_ops.c
trunk/blender/source/blender/editors/uvedit/uvedit_unwrap_ops.c
trunk/blender/source/blender/makesdna/DNA_windowmanager_types.h
trunk/blender/source/blender/windowmanager/WM_api.h
trunk/blender/source/blender/windowmanager/intern/wm_event_system.c
trunk/blender/source/blender/windowmanager/intern/wm_init_exit.c
trunk/blender/source/blender/windowmanager/intern/wm_operators.c
trunk/blender/source/blender/windowmanager/intern/wm_window.c
Modified: trunk/blender/source/blender/blenloader/intern/readfile.c
===================================================================
--- trunk/blender/source/blender/blenloader/intern/readfile.c 2009-09-18 11:25:52 UTC (rev 23330)
+++ trunk/blender/source/blender/blenloader/intern/readfile.c 2009-09-18 12:43:36 UTC (rev 23331)
@@ -4371,6 +4371,7 @@
win->timers.first= win->timers.last= NULL;
win->queue.first= win->queue.last= NULL;
win->handlers.first= win->handlers.last= NULL;
+ win->modalhandlers.first= win->modalhandlers.last= NULL;
win->subwindows.first= win->subwindows.last= NULL;
win->gesture.first= win->gesture.last= NULL;
Modified: trunk/blender/source/blender/editors/animation/anim_markers.c
===================================================================
--- trunk/blender/source/blender/editors/animation/anim_markers.c 2009-09-18 11:25:52 UTC (rev 23330)
+++ trunk/blender/source/blender/editors/animation/anim_markers.c 2009-09-18 12:43:36 UTC (rev 23331)
@@ -458,7 +458,7 @@
mm->event_type= evt->type;
/* add temp handler */
- WM_event_add_modal_handler(C, &CTX_wm_window(C)->handlers, op);
+ WM_event_add_modal_handler(C, op);
/* reset frs delta */
RNA_int_set(op->ptr, "frames", 0);
Modified: trunk/blender/source/blender/editors/animation/anim_ops.c
===================================================================
--- trunk/blender/source/blender/editors/animation/anim_ops.c 2009-09-18 11:25:52 UTC (rev 23330)
+++ trunk/blender/source/blender/editors/animation/anim_ops.c 2009-09-18 12:43:36 UTC (rev 23331)
@@ -162,7 +162,7 @@
change_frame_apply(C, op);
/* add temp handler */
- WM_event_add_modal_handler(C, &CTX_wm_window(C)->handlers, op);
+ WM_event_add_modal_handler(C, op);
return OPERATOR_RUNNING_MODAL;
}
Modified: trunk/blender/source/blender/editors/armature/editarmature_sketch.c
===================================================================
--- trunk/blender/source/blender/editors/armature/editarmature_sketch.c 2009-09-18 11:25:52 UTC (rev 23330)
+++ trunk/blender/source/blender/editors/armature/editarmature_sketch.c 2009-09-18 12:43:36 UTC (rev 23331)
@@ -2618,7 +2618,7 @@
sk_draw_stroke(C, sketch, sketch->active_stroke, dd, snap);
- WM_event_add_modal_handler(C, &CTX_wm_window(C)->handlers, op);
+ WM_event_add_modal_handler(C, op);
return OPERATOR_RUNNING_MODAL;
}
@@ -2644,7 +2644,7 @@
sk_start_draw_gesture(sketch);
sk_draw_stroke(C, sketch, sketch->gesture, dd, snap);
- WM_event_add_modal_handler(C, &CTX_wm_window(C)->handlers, op);
+ WM_event_add_modal_handler(C, op);
return OPERATOR_RUNNING_MODAL;
}
Modified: trunk/blender/source/blender/editors/armature/poselib.c
===================================================================
--- trunk/blender/source/blender/editors/armature/poselib.c 2009-09-18 11:25:52 UTC (rev 23330)
+++ trunk/blender/source/blender/editors/armature/poselib.c 2009-09-18 12:43:36 UTC (rev 23331)
@@ -1411,7 +1411,7 @@
poselib_preview_apply(C, op);
/* add temp handler if we're running as a modal operator */
- WM_event_add_modal_handler(C, &CTX_wm_window(C)->handlers, op);
+ WM_event_add_modal_handler(C, op);
return OPERATOR_RUNNING_MODAL;
}
Modified: trunk/blender/source/blender/editors/gpencil/gpencil_paint.c
===================================================================
--- trunk/blender/source/blender/editors/gpencil/gpencil_paint.c 2009-09-18 11:25:52 UTC (rev 23330)
+++ trunk/blender/source/blender/editors/gpencil/gpencil_paint.c 2009-09-18 12:43:36 UTC (rev 23331)
@@ -1341,7 +1341,7 @@
}
/* add a modal handler for this operator, so that we can then draw continuous strokes */
- WM_event_add_modal_handler(C, &CTX_wm_window(C)->handlers, op);
+ WM_event_add_modal_handler(C, op);
return OPERATOR_RUNNING_MODAL;
}
Modified: trunk/blender/source/blender/editors/interface/interface_handlers.c
===================================================================
--- trunk/blender/source/blender/editors/interface/interface_handlers.c 2009-09-18 11:25:52 UTC (rev 23330)
+++ trunk/blender/source/blender/editors/interface/interface_handlers.c 2009-09-18 12:43:36 UTC (rev 23331)
@@ -3660,11 +3660,11 @@
if(!(but->block->handle && but->block->handle->popup)) {
if(button_modal_state(state)) {
if(!button_modal_state(data->state))
- WM_event_add_ui_handler(C, &data->window->handlers, ui_handler_region_menu, NULL, data);
+ WM_event_add_ui_handler(C, &data->window->modalhandlers, ui_handler_region_menu, NULL, data);
}
else {
if(button_modal_state(data->state))
- WM_event_remove_ui_handler(&data->window->handlers, ui_handler_region_menu, NULL, data);
+ WM_event_remove_ui_handler(&data->window->modalhandlers, ui_handler_region_menu, NULL, data);
}
}
@@ -4600,7 +4600,7 @@
uiPopupBlockHandle temp= *menu;
ui_popup_block_free(C, menu);
- WM_event_remove_ui_handler(&CTX_wm_window(C)->handlers, ui_handler_popup, ui_handler_remove_popup, menu);
+ WM_event_remove_ui_handler(&CTX_wm_window(C)->modalhandlers, ui_handler_popup, ui_handler_remove_popup, menu);
if(temp.menuretval == UI_RETURN_OK) {
if(temp.popup_func)
Modified: trunk/blender/source/blender/editors/interface/interface_panel.c
===================================================================
--- trunk/blender/source/blender/editors/interface/interface_panel.c 2009-09-18 11:25:52 UTC (rev 23330)
+++ trunk/blender/source/blender/editors/interface/interface_panel.c 2009-09-18 12:43:36 UTC (rev 23331)
@@ -1400,14 +1400,14 @@
MEM_freeN(data);
pa->activedata= NULL;
- WM_event_remove_ui_handler(&win->handlers, ui_handler_panel, ui_handler_remove_panel, pa);
+ WM_event_remove_ui_handler(&win->modalhandlers, ui_handler_panel, ui_handler_remove_panel, pa);
}
else {
if(!data) {
data= MEM_callocN(sizeof(uiHandlePanelData), "uiHandlePanelData");
pa->activedata= data;
- WM_event_add_ui_handler(C, &win->handlers, ui_handler_panel, ui_handler_remove_panel, pa);
+ WM_event_add_ui_handler(C, &win->modalhandlers, ui_handler_panel, ui_handler_remove_panel, pa);
}
if(ELEM(state, PANEL_STATE_ANIMATION, PANEL_STATE_DRAG))
Modified: trunk/blender/source/blender/editors/interface/interface_regions.c
===================================================================
--- trunk/blender/source/blender/editors/interface/interface_regions.c 2009-09-18 11:25:52 UTC (rev 23330)
+++ trunk/blender/source/blender/editors/interface/interface_regions.c 2009-09-18 12:43:36 UTC (rev 23331)
@@ -2275,7 +2275,7 @@
if(!but) {
handle->popup= 1;
- UI_add_popup_handlers(C, &window->handlers, handle);
+ UI_add_popup_handlers(C, &window->modalhandlers, handle);
WM_event_add_mousemove(C);
}
@@ -2332,7 +2332,7 @@
menu= ui_popup_block_create(C, NULL, NULL, NULL, ui_block_func_POPUP, pup);
menu->popup= 1;
- UI_add_popup_handlers(C, &window->handlers, menu);
+ UI_add_popup_handlers(C, &window->modalhandlers, menu);
WM_event_add_mousemove(C);
MEM_freeN(pup);
@@ -2493,7 +2493,7 @@
handle->optype= (opname)? WM_operatortype_find(opname, 0): NULL;
handle->opcontext= opcontext;
- UI_add_popup_handlers(C, &window->handlers, handle);
+ UI_add_popup_handlers(C, &window->modalhandlers, handle);
WM_event_add_mousemove(C);
}
@@ -2516,7 +2516,7 @@
handle->cancel_func= confirm_cancel_operator;
handle->opcontext= opcontext;
- UI_add_popup_handlers(C, &window->handlers, handle);
+ UI_add_popup_handlers(C, &window->modalhandlers, handle);
WM_event_add_mousemove(C);
}
Modified: trunk/blender/source/blender/editors/interface/view2d_ops.c
===================================================================
--- trunk/blender/source/blender/editors/interface/view2d_ops.c 2009-09-18 11:25:52 UTC (rev 23330)
+++ trunk/blender/source/blender/editors/interface/view2d_ops.c 2009-09-18 12:43:36 UTC (rev 23331)
@@ -210,7 +210,7 @@
WM_cursor_modal(window, BC_NSEW_SCROLLCURSOR);
/* add temp handler */
- WM_event_add_modal_handler(C, &window->handlers, op);
+ WM_event_add_modal_handler(C, op);
return OPERATOR_RUNNING_MODAL;
}
@@ -764,7 +764,7 @@
WM_cursor_modal(window, BC_NSEW_SCROLLCURSOR);
/* add temp handler */
- WM_event_add_modal_handler(C, &window->handlers, op);
+ WM_event_add_modal_handler(C, op);
return OPERATOR_RUNNING_MODAL;
}
@@ -1292,7 +1292,7 @@
v2d->scroll_ui |= V2D_SCROLL_V_ACTIVE;
/* still ok, so can add */
- WM_event_add_modal_handler(C, &CTX_wm_window(C)->handlers, op);
+ WM_event_add_modal_handler(C, op);
return OPERATOR_RUNNING_MODAL;
}
else {
Modified: trunk/blender/source/blender/editors/mesh/loopcut.c
===================================================================
--- trunk/blender/source/blender/editors/mesh/loopcut.c 2009-09-18 11:25:52 UTC (rev 23330)
+++ trunk/blender/source/blender/editors/mesh/loopcut.c 2009-09-18 12:43:36 UTC (rev 23331)
@@ -328,7 +328,7 @@
return OPERATOR_CANCELLED;
/* add a modal handler for this operator - handles loop selection */
- WM_event_add_modal_handler(C, &CTX_wm_window(C)->handlers, op);
+ WM_event_add_modal_handler(C, op);
lcd = op->customdata;
lcd->vc.mval[0] = evt->mval[0];
@@ -356,7 +356,7 @@
return OPERATOR_CANCELLED;
/* add a modal handler for this operator - handles loop selection */
- WM_event_add_modal_handler(C, &CTX_wm_window(C)->handlers, op);
+ WM_event_add_modal_handler(C, op);
lcd = op->customdata;
lcd->vc.mval[0] = evt->mval[0];
Modified: trunk/blender/source/blender/editors/physics/editparticle.c
===================================================================
--- trunk/blender/source/blender/editors/physics/editparticle.c 2009-09-18 11:25:52 UTC (rev 23330)
+++ trunk/blender/source/blender/editors/physics/editparticle.c 2009-09-18 12:43:36 UTC (rev 23331)
@@ -3352,7 +3352,7 @@
brush_edit_apply_event(C, op, event);
- WM_event_add_modal_handler(C, &CTX_wm_window(C)->handlers, op);
+ WM_event_add_modal_handler(C, op);
return OPERATOR_RUNNING_MODAL;
}
Modified: trunk/blender/source/blender/editors/screen/screen_ops.c
===================================================================
--- trunk/blender/source/blender/editors/screen/screen_ops.c 2009-09-18 11:25:52 UTC (rev 23330)
+++ trunk/blender/source/blender/editors/screen/screen_ops.c 2009-09-18 12:43:36 UTC (rev 23331)
@@ -456,7 +456,7 @@
}
else {
/* add modal handler */
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list