Blender Git Loki
Git Commits -> Revision fd8c94f
Revision fd8c94f by Ton Roosendaal (master) November 19, 2008, 13:16 (GMT) |
2.5: gesture code in WM - Simplified and cleaned previous border code It was a bit too complex, too many data manipulations Original idea was to have WM API calls to manage border, circle, lines, lasso, etc. This now means that WM provides callbacks for custom operators, so it's very easy to make them. Check bottom of screen_edit.c for an example. Currently two borders were coded; with and without cross hair. Press Bkey in any area-region to test it (note: time window has wrong matrix!) Some specs to note: - gestures are in region space, and draw 'over'. That latter still needs some work when we do real composites. - only the active region is redrawn. - on todo is the generic gesture engine for 'tweak' or like how currently grab gestures in Blender work. These will be configurable per area-region, and WM then will send the proper "Gesture Event" with properties (N, S, E, W, etc) to which you then can assign operators. Such events will be generated with low priority, so other handlers who swallowed mouse events have preference. |
Commit Details:
Full Hash: fd8c94fdb156ce83f5aa70eddcd85b0af6f1456a
SVN Revision: 17503
Parent Commit: ecde558
Lines Changed: +231, -281
1 Deleted Path:
/source/blender/windowmanager/wm_gesture_types.h (+0, -40)
13 Modified Paths:
/source/blender/editors/include/ED_screen.h (+0, -1) (Diff)
/source/blender/editors/screen/area.c (+5, -0) (Diff)
/source/blender/editors/screen/screen_edit.c (+43, -42) (Diff)
/source/blender/editors/screen/screen_intern.h (+2, -0) (Diff)
/source/blender/editors/screen/screen_ops.c (+7, -0) (Diff)
/source/blender/windowmanager/intern/wm.c (+0, -1) (Diff)
/source/blender/windowmanager/intern/wm_event_system.c (+1, -1) (Diff)
/source/blender/windowmanager/intern/wm_gesture.c (+75, -83) (Diff)
/source/blender/windowmanager/intern/wm_operators.c (+62, -86) (Diff)
/source/blender/windowmanager/intern/wm_window.c (+0, -1) (Diff)
/source/blender/windowmanager/wm.h (+4, -0) (Diff)
/source/blender/windowmanager/WM_api.h (+12, -10) (Diff)
/source/blender/windowmanager/WM_types.h (+20, -16) (Diff)
/source/blender/editors/screen/area.c (+5, -0) (Diff)
/source/blender/editors/screen/screen_edit.c (+43, -42) (Diff)
/source/blender/editors/screen/screen_intern.h (+2, -0) (Diff)
/source/blender/editors/screen/screen_ops.c (+7, -0) (Diff)
/source/blender/windowmanager/intern/wm.c (+0, -1) (Diff)
/source/blender/windowmanager/intern/wm_event_system.c (+1, -1) (Diff)
/source/blender/windowmanager/intern/wm_gesture.c (+75, -83) (Diff)
/source/blender/windowmanager/intern/wm_operators.c (+62, -86) (Diff)
/source/blender/windowmanager/intern/wm_window.c (+0, -1) (Diff)
/source/blender/windowmanager/wm.h (+4, -0) (Diff)
/source/blender/windowmanager/WM_api.h (+12, -10) (Diff)
/source/blender/windowmanager/WM_types.h (+20, -16) (Diff)