Keymap: ignore repeat events for transform actions
Resolves T54297
This commit is contained in:
parent
e6aa349c68
commit
2e7cfb86fe
@ -855,12 +855,12 @@ def km_uv_editor(params):
|
||||
op_menu_pie("IMAGE_MT_uvs_snap_pie", {"type": 'S', "value": 'PRESS', "shift": True}),
|
||||
op_menu("IMAGE_MT_uvs_select_mode", {"type": 'TAB', "value": 'PRESS', "ctrl": True}),
|
||||
*_template_items_proportional_editing(connected=False),
|
||||
("transform.translate", {"type": 'G', "value": 'PRESS'}, None),
|
||||
("transform.translate", {"type": 'G', "value": 'PRESS', "repeat": False}, None),
|
||||
("transform.translate", {"type": params.select_tweak, "value": 'ANY'}, None),
|
||||
("transform.rotate", {"type": 'R', "value": 'PRESS'}, None),
|
||||
("transform.resize", {"type": 'S', "value": 'PRESS'}, None),
|
||||
("transform.shear", {"type": 'S', "value": 'PRESS', "shift": True, "ctrl": True, "alt": True}, None),
|
||||
("transform.mirror", {"type": 'M', "value": 'PRESS', "ctrl": True}, None),
|
||||
("transform.rotate", {"type": 'R', "value": 'PRESS', "repeat": False}, None),
|
||||
("transform.resize", {"type": 'S', "value": 'PRESS', "repeat": False}, None),
|
||||
("transform.shear", {"type": 'S', "value": 'PRESS', "shift": True, "ctrl": True, "alt": True, "repeat": False}, None),
|
||||
("transform.mirror", {"type": 'M', "value": 'PRESS', "ctrl": True, "repeat": False}, None),
|
||||
("wm.context_toggle", {"type": 'TAB', "value": 'PRESS', "shift": True},
|
||||
{"properties": [("data_path", 'tool_settings.use_snap')]}),
|
||||
("wm.context_menu_enum", {"type": 'TAB', "value": 'PRESS', "shift": True, "ctrl": True},
|
||||
@ -1142,19 +1142,19 @@ def km_view3d(params):
|
||||
("view3d.copybuffer", {"type": 'C', "value": 'PRESS', "ctrl": True}, None),
|
||||
("view3d.pastebuffer", {"type": 'V', "value": 'PRESS', "ctrl": True}, None),
|
||||
# Transform.
|
||||
("transform.translate", {"type": 'G', "value": 'PRESS'}, None),
|
||||
("transform.translate", {"type": 'G', "value": 'PRESS', "repeat": False}, None),
|
||||
("transform.translate", {"type": params.select_tweak, "value": 'ANY'}, None),
|
||||
("transform.rotate", {"type": 'R', "value": 'PRESS'}, None),
|
||||
("transform.resize", {"type": 'S', "value": 'PRESS'}, None),
|
||||
("transform.bend", {"type": 'W', "value": 'PRESS', "shift": True}, None),
|
||||
("transform.tosphere", {"type": 'S', "value": 'PRESS', "shift": True, "alt": True}, None),
|
||||
("transform.shear", {"type": 'S', "value": 'PRESS', "shift": True, "ctrl": True, "alt": True}, None),
|
||||
("transform.mirror", {"type": 'M', "value": 'PRESS', "ctrl": True}, None),
|
||||
("transform.rotate", {"type": 'R', "value": 'PRESS', "repeat": False}, None),
|
||||
("transform.resize", {"type": 'S', "value": 'PRESS', "repeat": False}, None),
|
||||
("transform.bend", {"type": 'W', "value": 'PRESS', "shift": True, "repeat": False}, None),
|
||||
("transform.tosphere", {"type": 'S', "value": 'PRESS', "shift": True, "alt": True, "repeat": False}, None),
|
||||
("transform.shear", {"type": 'S', "value": 'PRESS', "shift": True, "ctrl": True, "alt": True, "repeat": False}, None),
|
||||
("transform.mirror", {"type": 'M', "value": 'PRESS', "ctrl": True, "repeat": False}, None),
|
||||
("wm.context_toggle", {"type": 'TAB', "value": 'PRESS', "shift": True},
|
||||
{"properties": [("data_path", 'tool_settings.use_snap')]}),
|
||||
op_panel("VIEW3D_PT_snapping", {"type": 'TAB', "value": 'PRESS', "shift": True, "ctrl": True}, [("keep_open", False)]),
|
||||
("object.transform_axis_target", {"type": 'T', "value": 'PRESS', "shift": True}, None),
|
||||
("transform.skin_resize", {"type": 'A', "value": 'PRESS', "ctrl": True}, None),
|
||||
("transform.skin_resize", {"type": 'A', "value": 'PRESS', "ctrl": True, "repeat": False}, None),
|
||||
])
|
||||
|
||||
if not params.legacy:
|
||||
@ -1210,9 +1210,9 @@ def km_view3d(params):
|
||||
{"properties": [("type", 'RIGHT')]}),
|
||||
("transform.create_orientation", {"type": 'SPACE', "value": 'PRESS', "ctrl": True, "alt": True},
|
||||
{"properties": [("use", True)]}),
|
||||
("transform.translate", {"type": 'T', "value": 'PRESS', "shift": True},
|
||||
("transform.translate", {"type": 'T', "value": 'PRESS', "shift": True, "repeat": False},
|
||||
{"properties": [("texture_space", True)]}),
|
||||
("transform.resize", {"type": 'T', "value": 'PRESS', "shift": True, "alt": True},
|
||||
("transform.resize", {"type": 'T', "value": 'PRESS', "shift": True, "alt": True, "repeat": False},
|
||||
{"properties": [("texture_space", True)]}),
|
||||
# Old pivot.
|
||||
("wm.context_set_enum", {"type": 'COMMA', "value": 'PRESS'},
|
||||
@ -1312,10 +1312,10 @@ def km_mask_editing(params):
|
||||
("mask.duplicate_move", {"type": 'D', "value": 'PRESS', "shift": True}, None),
|
||||
("mask.copy_splines", {"type": 'C', "value": 'PRESS', "ctrl": True}, None),
|
||||
("mask.paste_splines", {"type": 'V', "value": 'PRESS', "ctrl": True}, None),
|
||||
("transform.translate", {"type": 'G', "value": 'PRESS'}, None),
|
||||
("transform.resize", {"type": 'S', "value": 'PRESS'}, None),
|
||||
("transform.rotate", {"type": 'R', "value": 'PRESS'}, None),
|
||||
("transform.transform", {"type": 'S', "value": 'PRESS', "alt": True},
|
||||
("transform.translate", {"type": 'G', "value": 'PRESS', "repeat": False}, None),
|
||||
("transform.resize", {"type": 'S', "value": 'PRESS', "repeat": False}, None),
|
||||
("transform.rotate", {"type": 'R', "value": 'PRESS', "repeat": False}, None),
|
||||
("transform.transform", {"type": 'S', "value": 'PRESS', "alt": True, "repeat": False},
|
||||
{"properties": [("mode", 'MASK_SHRINKFATTEN')]}),
|
||||
])
|
||||
|
||||
@ -1514,12 +1514,12 @@ def km_graph_editor(params):
|
||||
("graph.fmodifier_add", {"type": 'M', "value": 'PRESS', "shift": True, "ctrl": True},
|
||||
{"properties": [("only_active", False)]}),
|
||||
("anim.channels_editable_toggle", {"type": 'TAB', "value": 'PRESS'}, None),
|
||||
("transform.translate", {"type": 'G', "value": 'PRESS'}, None),
|
||||
("transform.translate", {"type": 'G', "value": 'PRESS', "repeat": False}, None),
|
||||
("transform.translate", {"type": params.select_tweak, "value": 'ANY'}, None),
|
||||
("transform.transform", {"type": 'E', "value": 'PRESS'},
|
||||
("transform.transform", {"type": 'E', "value": 'PRESS', "repeat": False},
|
||||
{"properties": [("mode", 'TIME_EXTEND')]}),
|
||||
("transform.rotate", {"type": 'R', "value": 'PRESS'}, None),
|
||||
("transform.resize", {"type": 'S', "value": 'PRESS'}, None),
|
||||
("transform.rotate", {"type": 'R', "value": 'PRESS', "repeat": False}, None),
|
||||
("transform.resize", {"type": 'S', "value": 'PRESS', "repeat": False}, None),
|
||||
("wm.context_toggle", {"type": 'O', "value": 'PRESS'},
|
||||
{"properties": [("data_path", 'tool_settings.use_proportional_fcurve')]}),
|
||||
op_menu_pie("VIEW3D_MT_proportional_editing_falloff_pie", {"type": 'O', "value": 'PRESS', "shift": True}),
|
||||
@ -1770,13 +1770,13 @@ def km_node_editor(params):
|
||||
("node.translate_attach", {"type": 'G', "value": 'PRESS'}, None),
|
||||
("node.translate_attach", {"type": 'EVT_TWEAK_L', "value": 'ANY'}, None),
|
||||
("node.translate_attach", {"type": params.select_tweak, "value": 'ANY'}, None),
|
||||
("transform.translate", {"type": 'G', "value": 'PRESS'}, None),
|
||||
("transform.translate", {"type": 'G', "value": 'PRESS', "repeat": False}, None),
|
||||
("transform.translate", {"type": 'EVT_TWEAK_L', "value": 'ANY'},
|
||||
{"properties": [("release_confirm", True)]}),
|
||||
("transform.translate", {"type": params.select_tweak, "value": 'ANY'},
|
||||
{"properties": [("release_confirm", True)]}),
|
||||
("transform.rotate", {"type": 'R', "value": 'PRESS'}, None),
|
||||
("transform.resize", {"type": 'S', "value": 'PRESS'}, None),
|
||||
("transform.rotate", {"type": 'R', "value": 'PRESS', "repeat": False}, None),
|
||||
("transform.resize", {"type": 'S', "value": 'PRESS', "repeat": False}, None),
|
||||
("node.move_detach_links", {"type": 'D', "value": 'PRESS', "alt": True}, None),
|
||||
("node.move_detach_links_release", {"type": params.action_tweak, "value": 'ANY', "alt": True}, None),
|
||||
("node.move_detach_links", {"type": params.select_tweak, "value": 'ANY', "alt": True}, None),
|
||||
@ -2052,15 +2052,15 @@ def km_dopesheet(params):
|
||||
("action.view_frame", {"type": 'NUMPAD_0', "value": 'PRESS'}, None),
|
||||
("anim.channels_editable_toggle", {"type": 'TAB', "value": 'PRESS'}, None),
|
||||
("anim.channels_find", {"type": 'F', "value": 'PRESS', "ctrl": True}, None),
|
||||
("transform.transform", {"type": 'G', "value": 'PRESS'},
|
||||
("transform.transform", {"type": 'G', "value": 'PRESS', "repeat": False},
|
||||
{"properties": [("mode", 'TIME_TRANSLATE')]}),
|
||||
("transform.transform", {"type": params.select_tweak, "value": 'ANY'},
|
||||
{"properties": [("mode", 'TIME_TRANSLATE')]}),
|
||||
("transform.transform", {"type": 'E', "value": 'PRESS'},
|
||||
("transform.transform", {"type": 'E', "value": 'PRESS', "repeat": False},
|
||||
{"properties": [("mode", 'TIME_EXTEND')]}),
|
||||
("transform.transform", {"type": 'S', "value": 'PRESS'},
|
||||
("transform.transform", {"type": 'S', "value": 'PRESS', "repeat": False},
|
||||
{"properties": [("mode", 'TIME_SCALE')]}),
|
||||
("transform.transform", {"type": 'T', "value": 'PRESS', "shift": True},
|
||||
("transform.transform", {"type": 'T', "value": 'PRESS', "shift": True, "repeat": False},
|
||||
{"properties": [("mode", 'TIME_SLIDE')]}),
|
||||
("wm.context_toggle", {"type": 'O', "value": 'PRESS'},
|
||||
{"properties": [("data_path", 'tool_settings.use_proportional_action')]}),
|
||||
@ -2183,13 +2183,13 @@ def km_nla_editor(params):
|
||||
("nla.clear_scale", {"type": 'S', "value": 'PRESS', "alt": True}, None),
|
||||
op_menu_pie("NLA_MT_snap_pie", {"type": 'S', "value": 'PRESS', "shift": True}),
|
||||
("nla.fmodifier_add", {"type": 'M', "value": 'PRESS', "shift": True, "ctrl": True}, None),
|
||||
("transform.transform", {"type": 'G', "value": 'PRESS'},
|
||||
("transform.transform", {"type": 'G', "value": 'PRESS', "repeat": False},
|
||||
{"properties": [("mode", 'TRANSLATION')]}),
|
||||
("transform.transform", {"type": params.select_tweak, "value": 'ANY'},
|
||||
{"properties": [("mode", 'TRANSLATION')]}),
|
||||
("transform.transform", {"type": 'E', "value": 'PRESS'},
|
||||
("transform.transform", {"type": 'E', "value": 'PRESS', "repeat": False},
|
||||
{"properties": [("mode", 'TIME_EXTEND')]}),
|
||||
("transform.transform", {"type": 'S', "value": 'PRESS'},
|
||||
("transform.transform", {"type": 'S', "value": 'PRESS', "repeat": False},
|
||||
{"properties": [("mode", 'TIME_SCALE')]}),
|
||||
("marker.add", {"type": 'M', "value": 'PRESS'}, None),
|
||||
("marker.rename", {"type": 'M', "value": 'PRESS', "ctrl": True}, None),
|
||||
@ -2494,9 +2494,9 @@ def km_sequencer(params):
|
||||
("sequencer.slip", {"type": 'S', "value": 'PRESS'}, None),
|
||||
("wm.context_set_int", {"type": 'O', "value": 'PRESS'},
|
||||
{"properties": [("data_path", 'scene.sequence_editor.overlay_frame'), ("value", 0)]}),
|
||||
("transform.seq_slide", {"type": 'G', "value": 'PRESS'}, None),
|
||||
("transform.seq_slide", {"type": 'G', "value": 'PRESS', "repeat": False}, None),
|
||||
("transform.seq_slide", {"type": params.select_tweak, "value": 'ANY'}, None),
|
||||
("transform.transform", {"type": 'E', "value": 'PRESS'},
|
||||
("transform.transform", {"type": 'E', "value": 'PRESS', "repeat": False},
|
||||
{"properties": [("mode", 'TIME_EXTEND')]}),
|
||||
("marker.add", {"type": 'M', "value": 'PRESS'}, None),
|
||||
("marker.rename", {"type": 'M', "value": 'PRESS', "ctrl": True}, None),
|
||||
@ -2735,10 +2735,10 @@ def km_clip_editor(params):
|
||||
{"properties": [("data_path", 'space_data.show_marker_search')]}),
|
||||
("wm.context_toggle", {"type": 'M', "value": 'PRESS'},
|
||||
{"properties": [("data_path", 'space_data.use_mute_footage')]}),
|
||||
("transform.translate", {"type": 'G', "value": 'PRESS'}, None),
|
||||
("transform.translate", {"type": 'G', "value": 'PRESS', "repeat": False}, None),
|
||||
("transform.translate", {"type": params.select_tweak, "value": 'ANY'}, None),
|
||||
("transform.resize", {"type": 'S', "value": 'PRESS'}, None),
|
||||
("transform.rotate", {"type": 'R', "value": 'PRESS'}, None),
|
||||
("transform.resize", {"type": 'S', "value": 'PRESS', "repeat": False}, None),
|
||||
("transform.rotate", {"type": 'R', "value": 'PRESS', "repeat": False}, None),
|
||||
("clip.clear_track_path", {"type": 'T', "value": 'PRESS', "alt": True},
|
||||
{"properties": [("action", 'REMAINED'), ("clear_active", False)]}),
|
||||
("clip.clear_track_path", {"type": 'T', "value": 'PRESS', "shift": True},
|
||||
@ -2792,10 +2792,10 @@ def km_clip_graph_editor(params):
|
||||
{"properties": [("action", 'ALL'), ("clear_active", True)]}),
|
||||
("clip.graph_disable_markers", {"type": 'D', "value": 'PRESS', "shift": True},
|
||||
{"properties": [("action", 'TOGGLE')]}),
|
||||
("transform.translate", {"type": 'G', "value": 'PRESS'}, None),
|
||||
("transform.translate", {"type": 'G', "value": 'PRESS', "repeat": False}, None),
|
||||
("transform.translate", {"type": params.select_tweak, "value": 'ANY'}, None),
|
||||
("transform.resize", {"type": 'S', "value": 'PRESS'}, None),
|
||||
("transform.rotate", {"type": 'R', "value": 'PRESS'}, None),
|
||||
("transform.resize", {"type": 'S', "value": 'PRESS', "repeat": False}, None),
|
||||
("transform.rotate", {"type": 'R', "value": 'PRESS', "repeat": False}, None),
|
||||
])
|
||||
|
||||
if params.select_mouse == 'LEFTMOUSE' and not params.legacy:
|
||||
@ -3143,17 +3143,17 @@ def km_grease_pencil_stroke_edit_mode(params):
|
||||
# Move to layer
|
||||
op_menu("GPENCIL_MT_move_to_layer", {"type": 'M', "value": 'PRESS'}),
|
||||
# Transform tools
|
||||
("transform.translate", {"type": 'G', "value": 'PRESS'}, None),
|
||||
("transform.translate", {"type": 'G', "value": 'PRESS', "repeat": False}, None),
|
||||
("transform.translate", {"type": params.select_tweak, "value": 'ANY'}, None),
|
||||
("transform.rotate", {"type": 'R', "value": 'PRESS'}, None),
|
||||
("transform.resize", {"type": 'S', "value": 'PRESS'}, None),
|
||||
("transform.mirror", {"type": 'M', "value": 'PRESS', "ctrl": True}, None),
|
||||
("transform.bend", {"type": 'W', "value": 'PRESS', "shift": True}, None),
|
||||
("transform.tosphere", {"type": 'S', "value": 'PRESS', "shift": True, "alt": True}, None),
|
||||
("transform.shear", {"type": 'S', "value": 'PRESS', "shift": True, "ctrl": True, "alt": True}, None),
|
||||
("transform.transform", {"type": 'S', "value": 'PRESS', "alt": True},
|
||||
("transform.rotate", {"type": 'R', "value": 'PRESS', "repeat": False}, None),
|
||||
("transform.resize", {"type": 'S', "value": 'PRESS', "repeat": False}, None),
|
||||
("transform.mirror", {"type": 'M', "value": 'PRESS', "ctrl": True, "repeat": False}, None),
|
||||
("transform.bend", {"type": 'W', "value": 'PRESS', "shift": True, "repeat": False}, None),
|
||||
("transform.tosphere", {"type": 'S', "value": 'PRESS', "shift": True, "alt": True, "repeat": False}, None),
|
||||
("transform.shear", {"type": 'S', "value": 'PRESS', "shift": True, "ctrl": True, "alt": True, "repeat": False}, None),
|
||||
("transform.transform", {"type": 'S', "value": 'PRESS', "alt": True, "repeat": False},
|
||||
{"properties": [("mode", 'GPENCIL_SHRINKFATTEN')]}),
|
||||
("transform.transform", {"type": 'F', "value": 'PRESS', "shift": True},
|
||||
("transform.transform", {"type": 'F', "value": 'PRESS', "shift": True, "repeat": False},
|
||||
{"properties": [("mode", 'GPENCIL_OPACITY')]}),
|
||||
# Proportional editing.
|
||||
*_template_items_proportional_editing(connected=True),
|
||||
@ -3475,7 +3475,7 @@ def km_pose(params):
|
||||
("armature.layers_show_all", {"type": 'ACCENT_GRAVE', "value": 'PRESS', "ctrl": True}, None),
|
||||
("armature.armature_layers", {"type": 'M', "value": 'PRESS', "shift": True}, None),
|
||||
("pose.bone_layers", {"type": 'M', "value": 'PRESS'}, None),
|
||||
("transform.bbone_resize", {"type": 'S', "value": 'PRESS', "ctrl": True, "alt": True}, None),
|
||||
("transform.bbone_resize", {"type": 'S', "value": 'PRESS', "ctrl": True, "alt": True, "repeat": False}, None),
|
||||
("anim.keyframe_insert_menu", {"type": 'I', "value": 'PRESS'}, None),
|
||||
("anim.keyframe_delete_v3d", {"type": 'I', "value": 'PRESS', "alt": True}, None),
|
||||
("anim.keying_set_active_set", {"type": 'I', "value": 'PRESS', "shift": True, "ctrl": True, "alt": True}, None),
|
||||
@ -3621,10 +3621,10 @@ def km_paint_curve(params):
|
||||
("paintcurve.delete_point", {"type": 'DEL', "value": 'PRESS'}, None),
|
||||
("paintcurve.draw", {"type": 'RET', "value": 'PRESS'}, None),
|
||||
("paintcurve.draw", {"type": 'NUMPAD_ENTER', "value": 'PRESS'}, None),
|
||||
("transform.translate", {"type": 'G', "value": 'PRESS'}, None),
|
||||
("transform.translate", {"type": 'G', "value": 'PRESS', "repeat": False}, None),
|
||||
("transform.translate", {"type": params.select_tweak, "value": 'ANY'}, None),
|
||||
("transform.rotate", {"type": 'R', "value": 'PRESS'}, None),
|
||||
("transform.resize", {"type": 'S', "value": 'PRESS'}, None),
|
||||
("transform.rotate", {"type": 'R', "value": 'PRESS', "repeat": False}, None),
|
||||
("transform.resize", {"type": 'S', "value": 'PRESS', "repeat": False}, None),
|
||||
])
|
||||
|
||||
return keymap
|
||||
@ -3664,8 +3664,8 @@ def km_curve(params):
|
||||
("curve.dissolve_verts", {"type": 'X', "value": 'PRESS', "ctrl": True}, None),
|
||||
("curve.dissolve_verts", {"type": 'DEL', "value": 'PRESS', "ctrl": True}, None),
|
||||
("curve.tilt_clear", {"type": 'T', "value": 'PRESS', "alt": True}, None),
|
||||
("transform.tilt", {"type": 'T', "value": 'PRESS', "ctrl": True}, None),
|
||||
("transform.transform", {"type": 'S', "value": 'PRESS', "alt": True},
|
||||
("transform.tilt", {"type": 'T', "value": 'PRESS', "ctrl": True, "repeat": False}, None),
|
||||
("transform.transform", {"type": 'S', "value": 'PRESS', "alt": True, "repeat": False},
|
||||
{"properties": [("mode", 'CURVE_SHRINKFATTEN')]}),
|
||||
("curve.reveal", {"type": 'H', "value": 'PRESS', "alt": True}, None),
|
||||
("curve.hide", {"type": 'H', "value": 'PRESS'},
|
||||
@ -4053,7 +4053,7 @@ def km_mesh(params):
|
||||
{"properties": [("inside", True)]}),
|
||||
("view3d.edit_mesh_extrude_move_normal", {"type": 'E', "value": 'PRESS'}, None),
|
||||
op_menu("VIEW3D_MT_edit_mesh_extrude", {"type": 'E', "value": 'PRESS', "alt": True}),
|
||||
("transform.edge_crease", {"type": 'E', "value": 'PRESS', "shift": True}, None),
|
||||
("transform.edge_crease", {"type": 'E', "value": 'PRESS', "shift": True, "repeat": False}, None),
|
||||
("mesh.fill", {"type": 'F', "value": 'PRESS', "alt": True}, None),
|
||||
("mesh.quads_convert_to_tris", {"type": 'T', "value": 'PRESS', "ctrl": True},
|
||||
{"properties": [("quad_method", 'BEAUTY'), ("ngon_method", 'BEAUTY')]}),
|
||||
@ -4066,7 +4066,7 @@ def km_mesh(params):
|
||||
{"properties": [("MESH_OT_rip", [("use_fill", True), ],)]}),
|
||||
("mesh.rip_edge_move", {"type": 'D', "value": 'PRESS', "alt": True}, None),
|
||||
op_menu("VIEW3D_MT_edit_mesh_merge", {"type": 'M', "value": 'PRESS', "alt": True}),
|
||||
("transform.shrink_fatten", {"type": 'S', "value": 'PRESS', "alt": True}, None),
|
||||
("transform.shrink_fatten", {"type": 'S', "value": 'PRESS', "alt": True, "repeat": False}, None),
|
||||
("mesh.edge_face_add", {"type": 'F', "value": 'PRESS'}, None),
|
||||
("mesh.duplicate_move", {"type": 'D', "value": 'PRESS', "shift": True}, None),
|
||||
op_menu("VIEW3D_MT_mesh_add", {"type": 'A', "value": 'PRESS', "shift": True}),
|
||||
@ -4074,7 +4074,7 @@ def km_mesh(params):
|
||||
("mesh.split", {"type": 'Y', "value": 'PRESS'}, None),
|
||||
("mesh.vert_connect_path", {"type": 'J', "value": 'PRESS'}, None),
|
||||
("mesh.point_normals", {"type": 'L', "value": 'PRESS', "alt": True}, None),
|
||||
("transform.vert_slide", {"type": 'V', "value": 'PRESS', "shift": True}, None),
|
||||
("transform.vert_slide", {"type": 'V', "value": 'PRESS', "shift": True, "repeat": False}, None),
|
||||
("mesh.dupli_extrude_cursor", {"type": params.action_mouse, "value": 'CLICK', "ctrl": True},
|
||||
{"properties": [("rotate_source", True)]}),
|
||||
("mesh.dupli_extrude_cursor", {"type": params.action_mouse, "value": 'CLICK', "shift": True, "ctrl": True},
|
||||
@ -4196,10 +4196,10 @@ def km_armature(params):
|
||||
("armature.armature_layers", {"type": 'M', "value": 'PRESS', "shift": True}, None),
|
||||
("armature.bone_layers", {"type": 'M', "value": 'PRESS'}, None),
|
||||
# Special transforms.
|
||||
("transform.bbone_resize", {"type": 'S', "value": 'PRESS', "ctrl": True, "alt": True}, None),
|
||||
("transform.transform", {"type": 'S', "value": 'PRESS', "alt": True},
|
||||
("transform.bbone_resize", {"type": 'S', "value": 'PRESS', "ctrl": True, "alt": True, "repeat": False}, None),
|
||||
("transform.transform", {"type": 'S', "value": 'PRESS', "alt": True, "repeat": False},
|
||||
{"properties": [("mode", 'BONE_ENVELOPE')]}),
|
||||
("transform.transform", {"type": 'R', "value": 'PRESS', "ctrl": True},
|
||||
("transform.transform", {"type": 'R', "value": 'PRESS', "ctrl": True, "repeat": False},
|
||||
{"properties": [("mode", 'BONE_ROLL')]}),
|
||||
# Menus.
|
||||
*_template_items_context_menu("VIEW3D_MT_armature_context_menu", params.context_menu_event),
|
||||
@ -4503,23 +4503,23 @@ def km_transform_modal_map(_params):
|
||||
("CONFIRM", {"type": 'NUMPAD_ENTER', "value": 'PRESS', "any": True}, None),
|
||||
("CANCEL", {"type": 'RIGHTMOUSE', "value": 'PRESS', "any": True}, None),
|
||||
("CANCEL", {"type": 'ESC', "value": 'PRESS', "any": True}, None),
|
||||
("AXIS_X", {"type": 'X', "value": 'PRESS'}, None),
|
||||
("AXIS_Y", {"type": 'Y', "value": 'PRESS'}, None),
|
||||
("AXIS_Z", {"type": 'Z', "value": 'PRESS'}, None),
|
||||
("PLANE_X", {"type": 'X', "value": 'PRESS', "shift": True}, None),
|
||||
("PLANE_Y", {"type": 'Y', "value": 'PRESS', "shift": True}, None),
|
||||
("PLANE_Z", {"type": 'Z', "value": 'PRESS', "shift": True}, None),
|
||||
("CONS_OFF", {"type": 'C', "value": 'PRESS'}, None),
|
||||
("TRANSLATE", {"type": 'G', "value": 'PRESS'}, None),
|
||||
("ROTATE", {"type": 'R', "value": 'PRESS'}, None),
|
||||
("RESIZE", {"type": 'S', "value": 'PRESS'}, None),
|
||||
("SNAP_TOGGLE", {"type": 'TAB', "value": 'PRESS', "shift": True}, None),
|
||||
("AXIS_X", {"type": 'X', "value": 'PRESS', "repeat": False}, None),
|
||||
("AXIS_Y", {"type": 'Y', "value": 'PRESS', "repeat": False}, None),
|
||||
("AXIS_Z", {"type": 'Z', "value": 'PRESS', "repeat": False}, None),
|
||||
("PLANE_X", {"type": 'X', "value": 'PRESS', "shift": True, "repeat": False}, None),
|
||||
("PLANE_Y", {"type": 'Y', "value": 'PRESS', "shift": True, "repeat": False}, None),
|
||||
("PLANE_Z", {"type": 'Z', "value": 'PRESS', "shift": True, "repeat": False}, None),
|
||||
("CONS_OFF", {"type": 'C', "value": 'PRESS', "repeat": False}, None),
|
||||
("TRANSLATE", {"type": 'G', "value": 'PRESS', "repeat": False}, None),
|
||||
("ROTATE", {"type": 'R', "value": 'PRESS', "repeat": False}, None),
|
||||
("RESIZE", {"type": 'S', "value": 'PRESS', "repeat": False}, None),
|
||||
("SNAP_TOGGLE", {"type": 'TAB', "value": 'PRESS', "shift": True, "repeat": False}, None),
|
||||
("SNAP_INV_ON", {"type": 'LEFT_CTRL', "value": 'PRESS', "any": True}, None),
|
||||
("SNAP_INV_OFF", {"type": 'LEFT_CTRL', "value": 'RELEASE', "any": True}, None),
|
||||
("SNAP_INV_ON", {"type": 'RIGHT_CTRL', "value": 'PRESS', "any": True}, None),
|
||||
("SNAP_INV_OFF", {"type": 'RIGHT_CTRL', "value": 'RELEASE', "any": True}, None),
|
||||
("ADD_SNAP", {"type": 'A', "value": 'PRESS'}, None),
|
||||
("REMOVE_SNAP", {"type": 'A', "value": 'PRESS', "alt": True}, None),
|
||||
("ADD_SNAP", {"type": 'A', "value": 'PRESS', "repeat": False}, None),
|
||||
("REMOVE_SNAP", {"type": 'A', "value": 'PRESS', "alt": True, "repeat": False}, None),
|
||||
("PROPORTIONAL_SIZE_UP", {"type": 'PAGE_UP', "value": 'PRESS'}, None),
|
||||
("PROPORTIONAL_SIZE_DOWN", {"type": 'PAGE_DOWN', "value": 'PRESS'}, None),
|
||||
("PROPORTIONAL_SIZE_UP", {"type": 'PAGE_UP', "value": 'PRESS', "shift": True}, None),
|
||||
@ -4535,7 +4535,7 @@ def km_transform_modal_map(_params):
|
||||
("AUTOIK_CHAIN_LEN_DOWN", {"type": 'PAGE_DOWN', "value": 'PRESS', "shift": True}, None),
|
||||
("AUTOIK_CHAIN_LEN_UP", {"type": 'WHEELDOWNMOUSE', "value": 'PRESS', "shift": True}, None),
|
||||
("AUTOIK_CHAIN_LEN_DOWN", {"type": 'WHEELUPMOUSE', "value": 'PRESS', "shift": True}, None),
|
||||
("INSERTOFS_TOGGLE_DIR", {"type": 'T', "value": 'PRESS'}, None),
|
||||
("INSERTOFS_TOGGLE_DIR", {"type": 'T', "value": 'PRESS', "repeat": False}, None),
|
||||
])
|
||||
|
||||
return keymap
|
||||
|
@ -1187,10 +1187,22 @@ int transformEvent(TransInfo *t, const wmEvent *event)
|
||||
/* else do non-mapped events */
|
||||
else if (event->val == KM_PRESS) {
|
||||
switch (event->type) {
|
||||
case ESCKEY:
|
||||
case RIGHTMOUSE:
|
||||
t->state = TRANS_CANCEL;
|
||||
handled = true;
|
||||
break;
|
||||
|
||||
case SPACEKEY:
|
||||
case PADENTER:
|
||||
case RETKEY:
|
||||
if (event->is_repeat) {
|
||||
break;
|
||||
}
|
||||
t->state = TRANS_CONFIRM;
|
||||
handled = true;
|
||||
break;
|
||||
|
||||
/* enforce redraw of transform when modifiers are used */
|
||||
case LEFTSHIFTKEY:
|
||||
case RIGHTSHIFTKEY:
|
||||
@ -1198,12 +1210,6 @@ int transformEvent(TransInfo *t, const wmEvent *event)
|
||||
t->redraw |= TREDRAW_HARD;
|
||||
handled = true;
|
||||
break;
|
||||
|
||||
case SPACEKEY:
|
||||
t->state = TRANS_CONFIRM;
|
||||
handled = true;
|
||||
break;
|
||||
|
||||
case MIDDLEMOUSE:
|
||||
if ((t->flag & T_NO_CONSTRAINT) == 0) {
|
||||
/* exception for switching to dolly, or trackball, in camera view */
|
||||
@ -1240,16 +1246,10 @@ int transformEvent(TransInfo *t, const wmEvent *event)
|
||||
handled = true;
|
||||
}
|
||||
break;
|
||||
case ESCKEY:
|
||||
t->state = TRANS_CANCEL;
|
||||
handled = true;
|
||||
break;
|
||||
case PADENTER:
|
||||
case RETKEY:
|
||||
t->state = TRANS_CONFIRM;
|
||||
handled = true;
|
||||
break;
|
||||
case GKEY:
|
||||
if (event->is_repeat) {
|
||||
break;
|
||||
}
|
||||
/* only switch when... */
|
||||
if (ELEM(t->mode, TFM_ROTATION, TFM_RESIZE, TFM_TRACKBALL)) {
|
||||
restoreTransObjects(t);
|
||||
@ -1262,6 +1262,9 @@ int transformEvent(TransInfo *t, const wmEvent *event)
|
||||
}
|
||||
break;
|
||||
case SKEY:
|
||||
if (event->is_repeat) {
|
||||
break;
|
||||
}
|
||||
/* only switch when... */
|
||||
if (ELEM(t->mode, TFM_ROTATION, TFM_TRANSLATION, TFM_TRACKBALL)) {
|
||||
restoreTransObjects(t);
|
||||
@ -1274,6 +1277,9 @@ int transformEvent(TransInfo *t, const wmEvent *event)
|
||||
}
|
||||
break;
|
||||
case RKEY:
|
||||
if (event->is_repeat) {
|
||||
break;
|
||||
}
|
||||
/* only switch when... */
|
||||
if (!(t->options & CTX_TEXTURE)) {
|
||||
if (ELEM(t->mode, TFM_ROTATION, TFM_RESIZE, TFM_TRACKBALL, TFM_TRANSLATION)) {
|
||||
@ -1294,6 +1300,9 @@ int transformEvent(TransInfo *t, const wmEvent *event)
|
||||
}
|
||||
break;
|
||||
case CKEY:
|
||||
if (event->is_repeat) {
|
||||
break;
|
||||
}
|
||||
if (event->alt) {
|
||||
if (!(t->options & CTX_NO_PET)) {
|
||||
t->flag ^= T_PROP_CONNECTED;
|
||||
@ -1305,6 +1314,9 @@ int transformEvent(TransInfo *t, const wmEvent *event)
|
||||
}
|
||||
break;
|
||||
case OKEY:
|
||||
if (event->is_repeat) {
|
||||
break;
|
||||
}
|
||||
if (t->flag & T_PROP_EDIT && event->shift) {
|
||||
t->prop_mode = (t->prop_mode + 1) % PROP_MODE_MAX;
|
||||
calculatePropRatio(t);
|
||||
@ -1362,6 +1374,9 @@ int transformEvent(TransInfo *t, const wmEvent *event)
|
||||
}
|
||||
break;
|
||||
case NKEY:
|
||||
if (event->is_repeat) {
|
||||
break;
|
||||
}
|
||||
if (ELEM(t->mode, TFM_ROTATION)) {
|
||||
if ((t->flag & T_EDIT) && t->obedit_type == OB_MESH) {
|
||||
restoreTransObjects(t);
|
||||
|
Loading…
Reference in New Issue
Block a user