diff options
author | Campbell Barton <ideasman42@gmail.com> | 2018-11-15 05:36:23 +0300 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2018-11-15 05:38:27 +0300 |
commit | 8734a09379dce6d2ca8d0fdd2083821233520e78 (patch) | |
tree | 62e8b114167a7a9138014678a08b839ede040159 /release/scripts/startup/bl_ui/space_toolsystem_common.py | |
parent | 349d85eb9e4bc1e4ee65cff278abda47891b6c1c (diff) |
Tool System: use preset keymap loading logic
The data structures for tool keymaps and presets were different,
use the same structure and expose function publicly.
Diffstat (limited to 'release/scripts/startup/bl_ui/space_toolsystem_common.py')
-rw-r--r-- | release/scripts/startup/bl_ui/space_toolsystem_common.py | 16 |
1 files changed, 3 insertions, 13 deletions
diff --git a/release/scripts/startup/bl_ui/space_toolsystem_common.py b/release/scripts/startup/bl_ui/space_toolsystem_common.py index f3fa12f9ce4..31fe865ca41 100644 --- a/release/scripts/startup/bl_ui/space_toolsystem_common.py +++ b/release/scripts/startup/bl_ui/space_toolsystem_common.py @@ -47,20 +47,10 @@ _icon_cache = {} def _keymap_fn_from_seq(keymap_data): - # standalone - def _props_assign_recursive(rna_props, py_props): - for prop_id, value in py_props.items(): - if isinstance(value, dict): - _props_assign_recursive(getattr(rna_props, prop_id), value) - else: - setattr(rna_props, prop_id, value) - def keymap_fn(km): - for op_idname, op_props_dict, kmi_kwargs in keymap_fn.keymap_data: - kmi = km.keymap_items.new(op_idname, **kmi_kwargs) - kmi_props = kmi.properties - if op_props_dict: - _props_assign_recursive(kmi_props, op_props_dict) + if keymap_fn.keymap_data: + from bpy_extras.keyconfig_utils import keymap_items_from_data + keymap_items_from_data(km, keymap_fn.keymap_data) keymap_fn.keymap_data = keymap_data return keymap_fn |