[Bf-blender-cvs] [e1b8645c6ad] blender2.8: Keymap: use strict format for keymap definitions

Campbell Barton noreply at git.blender.org
Sun Dec 2 04:02:29 CET 2018


Commit: e1b8645c6adfb925c0c16abfb0241968d58081b4
Author: Campbell Barton
Date:   Sun Dec 2 13:58:52 2018 +1100
Branches: blender2.8
https://developer.blender.org/rBe1b8645c6adfb925c0c16abfb0241968d58081b4

Keymap: use strict format for keymap definitions

Ensure we use lists for keymap items and item properties.

This means scripts can access keymap definitions from other layouts,
manipulating them without sometimes encountering a tuple that needs
to be converted into a list.

===================================================================

M	release/scripts/modules/bl_keymap_utils/io.py
M	release/scripts/presets/keyconfig/keymap_data/blender_default.py

===================================================================

diff --git a/release/scripts/modules/bl_keymap_utils/io.py b/release/scripts/modules/bl_keymap_utils/io.py
index 7135d4bf7bd..ee08a2d7fb0 100644
--- a/release/scripts/modules/bl_keymap_utils/io.py
+++ b/release/scripts/modules/bl_keymap_utils/io.py
@@ -227,6 +227,7 @@ def _kmi_props_setattr(kmi_props, attr, value):
 
 
 def keymap_init_from_data(km, km_items, is_modal=False):
+    assert type(km_items) is list
     new_fn = getattr(km.keymap_items, "new_modal" if is_modal else "new")
     for (kmi_idname, kmi_args, kmi_data) in km_items:
         kmi = new_fn(kmi_idname, **kmi_args)
@@ -236,6 +237,7 @@ def keymap_init_from_data(km, km_items, is_modal=False):
             kmi_props_data = kmi_data.get("properties", None)
             if kmi_props_data is not None:
                 kmi_props = kmi.properties
+                assert type(kmi_props_data) is list
                 for attr, value in kmi_props_data:
                     _kmi_props_setattr(kmi_props, attr, value)
 
diff --git a/release/scripts/presets/keyconfig/keymap_data/blender_default.py b/release/scripts/presets/keyconfig/keymap_data/blender_default.py
index 251cf6fd9bf..ddcd4242c4a 100644
--- a/release/scripts/presets/keyconfig/keymap_data/blender_default.py
+++ b/release/scripts/presets/keyconfig/keymap_data/blender_default.py
@@ -4945,13 +4945,12 @@ def km_generic_tool_annotate(params):
     return (
         "Generic Tool: Annotate",
         {"region_type": 'WINDOW'},
-        {"items": (
+        {"items": [
             ("gpencil.annotate", {"type": params.tool_mouse, "value": 'PRESS'},
              {"properties": [("mode", 'DRAW'), ("wait_for_input", False)]}),
             ("gpencil.annotate", {"type": params.tool_mouse, "value": 'PRESS', "ctrl": True},
              {"properties": [("mode", 'ERASER'), ("wait_for_input", False)]}),
-        ),
-        },
+        ]},
     )
 
 
@@ -4959,13 +4958,12 @@ def km_generic_tool_annotate_line(params):
     return (
         "Generic Tool: Annotate Line",
         {"region_type": 'WINDOW'},
-        {"items": (
+        {"items": [
             ("gpencil.annotate", {"type": params.tool_tweak, "value": 'ANY'},
              {"properties": [("mode", 'DRAW_STRAIGHT'), ("wait_for_input", False)]}),
             ("gpencil.annotate", {"type": params.tool_mouse, "value": 'PRESS', "ctrl": True},
              {"properties": [("mode", 'ERASER'), ("wait_for_input", False)]}),
-        ),
-        },
+        ]},
     )
 
 
@@ -4973,13 +4971,12 @@ def km_generic_tool_annotate_polygon(params):
     return (
         "Generic Tool: Annotate Polygon",
         {"region_type": 'WINDOW'},
-        {"items": (
+        {"items": [
             ("gpencil.annotate", {"type": params.tool_mouse, "value": 'PRESS'},
              {"properties": [("mode", 'DRAW_POLY'), ("wait_for_input", False)]}),
             ("gpencil.annotate", {"type": params.tool_mouse, "value": 'PRESS', "ctrl": True},
              {"properties": [("mode", 'ERASER'), ("wait_for_input", False)]}),
-        ),
-        },
+        ]},
     )
 
 
