From: Ton Roosendaal Date: Tue, 6 Jan 2009 10:09:39 +0000 (+0000) Subject: 2.5 X-Git-Tag: v2.50~1013^2~1013 X-Git-Url: https://git.blender.org/gitweb/gitweb.cgi/blender.git/commitdiff_plain/e01b5a02527df0da53963c5c398cff8c365d0879 2.5 Bugfix: WM gesture manager was not assigning gesture to the context-defined region, making border select calls from a header not work. This fixes Node header option "Border select". --- diff --git a/source/blender/editors/space_node/drawnode.c b/source/blender/editors/space_node/drawnode.c index 2dd0fec126b..dd9487c2113 100644 --- a/source/blender/editors/space_node/drawnode.c +++ b/source/blender/editors/space_node/drawnode.c @@ -185,6 +185,8 @@ static void node_but_title_cb(bContext *C, void *node_v, void *but_v) // allqueue(REDRAWNODE, 0); } +#if 0 +/* XXX not used yet, make compiler happy :) */ static void node_group_alone_cb(bContext *C, void *node_v, void *unused_v) { bNode *node= node_v; @@ -225,6 +227,7 @@ static int node_buts_group(uiBlock *block, bNodeTree *ntree, bNode *node, rctf * } return 19; } +#endif static int node_buts_value(uiBlock *block, bNodeTree *ntree, bNode *node, rctf *butr) { diff --git a/source/blender/editors/space_node/node_header.c b/source/blender/editors/space_node/node_header.c index 8858805c0ac..f7b718d0af3 100644 --- a/source/blender/editors/space_node/node_header.c +++ b/source/blender/editors/space_node/node_header.c @@ -75,8 +75,7 @@ static void do_node_selectmenu(bContext *C, void *arg, int event) switch(event) { case 1: /* border select */ - // NODE_FIX_ME border select draws in menu area only :S - // WM_operator_name_call(C, "NODE_OT_border_select", WM_OP_INVOKE_REGION_WIN, NULL, NULL); + WM_operator_name_call(C, "NODE_OT_border_select", WM_OP_INVOKE_REGION_WIN, NULL, NULL); break; case 2: /* select/deselect all */ // XXX node_deselectall(snode, 1); @@ -587,8 +586,8 @@ static uiBlock *node_nodemenu(bContext *C, uiMenuBlockHandle *handle, void *arg_ static void do_node_viewmenu(bContext *C, void *arg, int event) { - SpaceNode *snode= (SpaceNode*)CTX_wm_space_data(C); - ARegion *ar= CTX_wm_region(C); +// SpaceNode *snode= (SpaceNode*)CTX_wm_space_data(C); +// ARegion *ar= CTX_wm_region(C); ScrArea *sa= CTX_wm_area(C); switch(event) { diff --git a/source/blender/windowmanager/intern/wm_gesture.c b/source/blender/windowmanager/intern/wm_gesture.c index 17addfe1b4b..5847581d32a 100644 --- a/source/blender/windowmanager/intern/wm_gesture.c +++ b/source/blender/windowmanager/intern/wm_gesture.c @@ -58,14 +58,14 @@ wmGesture *WM_gesture_new(bContext *C, wmEvent *event, int type) { wmGesture *gesture= MEM_callocN(sizeof(wmGesture), "new gesture"); wmWindow *window= CTX_wm_window(C); - bScreen *screen= CTX_wm_screen(C); + ARegion *ar= CTX_wm_region(C); int sx, sy; BLI_addtail(&window->gesture, gesture); gesture->type= type; gesture->event_type= event->type; - gesture->swinid= screen->subwinactive; /* means only in area-region context! */ + gesture->swinid= ar->swinid; /* means only in area-region context! */ wm_subwindow_getorigin(window, gesture->swinid, &sx, &sy);