[Bf-blender-cvs] [63a7ac89300] master: Keymap: add drag-only generic gizmo keymap
Campbell Barton
noreply at git.blender.org
Wed May 29 06:33:46 CEST 2019
Commit: 63a7ac893009eefdecc81944e8a6bfc566035bf4
Author: Campbell Barton
Date: Wed May 29 13:30:15 2019 +1000
Branches: master
https://developer.blender.org/rB63a7ac893009eefdecc81944e8a6bfc566035bf4
Keymap: add drag-only generic gizmo keymap
Allows gizmos clicks to fall through for gizmos which only drag,
currently unused.
===================================================================
M release/scripts/presets/keyconfig/keymap_data/blender_default.py
M source/blender/windowmanager/gizmo/WM_gizmo_api.h
M source/blender/windowmanager/gizmo/intern/wm_gizmo_group.c
===================================================================
diff --git a/release/scripts/presets/keyconfig/keymap_data/blender_default.py b/release/scripts/presets/keyconfig/keymap_data/blender_default.py
index b5cc573cac4..c930fbb23c6 100644
--- a/release/scripts/presets/keyconfig/keymap_data/blender_default.py
+++ b/release/scripts/presets/keyconfig/keymap_data/blender_default.py
@@ -215,6 +215,12 @@ def _template_items_gizmo_tweak_value_click_drag():
]
+def _template_items_gizmo_tweak_value_drag():
+ return [
+ ("gizmogroup.gizmo_tweak", {"type": 'EVT_TWEAK_L', "value": 'ANY', "any": True}, None),
+ ]
+
+
def _template_items_editmode_mesh_select_mode(params):
if params.legacy:
return [
@@ -4716,11 +4722,21 @@ def km_generic_gizmo(_params):
return keymap
-def km_generic_gizmo_click_drag(_params):
+def km_generic_gizmo_drag(_params):
keymap = (
"Generic Gizmo Click Drag",
{"space_type": 'EMPTY', "region_type": 'WINDOW'},
- {"items": _template_items_gizmo_tweak_value_click_drag()},
+ {"items": _template_items_gizmo_tweak_value_drag()},
+ )
+
+ return keymap
+
+
+def km_generic_gizmo_click_drag(_params):
+ keymap = (
+ "Generic Gizmo Drag",
+ {"space_type": 'EMPTY', "region_type": 'WINDOW'},
+ {"items": _template_items_gizmo_tweak_value_drag()},
)
return keymap
diff --git a/source/blender/windowmanager/gizmo/WM_gizmo_api.h b/source/blender/windowmanager/gizmo/WM_gizmo_api.h
index ea6fcee2299..7aaf7da9a5b 100644
--- a/source/blender/windowmanager/gizmo/WM_gizmo_api.h
+++ b/source/blender/windowmanager/gizmo/WM_gizmo_api.h
@@ -240,6 +240,9 @@ struct wmKeyMap *WM_gizmogroup_keymap_generic(const struct wmGizmoGroupType *gzg
struct wmKeyConfig *kc);
struct wmKeyMap *WM_gizmogroup_keymap_generic_select(const struct wmGizmoGroupType *gzgt,
struct wmKeyConfig *kc);
+struct wmKeyMap *WM_gizmogroup_keymap_generic_drag(const struct wmGizmoGroupType *gzgt,
+ struct wmKeyConfig *kc);
+
/* Utility functions (not callbacks). */
struct wmKeyMap *WM_gizmo_keymap_generic_with_keyconfig(struct wmKeyConfig *kc);
struct wmKeyMap *WM_gizmo_keymap_generic(struct wmWindowManager *wm);
@@ -247,6 +250,9 @@ struct wmKeyMap *WM_gizmo_keymap_generic(struct wmWindowManager *wm);
struct wmKeyMap *WM_gizmo_keymap_generic_select_with_keyconfig(struct wmKeyConfig *kc);
struct wmKeyMap *WM_gizmo_keymap_generic_select(struct wmWindowManager *wm);
+struct wmKeyMap *WM_gizmo_keymap_generic_drag_with_keyconfig(struct wmKeyConfig *kc);
+struct wmKeyMap *WM_gizmo_keymap_generic_drag(struct wmWindowManager *wm);
+
struct wmKeyMap *WM_gizmo_keymap_generic_click_drag_with_keyconfig(struct wmKeyConfig *kc);
struct wmKeyMap *WM_gizmo_keymap_generic_click_drag(struct wmWindowManager *wm);
diff --git a/source/blender/windowmanager/gizmo/intern/wm_gizmo_group.c b/source/blender/windowmanager/gizmo/intern/wm_gizmo_group.c
index c88fb9fb228..75c2c40a6c4 100644
--- a/source/blender/windowmanager/gizmo/intern/wm_gizmo_group.c
+++ b/source/blender/windowmanager/gizmo/intern/wm_gizmo_group.c
@@ -656,6 +656,11 @@ wmKeyMap *WM_gizmogroup_keymap_generic(const wmGizmoGroupType *UNUSED(gzgt), wmK
return WM_gizmo_keymap_generic_with_keyconfig(kc);
}
+wmKeyMap *WM_gizmogroup_keymap_generic_drag(const wmGizmoGroupType *UNUSED(gzgt), wmKeyConfig *kc)
+{
+ return WM_gizmo_keymap_generic_drag_with_keyconfig(kc);
+}
+
/**
* Variation of #WM_gizmogroup_keymap_common but with keymap items for selection
*
@@ -741,6 +746,16 @@ struct wmKeyMap *WM_gizmo_keymap_generic_select(wmWindowManager *wm)
return WM_gizmo_keymap_generic_select_with_keyconfig(wm->defaultconf);
}
+struct wmKeyMap *WM_gizmo_keymap_generic_drag_with_keyconfig(wmKeyConfig *kc)
+{
+ const char *idname = "Generic Gizmo Drag";
+ return WM_keymap_ensure(kc, idname, SPACE_EMPTY, RGN_TYPE_WINDOW);
+}
+struct wmKeyMap *WM_gizmo_keymap_generic_drag(wmWindowManager *wm)
+{
+ return WM_gizmo_keymap_generic_click_drag_with_keyconfig(wm->defaultconf);
+}
+
struct wmKeyMap *WM_gizmo_keymap_generic_click_drag_with_keyconfig(wmKeyConfig *kc)
{
const char *idname = "Generic Gizmo Click Drag";
More information about the Bf-blender-cvs
mailing list