@@ -4987,25 +4984,23 @@ def km_generic_tool_annotate_eraser(params):
     return (
         "Generic Tool: Annotate Eraser",
         {"region_type": 'WINDOW'},
-        {"items": (
+        {"items": [
             ("gpencil.annotate", {"type": params.tool_mouse, "value": 'PRESS'},
              {"properties": [("mode", 'ERASER'), ("wait_for_input", False)]}),
             ("gpencil.annotate", {"type": params.tool_mouse, "value": 'PRESS', "ctrl": True},
              {"properties": [("mode", 'ERASER'), ("wait_for_input", False)]}),
-        ),
-        },
+        ]},
     )
 
 def km_image_editor_tool_uv_cursor(params):
     return (
         "Image Editor Tool: Uv, Cursor",
         {"space_type": 'IMAGE_EDITOR', "region_type": 'WINDOW'},
-        {"items": (
+        {"items": [
             ("uv.cursor_set", {"type": params.tool_mouse, "value": 'PRESS'}, None),
             ("transform.translate", {"type": params.tool_tweak, "value": 'ANY'},
              {"properties": [("release_confirm", True), ("cursor_transform", True)]}),
-        ),
-        },
+        ]},
     )
 
 
@@ -5029,13 +5024,12 @@ def km_image_editor_tool_uv_select_circle(params):
     return (
         "Image Editor Tool: Uv, Select Circle",
         {"space_type": 'IMAGE_EDITOR', "region_type": 'WINDOW'},
-        {"items": (
+        {"items": [
             ("uv.select_circle", {"type": params.tool_mouse, "value": 'PRESS'},
              {"properties": [("deselect", False)]}),
             ("uv.select_circle", {"type": params.tool_mouse, "value": 'PRESS', "ctrl": True},
              {"properties": [("deselect", True)]}),
-        ),
-        },
+        ]},
     )
 
 
@@ -5051,11 +5045,10 @@ def km_node_editor_tool_select(params):
     return (
         "Node Tool: Select",
         {"space_type": 'NODE_EDITOR', "region_type": 'WINDOW'},
-        {"items": (
+        {"items": [
             ("node.select", {"type": params.select_mouse, "value": 'PRESS'},
              {"properties": [("extend", False)]}),
-        ),
-        },
+        ]},
     )
 
 
@@ -5063,13 +5056,12 @@ def km_node_editor_tool_select_box(params):
     return (
         "Node Tool: Select Box",
         {"space_type": 'NODE_EDITOR', "region_type": 'WINDOW'},
-        {"items": (
+        {"items": [
             ("node.select_box", {"type": params.tool_mouse, "value": 'PRESS'},
               {"properties": [("deselect", False), ("tweak", True)]}),
             ("node.select_box", {"type": params.tool_mouse, "value": 'PRESS', "ctrl": True},
               {"properties": [("deselect", True), ("tweak", True)]}),
-        ),
-        },
+        ]},
     )
 
 
@@ -5077,13 +5069,12 @@ def km_node_editor_tool_select_lasso(params):
     return (
         "Node Tool: Select Lasso",
         {"space_type": 'NODE_EDITOR', "region_type": 'WINDOW'},
-        {"items": (
+        {"items": [
             ("node.select_lasso", {"type": params.tool_mouse, "value": 'PRESS'},
               {"properties": [("deselect", False)]}),
             ("node.select_lasso", {"type": params.tool_mouse, "value": 'PRESS', "ctrl": True},
               {"properties": [("deselect", True)]}),
-        ),
-        },
+        ]},
     )
 
 
@@ -5091,10 +5082,9 @@ def km_node_editor_tool_links_cut(params):
     return (
         "Node Tool: Links Cut",
         {"space_type": 'NODE_EDITOR', "region_type": 'WINDOW'},
-        {"items": (
+        {"items": [
             ("node.links_cut", {"type": params.tool_mouse, "value": 'PRESS'}, None),
-        ),
-        },
+        ]},
     )
 
 
