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>2018-11-18 04:41:05 +0300
committerCampbell Barton <ideasman42@gmail.com>2018-11-18 04:45:14 +0300
commitc57951d903b9c805bd632aafa3fda01713a2dffb (patch)
tree4232a8e0b0c7967c15b3e61db39f05516a982b8c /release/scripts/presets/keyconfig/blender.py
parent50a4a899fd84fe2abd0fd2658e2f1bbe421527f6 (diff)
Keymap: add user-prefs to the default keyconfig
Currently the only option is to use select-all as a toggle.
Diffstat (limited to 'release/scripts/presets/keyconfig/blender.py')
-rw-r--r--release/scripts/presets/keyconfig/blender.py53
1 files changed, 43 insertions, 10 deletions
diff --git a/release/scripts/presets/keyconfig/blender.py b/release/scripts/presets/keyconfig/blender.py
index 3e3e7b711ca..1f589acf963 100644
--- a/release/scripts/presets/keyconfig/blender.py
+++ b/release/scripts/presets/keyconfig/blender.py
@@ -1,22 +1,55 @@
import os
import bpy
+from bpy.props import (
+ BoolProperty,
+)
userpref = bpy.context.user_preferences
+idname = os.path.splitext(os.path.basename(__file__))[0]
+
+def update(_self, _context):
+ _load()
+
+
+class Prefs(bpy.types.KeyConfigPreferences):
+ bl_idname = idname
+
+ use_select_all_toggle: BoolProperty(
+ name="Select All Toggles",
+ description=(
+ "Causes select-all (A-key) to de-select in the case a selection exists"
+ ),
+ default=False,
+ update=update,
+ )
+
+ def draw(self, layout):
+ row = layout.row()
+ row.prop(self, "use_select_all_toggle")
+
+
from bpy_extras.keyconfig_utils import (
- keyconfig_import_from_data,
+ keyconfig_init_from_data,
keyconfig_module_from_preset,
)
-_mod = keyconfig_module_from_preset(os.path.join("keymap_data", "blender_default"), __file__)
-keyconfig_data = _mod.generate_keymaps(
- _mod.KeymapParams(
- select_mouse=userpref.inputs.select_mouse,
- ),
-)
+mod = keyconfig_module_from_preset(os.path.join("keymap_data", "blender_default"), __file__)
-idname = os.path.splitext(os.path.basename(__file__))[0]
+def _load():
+ kc = bpy.context.window_manager.keyconfigs.new(idname)
+ kc_prefs = kc.preferences
-if __name__ == "__main__":
- kc = keyconfig_import_from_data(idname, keyconfig_data)
+ keyconfig_data = mod.generate_keymaps(
+ mod.KeymapParams(
+ select_mouse=userpref.inputs.select_mouse,
+ use_select_all_toggle=kc_prefs.use_select_all_toggle,
+ ),
+ )
+ keyconfig_init_from_data(kc, keyconfig_data)
kc.has_select_mouse = True # Support switching select mouse
+
+
+if __name__ == "__main__":
+ bpy.utils.register_class(Prefs)
+ _load()