diff options
author | Julian Eisel <eiseljulian@gmail.com> | 2018-10-30 01:28:08 +0300 |
---|---|---|
committer | Julian Eisel <eiseljulian@gmail.com> | 2018-10-30 01:29:26 +0300 |
commit | 70582cf8d26e4ba5d6ccb0d1044d16e239fa655e (patch) | |
tree | 6a0c2ab6548286a6cca99ab0f64e22c859852bfe | |
parent | a0d40c6a8c42c774d9286b5de0d80167c1d55fde (diff) |
UI: Support using Ctrl+Scrollwheel to cycle properties editor tabs
Small side effect is that area operators (toggle fullscreen/maximized, duplicate
area) are now displayed in RMB-menu. Makes sense anyway.
m--------- | release/scripts/addons | 0 | ||||
m--------- | release/scripts/addons_contrib | 0 | ||||
-rw-r--r-- | source/blender/editors/include/ED_screen.h | 6 | ||||
-rw-r--r-- | source/blender/editors/screen/screen_ops.c | 6 | ||||
-rw-r--r-- | source/blender/editors/space_buttons/space_buttons.c | 10 | ||||
m--------- | source/tools | 0 |
6 files changed, 16 insertions, 6 deletions
diff --git a/release/scripts/addons b/release/scripts/addons -Subproject 6c3a46dc113de870a03191e4c0685238b0823ac +Subproject c2aef4a98f6cabef9a6d38a33035f02cf8233dd diff --git a/release/scripts/addons_contrib b/release/scripts/addons_contrib -Subproject 15b25a42783d1e516b5298d70b582fae2559ae1 +Subproject 5c4210d5b78c61137c5f32e7deb7561177ac089 diff --git a/source/blender/editors/include/ED_screen.h b/source/blender/editors/include/ED_screen.h index 2f2f4847a6f..faa9233bff1 100644 --- a/source/blender/editors/include/ED_screen.h +++ b/source/blender/editors/include/ED_screen.h @@ -364,4 +364,10 @@ void ED_area_type_hud_ensure(struct bContext *C, struct ScrArea *sa); #define ED_KEYMAP_GPENCIL 32 #define ED_KEYMAP_HEADER 64 +/* SCREEN_OT_space_context_cycle direction */ +enum { + SPACE_CONTEXT_CYCLE_PREV, + SPACE_CONTEXT_CYCLE_NEXT, +}; + #endif /* __ED_SCREEN_H__ */ diff --git a/source/blender/editors/screen/screen_ops.c b/source/blender/editors/screen/screen_ops.c index 3d32f10582d..7a447bb41d4 100644 --- a/source/blender/editors/screen/screen_ops.c +++ b/source/blender/editors/screen/screen_ops.c @@ -4614,12 +4614,6 @@ static void SCREEN_OT_region_blend(wmOperatorType *ot) /** \name Space Context Cycle Operator * \{ */ -/* SCREEN_OT_space_context_cycle direction */ -enum { - SPACE_CONTEXT_CYCLE_PREV, - SPACE_CONTEXT_CYCLE_NEXT, -}; - static const EnumPropertyItem space_context_cycle_direction[] = { {SPACE_CONTEXT_CYCLE_PREV, "PREV", 0, "Previous", ""}, {SPACE_CONTEXT_CYCLE_NEXT, "NEXT", 0, "Next", ""}, diff --git a/source/blender/editors/space_buttons/space_buttons.c b/source/blender/editors/space_buttons/space_buttons.c index 413d0ab376a..0e52b8ad320 100644 --- a/source/blender/editors/space_buttons/space_buttons.c +++ b/source/blender/editors/space_buttons/space_buttons.c @@ -351,8 +351,14 @@ static void buttons_operatortypes(void) static void buttons_keymap(struct wmKeyConfig *keyconf) { wmKeyMap *keymap = WM_keymap_ensure(keyconf, "Property Editor", SPACE_BUTS, 0); + wmKeyMapItem *kmi; WM_keymap_add_item(keymap, "BUTTONS_OT_context_menu", RIGHTMOUSE, KM_PRESS, 0, 0); + + kmi = WM_keymap_add_item(keymap, "SCREEN_OT_space_context_cycle", WHEELUPMOUSE, KM_PRESS, KM_CTRL, 0); + RNA_enum_set(kmi->ptr, "direction", SPACE_CONTEXT_CYCLE_PREV); + kmi = WM_keymap_add_item(keymap, "SCREEN_OT_space_context_cycle", WHEELDOWNMOUSE, KM_PRESS, KM_CTRL, 0); + RNA_enum_set(kmi->ptr, "direction", SPACE_CONTEXT_CYCLE_NEXT); } /* add handlers, stuff you only do once or on area/region changes */ @@ -410,7 +416,11 @@ static void buttons_header_region_message_subscribe( static void buttons_navigation_bar_region_init(wmWindowManager *wm, ARegion *ar) { + wmKeyMap *keymap = WM_keymap_ensure(wm->defaultconf, "Property Editor", SPACE_BUTS, 0); + WM_event_add_keymap_handler(&ar->handlers, keymap); + ar->flag |= RGN_FLAG_PREFSIZE_OR_HIDDEN; + ED_region_panels_init(wm, ar); ar->v2d.keepzoom |= V2D_LOCKZOOM_X | V2D_LOCKZOOM_Y; } diff --git a/source/tools b/source/tools -Subproject 11656ebaf7f912cdb1b5eb39c5d0a3b5d492c1a +Subproject 5162393c104d6d5f0314183a084875fff68f28b |