@@ -5103,12 +5093,11 @@ def km_3d_view_tool_object_cursor(params):
     return (
         "3D View Tool: Object, Cursor",
         {"space_type": 'VIEW_3D', "region_type": 'WINDOW'},
-        {"items": (
+        {"items": [
             ("view3d.cursor3d", {"type": params.tool_mouse, "value": 'PRESS'}, None),
             ("transform.translate", {"type": params.tool_tweak, "value": 'ANY'},
              {"properties": [("release_confirm", True), ("cursor_transform", True)]}),
-        ),
-        },
+        ]},
     )
 
 
@@ -5132,13 +5121,12 @@ def km_3d_view_tool_object_select_circle(params):
     return (
         "3D View Tool: Object, Select Circle",
         {"space_type": 'VIEW_3D', "region_type": 'WINDOW'},
-        {"items": (
+        {"items": [
             ("view3d.select_circle", {"type": params.tool_mouse, "value": 'PRESS'},
              {"properties": [("deselect", False)]}),
             ("view3d.select_circle", {"type": params.tool_mouse, "value": 'PRESS', "ctrl": True},
              {"properties": [("deselect", True)]}),
-        ),
-        },
+        ]},
     )
 
 
@@ -5154,10 +5142,9 @@ def km_3d_view_tool_object_transform(params):
     return (
         "3D View Tool: Object, Transform",
         {"space_type": 'VIEW_3D', "region_type": 'WINDOW'},
-        {"items": (
+        {"items": [
             ("transform.from_gizmo", {"type": params.tool_tweak, "value": 'ANY'}, None),
-        ),
-        },
+        ]},
     )
 
 
@@ -5165,11 +5152,10 @@ def km_3d_view_tool_object_move(params):
     return (
         "3D View Tool: Object, Move",
         {"space_type": 'VIEW_3D', "region_type": 'WINDOW'},
-        {"items": (
+        {"items": [
             ("transform.translate", {"type": params.tool_tweak, "value": 'ANY'},
              {"properties": [("release_confirm", True)]}),
-        ),
-        },
+        ]},
     )
 
 
@@ -5177,11 +5163,10 @@ def km_3d_view_tool_object_rotate(params):
     return (
         "3D View Tool: Object, Rotate",
         {"space_type": 'VIEW_3D', "region_type": 'WINDOW'},
-        {"items": (
+        {"items": [
             ("transform.rotate", {"type": params.tool_tweak, "value": 'ANY'},
              {"properties": [("release_confirm", True)]}),
-        ),
-        },
+        ]},
     )
 
 
@@ -5189,11 +5174,10 @@ def km_3d_view_tool_object_scale(params):
     return (
         "3D View Tool: Object, Scale",
         {"space_type": 'VIEW_3D', "region_type": 'WINDOW'},
-        {"items": (
+        {"items": [
             ("transform.resize", {"type": params.tool_tweak, "value": 'ANY'},
              {"properties": [("release_confirm", True)]}),
-        ),
-        },
+        ]},
     )
 
 
@@ -5201,10 +5185,9 @@ def km_3d_view_tool_object_measure(params):
     return (
         "3D View Tool: Object, Measure",
         {"space_type": 'VIEW_3D', "region_type": 'WINDOW'},
-        {"items": (
+        {"items": [
             ("view3d.ruler_add", {"type": params.tool_tweak, "value": 'ANY'}, None),
-        ),
-        },
+        ]},
     )
 
 
@@ -5212,10 +5195,9 @@ def km_3d_view_tool_pose_breakdowner(params):
     return (
         "3D View Tool: Pose, Breakdowner",
         {"space_type": 'VIEW_3D', "region_type": 'WINDOW'},
-        {"items": (
+        {"items": [
             ("pose.breakdown", {"type": params.tool_tweak, "value": 'ANY'}, None),
-        ),
-        },
+        ]},
     )
 
 
@@ -5223,10 +5205,9 @@ def km_3d_view_tool_pose_push(params):
     return (
         "3D View Tool: Pose, Push",
         {"space_type": 'VIEW_3D', "region_type": 'WINDOW'},

@@ Diff output truncated at 10240 characters. @@



More information about the Bf-blender-cvs mailing list