Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCampbell Barton <ideasman42@gmail.com>2019-02-14 01:38:05 +0300
committerCampbell Barton <ideasman42@gmail.com>2019-02-14 01:44:13 +0300
commitb42333fba63b814e1762d277cd1cdb0c01ba0d27 (patch)
treecb8e723ffaf84fb0f1a413b6f339b7772e5d77cf /release/scripts/presets
parentbdeb9f047a12bcb718de5b2f4a72d418cf3b1f99 (diff)
Keymap: preference for alternate tap action for some pie menus
This allows secondary keys on tap. Currently Z-key to toggle wireframe and tilde for navigation. This is currently experimental, if users like this the preference can be kept and used where appropriate.
Diffstat (limited to 'release/scripts/presets')
-rw-r--r--release/scripts/presets/keyconfig/blender.py15
-rw-r--r--release/scripts/presets/keyconfig/keymap_data/blender_default.py23
2 files changed, 35 insertions, 3 deletions
diff --git a/release/scripts/presets/keyconfig/blender.py b/release/scripts/presets/keyconfig/blender.py
index 9db6df35662..c4db99b9aae 100644
--- a/release/scripts/presets/keyconfig/blender.py
+++ b/release/scripts/presets/keyconfig/blender.py
@@ -81,6 +81,19 @@ class Prefs(bpy.types.KeyConfigPreferences):
default=False,
update=update_fn,
)
+ # Developer note, this is an experemental option.
+ use_pie_click_drag: BoolProperty(
+ name="Pie Menu on Drag",
+ description=(
+ "Activate some pie menus on drag,\n"
+ "allowing the tapping the same key to have a secondary action.\n"
+ "\n"
+ "\u2022 Tapping Z in the 3D view toggles wireframe.\n"
+ "\u2022 Tapping Tilde in the 3D view for first person navigation"
+ ),
+ default=False,
+ update=update_fn,
+ )
def draw(self, layout):
split = layout.split()
@@ -97,6 +110,7 @@ class Prefs(bpy.types.KeyConfigPreferences):
split = layout.split()
col = split.column()
col.prop(self, "use_v3d_tab_menu")
+ col.prop(self, "use_pie_click_drag")
col = split.column()
col.prop(self, "use_v3d_shade_ex_pie")
@@ -120,6 +134,7 @@ def load():
use_select_all_toggle=kc_prefs.use_select_all_toggle,
use_v3d_tab_menu=kc_prefs.use_v3d_tab_menu,
use_v3d_shade_ex_pie=kc_prefs.use_v3d_shade_ex_pie,
+ use_pie_click_drag=kc_prefs.use_pie_click_drag,
),
)
keyconfig_init_from_data(kc, keyconfig_data)
diff --git a/release/scripts/presets/keyconfig/keymap_data/blender_default.py b/release/scripts/presets/keyconfig/keymap_data/blender_default.py
index 0f3151555d3..e3fff42cc5b 100644
--- a/release/scripts/presets/keyconfig/keymap_data/blender_default.py
+++ b/release/scripts/presets/keyconfig/keymap_data/blender_default.py
@@ -35,6 +35,8 @@ class Params:
"cursor_set_event",
"cursor_tweak_event",
"use_mouse_emulate_3_button",
+ # Experemental option.
+ "pie_value",
# User preferences.
#
@@ -45,7 +47,9 @@ class Params:
# Use pie menu for tab by default (swap 'Tab/Ctrl-Tab').
"use_v3d_tab_menu",
# Use extended pie menu for shading.
- "use_v3d_shade_ex_pie"
+ "use_v3d_shade_ex_pie",
+ # Experemental option.
+ "use_pie_click_drag",
)
def __init__(
@@ -61,6 +65,7 @@ class Params:
use_pie_on_tab=False,
use_v3d_tab_menu=False,
use_v3d_shade_ex_pie=False,
+ use_pie_click_drag=False,
):
from sys import platform
self.apple = (platform == 'darwin')
@@ -106,6 +111,12 @@ class Params:
self.use_v3d_tab_menu = use_v3d_tab_menu
self.use_v3d_shade_ex_pie = use_v3d_shade_ex_pie
+ self.use_pie_click_drag = use_pie_click_drag
+ if not use_pie_click_drag:
+ self.pie_value = 'PRESS'
+ else:
+ self.pie_value = 'CLICK_DRAG'
+
# ------------------------------------------------------------------------------
# Constants
@@ -927,7 +938,9 @@ def km_view3d(params):
{"properties": [("use_all_regions", True), ("center", False)]}),
("view3d.view_all", {"type": 'C', "value": 'PRESS', "shift": True},
{"properties": [("center", True)]}),
- op_menu_pie("VIEW3D_MT_view_pie", {"type": 'ACCENT_GRAVE', "value": 'PRESS'}),
+ op_menu_pie("VIEW3D_MT_view_pie", {"type": 'ACCENT_GRAVE', "value": params.pie_value}),
+ *(() if not params.use_pie_click_drag else
+ (("view3d.navigate", {"type": 'ACCENT_GRAVE', "value": 'CLICK'}, None),)),
("view3d.navigate", {"type": 'ACCENT_GRAVE', "value": 'PRESS', "shift": True}, None),
# Numpad views.
("view3d.view_camera", {"type": 'NUMPAD_0', "value": 'PRESS'}, None),
@@ -1081,7 +1094,11 @@ def km_view3d(params):
{"properties": [("data_path", 'space_data.show_gizmo_tool')]}),
op_menu_pie(
"VIEW3D_MT_shading_pie" if not params.use_v3d_shade_ex_pie else
- "VIEW3D_MT_shading_ex_pie", {"type": 'Z', "value": 'PRESS'}),
+ "VIEW3D_MT_shading_ex_pie",
+ {"type": 'Z', "value": params.pie_value}),
+ *(() if not params.use_pie_click_drag else
+ (("view3d.toggle_shading", {"type": 'Z', "value": 'CLICK'},
+ {"properties": [("type", 'WIREFRAME')]}),)),
("view3d.toggle_shading", {"type": 'Z', "value": 'PRESS', "shift": True},
{"properties": [("type", 'WIREFRAME')]}),
("view3d.toggle_xray", {"type": 'Z', "value": 'PRESS', "alt": True}, None),