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-16 07:59:44 +0300
committerCampbell Barton <ideasman42@gmail.com>2018-11-16 08:00:37 +0300
commitc1f5ccb11a4e685be07f6bad993b4fcefe6b2ed4 (patch)
tree20a7a57525558c1c77a5ca0ea560c30036df0c53
parentcb79b691cd1c96436f2ea7ea38526e0fc69de357 (diff)
Keymap: allow filling in existing key-configs
Needed so we can get the preferences of a key-config which are sent to a function that generates the contents.
-rw-r--r--release/scripts/modules/bpy_extras/keyconfig_utils.py14
1 files changed, 10 insertions, 4 deletions
diff --git a/release/scripts/modules/bpy_extras/keyconfig_utils.py b/release/scripts/modules/bpy_extras/keyconfig_utils.py
index 6de0cc2e205..4d5ec5286ec 100644
--- a/release/scripts/modules/bpy_extras/keyconfig_utils.py
+++ b/release/scripts/modules/bpy_extras/keyconfig_utils.py
@@ -488,6 +488,15 @@ def keymap_items_from_data(km, km_items, is_modal=False):
_kmi_props_setattr(kmi_props, attr, value)
+def keyconfig_init_from_data(kc, keyconfig_data):
+ # Load data in the format defined above.
+ #
+ # Runs at load time, keep this fast!
+ for (km_name, km_args, km_content) in keyconfig_data:
+ km = kc.keymaps.new(km_name, **km_args)
+ keymap_items_from_data(km, km_content["items"], is_modal=km_args.get("modal", False))
+
+
def keyconfig_import_from_data(name, keyconfig_data):
# Load data in the format defined above.
#
@@ -496,10 +505,7 @@ def keyconfig_import_from_data(name, keyconfig_data):
import bpy
wm = bpy.context.window_manager
kc = wm.keyconfigs.new(name)
- for (km_name, km_args, km_content) in keyconfig_data:
- km = kc.keymaps.new(km_name, **km_args)
- keymap_items_from_data(km, km_content["items"], is_modal=km_args.get("modal", False))
-
+ keyconfig_init_from_data(kc, keyconfig_data)
return kc