diff options
-rw-r--r-- | source/blender/editors/space_view3d/view3d_select.c | 20 | ||||
-rw-r--r-- | source/blender/editors/transform/transform.c | 18 | ||||
-rw-r--r-- | source/blender/windowmanager/intern/wm_cursors.c | 24 | ||||
-rw-r--r-- | source/blender/windowmanager/intern/wm_event_system.c | 7 | ||||
-rw-r--r-- | source/blender/windowmanager/wm_cursors.h | 6 |
5 files changed, 37 insertions, 38 deletions
diff --git a/source/blender/editors/space_view3d/view3d_select.c b/source/blender/editors/space_view3d/view3d_select.c index 72061bdbdac..9d882f09d02 100644 --- a/source/blender/editors/space_view3d/view3d_select.c +++ b/source/blender/editors/space_view3d/view3d_select.c @@ -198,26 +198,6 @@ static void EM_backbuf_checkAndSelectTFaces(Mesh *me, int select) } } -#if 0 -void arrows_move_cursor(unsigned short event) -{ - short mval[2]; - - getmouseco_sc(mval); - - if(event==UPARROWKEY) { - warp_pointer(mval[0], mval[1]+1); - } else if(event==DOWNARROWKEY) { - warp_pointer(mval[0], mval[1]-1); - } else if(event==LEFTARROWKEY) { - warp_pointer(mval[0]-1, mval[1]); - } else if(event==RIGHTARROWKEY) { - warp_pointer(mval[0]+1, mval[1]); - } -} -#endif - - /* *********************** GESTURE AND LASSO ******************* */ static int view3d_selectable_data(bContext *C) diff --git a/source/blender/editors/transform/transform.c b/source/blender/editors/transform/transform.c index 64901e9ded3..e342ce6769a 100644 --- a/source/blender/editors/transform/transform.c +++ b/source/blender/editors/transform/transform.c @@ -54,22 +54,10 @@ #include "RNA_access.h" -//#include "BIF_editview.h" /* arrows_move_cursor */ #include "BIF_gl.h" #include "BIF_glutil.h" -//#include "BIF_mywindow.h" -//#include "BIF_resources.h" -//#include "BIF_screen.h" -//#include "BIF_space.h" /* undo */ -//#include "BIF_toets.h" /* persptoetsen */ -//#include "BIF_mywindow.h" /* warp_pointer */ -//#include "BIF_toolbox.h" /* notice */ -//#include "BIF_editmesh.h" -//#include "BIF_editsima.h" -//#include "BIF_editparticle.h" #include "BKE_nla.h" -//#include "BKE_bad_level_calls.h"/* popmenu and error */ #include "BKE_bmesh.h" #include "BKE_context.h" #include "BKE_constraint.h" @@ -78,8 +66,6 @@ #include "BKE_pointcache.h" #include "BKE_unit.h" -//#include "BSE_view.h" - #include "ED_image.h" #include "ED_keyframing.h" #include "ED_screen.h" @@ -551,9 +537,6 @@ wmKeyMap* transform_modal_keymap(wmKeyConfig *keyconf) WM_modalkeymap_add_item(keymap, AKEY, KM_PRESS, 0, 0, TFM_MODAL_ADD_SNAP); WM_modalkeymap_add_item(keymap, AKEY, KM_PRESS, KM_ALT, 0, TFM_MODAL_REMOVE_SNAP); - WM_modalkeymap_add_item(keymap, UPARROWKEY, KM_PRESS, 0, 0, NUM_MODAL_INCREMENT_UP); - WM_modalkeymap_add_item(keymap, DOWNARROWKEY, KM_PRESS, 0, 0, NUM_MODAL_INCREMENT_DOWN); - WM_modalkeymap_add_item(keymap, PAGEUPKEY, KM_PRESS, 0, 0, TFM_MODAL_PROPSIZE_UP); WM_modalkeymap_add_item(keymap, PAGEDOWNKEY, KM_PRESS, 0, 0, TFM_MODAL_PROPSIZE_DOWN); WM_modalkeymap_add_item(keymap, WHEELDOWNMOUSE, KM_PRESS, 0, 0, TFM_MODAL_PROPSIZE_UP); @@ -1070,7 +1053,6 @@ int transformEvent(TransInfo *t, wmEvent *event) // Snapping events t->redraw |= handleSnapping(t, event); - //arrows_move_cursor(event->type); } else if (event->val==KM_RELEASE) { switch (event->type){ diff --git a/source/blender/windowmanager/intern/wm_cursors.c b/source/blender/windowmanager/intern/wm_cursors.c index 5951393a497..32a4648c7f8 100644 --- a/source/blender/windowmanager/intern/wm_cursors.c +++ b/source/blender/windowmanager/intern/wm_cursors.c @@ -47,6 +47,7 @@ #include "BKE_main.h" #include "WM_api.h" +#include "WM_types.h" #include "wm_cursors.h" /* XXX this still is mess from old code */ @@ -211,6 +212,29 @@ void WM_cursor_ungrab(wmWindow *win) } } +/* give it a modal keymap one day? */ +int wm_cursor_arrow_move(wmWindow *win, wmEvent *event) +{ + if(win && event->val==KM_PRESS) { + + if(event->type==UPARROWKEY) { + WM_cursor_warp(win, event->x, event->y+1); + return 1; + } else if(event->type==DOWNARROWKEY) { + WM_cursor_warp(win, event->x, event->y-1); + return 1; + } else if(event->type==LEFTARROWKEY) { + WM_cursor_warp(win, event->x-1, event->y); + return 1; + } else if(event->type==RIGHTARROWKEY) { + WM_cursor_warp(win, event->x+1, event->y); + return 1; + } + } + return 0; +} + + /* afer this you can call restore too */ void WM_timecursor(wmWindow *win, int nr) { diff --git a/source/blender/windowmanager/intern/wm_event_system.c b/source/blender/windowmanager/intern/wm_event_system.c index 4268f192821..e013bc8fee4 100644 --- a/source/blender/windowmanager/intern/wm_event_system.c +++ b/source/blender/windowmanager/intern/wm_event_system.c @@ -1557,6 +1557,9 @@ static int wm_handlers_do(bContext *C, wmEvent *event, ListBase *handlers) } } } + + if(action == (WM_HANDLER_BREAK|WM_HANDLER_MODAL)) + wm_cursor_arrow_move(CTX_wm_window(C), event); return action; } @@ -1939,11 +1942,13 @@ void WM_event_add_fileselect(bContext *C, wmOperator *op) WM_event_fileselect_event(C, op, full?EVT_FILESELECT_FULL_OPEN:EVT_FILESELECT_OPEN); } +#if 0 /* lets not expose struct outside wm? */ static void WM_event_set_handler_flag(wmEventHandler *handler, int flag) { handler->flag= flag; } +#endif wmEventHandler *WM_event_add_modal_handler(bContext *C, wmOperator *op) { @@ -2089,11 +2094,13 @@ void WM_event_remove_area_handler(ListBase *handlers, void *area) } } +#if 0 static void WM_event_remove_handler(ListBase *handlers, wmEventHandler *handler) { BLI_remlink(handlers, handler); wm_event_free_handler(handler); } +#endif void WM_event_add_mousemove(bContext *C) { diff --git a/source/blender/windowmanager/wm_cursors.h b/source/blender/windowmanager/wm_cursors.h index c858b9d94f3..5f262f34724 100644 --- a/source/blender/windowmanager/wm_cursors.h +++ b/source/blender/windowmanager/wm_cursors.h @@ -116,5 +116,11 @@ enum { #define SMALL_CURSOR 0 #define BIG_CURSOR 1 +struct wmWindow; +struct wmEvent; + +int wm_cursor_arrow_move(struct wmWindow *win, struct wmEvent *event); + + #endif /* WM_CURSORS_H */ |