How to use press method in Airtest

Best Python code snippet using Airtest

3dsmax.py

Source:3dsmax.py Github

copy

Full Screen

1# Configuration 3dsmax2import bpy3wm = bpy.context.window_manager4kc = wm.keyconfigs.new('3dsmax')5# Map Window6km = kc.keymaps.new('Window', space_type='EMPTY', region_type='WINDOW', modal=False)7kmi = km.keymap_items.new('wm.window_duplicate', 'W', 'PRESS', ctrl=True, alt=True)8kmi = km.keymap_items.new('wm.read_homefile', 'N', 'PRESS', ctrl=True)9kmi = km.keymap_items.new('wm.save_homefile', 'U', 'PRESS', ctrl=True)10kmi = km.keymap_items.new('wm.call_menu', 'O', 'PRESS', shift=True, ctrl=True)11kmi.properties.name = 'INFO_MT_file_open_recent'12kmi = km.keymap_items.new('wm.open_mainfile', 'O', 'PRESS', ctrl=True)13kmi = km.keymap_items.new('wm.open_mainfile', 'F1', 'PRESS')14kmi = km.keymap_items.new('wm.link', 'O', 'PRESS', ctrl=True, alt=True)15kmi = km.keymap_items.new('wm.append', 'F1', 'PRESS', shift=True)16kmi.properties.link = False17kmi.properties.instance_groups = False18kmi = km.keymap_items.new('wm.save_mainfile', 'S', 'PRESS', ctrl=True)19kmi = km.keymap_items.new('wm.save_mainfile', 'W', 'PRESS', ctrl=True)20kmi = km.keymap_items.new('wm.save_as_mainfile', 'S', 'PRESS', shift=True, ctrl=True)21kmi = km.keymap_items.new('wm.save_as_mainfile', 'F2', 'PRESS')22kmi = km.keymap_items.new('wm.save_as_mainfile', 'S', 'PRESS', ctrl=True, alt=True)23kmi.properties.copy = True24kmi = km.keymap_items.new('wm.window_fullscreen_toggle', 'F11', 'PRESS', alt=True)25kmi = km.keymap_items.new('wm.quit_blender', 'Q', 'PRESS', ctrl=True)26kmi = km.keymap_items.new('wm.redraw_timer', 'T', 'PRESS', ctrl=True, alt=True)27kmi = km.keymap_items.new('wm.debug_menu', 'D', 'PRESS', ctrl=True, alt=True)28kmi = km.keymap_items.new('wm.search_menu', 'SPACE', 'PRESS')29kmi = km.keymap_items.new('wm.call_menu', 'NDOF_BUTTON_MENU', 'PRESS')30kmi.properties.name = 'USERPREF_MT_ndof_settings'31kmi = km.keymap_items.new('wm.context_set_enum', 'F2', 'PRESS', shift=True)32kmi.properties.data_path = 'area.type'33kmi.properties.value = 'LOGIC_EDITOR'34kmi = km.keymap_items.new('wm.context_set_enum', 'F3', 'PRESS', shift=True, ctrl=True)35kmi.properties.data_path = 'area.type'36kmi.properties.value = 'NODE_EDITOR'37kmi = km.keymap_items.new('wm.context_set_enum', 'F4', 'PRESS', shift=True)38kmi.properties.data_path = 'area.type'39kmi.properties.value = 'CONSOLE'40kmi = km.keymap_items.new('wm.context_set_enum', 'F5', 'PRESS', shift=True)41kmi.properties.data_path = 'area.type'42kmi.properties.value = 'VIEW_3D'43kmi = km.keymap_items.new('wm.context_set_enum', 'F6', 'PRESS', shift=True)44kmi.properties.data_path = 'area.type'45kmi.properties.value = 'GRAPH_EDITOR'46kmi = km.keymap_items.new('wm.context_set_enum', 'F7', 'PRESS', shift=True)47kmi.properties.data_path = 'area.type'48kmi.properties.value = 'PROPERTIES'49kmi = km.keymap_items.new('wm.context_set_enum', 'F8', 'PRESS', shift=True)50kmi.properties.data_path = 'area.type'51kmi.properties.value = 'SEQUENCE_EDITOR'52kmi = km.keymap_items.new('wm.context_set_enum', 'F9', 'PRESS', shift=True)53kmi.properties.data_path = 'area.type'54kmi.properties.value = 'OUTLINER'55kmi = km.keymap_items.new('wm.context_set_enum', 'F10', 'PRESS', shift=True, ctrl=True)56kmi.properties.data_path = 'area.type'57kmi.properties.value = 'IMAGE_EDITOR'58kmi = km.keymap_items.new('wm.context_set_enum', 'F11', 'PRESS', shift=True)59kmi.properties.data_path = 'area.type'60kmi.properties.value = 'TEXT_EDITOR'61kmi = km.keymap_items.new('wm.context_set_enum', 'F12', 'PRESS', shift=True)62kmi.properties.data_path = 'area.type'63kmi.properties.value = 'DOPESHEET_EDITOR'64kmi = km.keymap_items.new('wm.context_scale_float', 'NDOF_BUTTON_PLUS', 'PRESS')65kmi.properties.data_path = 'user_preferences.inputs.ndof_sensitivity'66kmi.properties.value = 1.167kmi = km.keymap_items.new('wm.context_scale_float', 'NDOF_BUTTON_MINUS', 'PRESS')68kmi.properties.data_path = 'user_preferences.inputs.ndof_sensitivity'69kmi.properties.value = 1.0 / 1.170kmi = km.keymap_items.new('wm.context_scale_float', 'NDOF_BUTTON_PLUS', 'PRESS', shift=True)71kmi.properties.data_path = 'user_preferences.inputs.ndof_sensitivity'72kmi.properties.value = 1.573kmi = km.keymap_items.new('wm.context_scale_float', 'NDOF_BUTTON_MINUS', 'PRESS', shift=True)74kmi.properties.data_path = 'user_preferences.inputs.ndof_sensitivity'75kmi.properties.value = 1.0 / 1.576kmi = km.keymap_items.new('info.reports_display_update', 'TIMER_REPORT', 'ANY', any=True)77# Map Screen78km = kc.keymaps.new('Screen', space_type='EMPTY', region_type='WINDOW', modal=False)79kmi = km.keymap_items.new('screen.animation_step', 'TIMER0', 'ANY', any=True)80kmi = km.keymap_items.new('screen.region_blend', 'TIMERREGION', 'ANY', any=True)81kmi = km.keymap_items.new('screen.screen_set', 'RIGHT_ARROW', 'PRESS', ctrl=True)82kmi.properties.delta = 183kmi = km.keymap_items.new('screen.screen_set', 'LEFT_ARROW', 'PRESS', ctrl=True)84kmi.properties.delta = -185kmi = km.keymap_items.new('screen.screen_full_area', 'UP_ARROW', 'PRESS', ctrl=True)86kmi = km.keymap_items.new('screen.screen_full_area', 'DOWN_ARROW', 'PRESS', ctrl=True)87kmi = km.keymap_items.new('screen.screen_full_area', 'SPACE', 'PRESS', shift=True)88kmi = km.keymap_items.new('screen.screenshot', 'F3', 'PRESS', ctrl=True)89kmi = km.keymap_items.new('screen.screencast', 'F3', 'PRESS', alt=True)90kmi = km.keymap_items.new('screen.region_quadview', 'W', 'PRESS', alt=True)91kmi = km.keymap_items.new('screen.repeat_history', 'F3', 'PRESS', shift=True)92kmi = km.keymap_items.new('screen.repeat_last', 'R', 'PRESS', shift=True)93kmi = km.keymap_items.new('screen.region_flip', 'F5', 'PRESS')94kmi = km.keymap_items.new('screen.redo_last', 'F6', 'PRESS')95kmi = km.keymap_items.new('script.reload', 'F8', 'PRESS')96kmi = km.keymap_items.new('file.execute', 'RET', 'PRESS')97kmi = km.keymap_items.new('file.execute', 'NUMPAD_ENTER', 'PRESS')98kmi = km.keymap_items.new('file.cancel', 'ESC', 'PRESS')99kmi = km.keymap_items.new('ed.undo', 'Z', 'PRESS', ctrl=True)100kmi = km.keymap_items.new('ed.redo', 'Z', 'PRESS', shift=True, ctrl=True)101kmi = km.keymap_items.new('ed.undo_history', 'Z', 'PRESS', ctrl=True, alt=True)102kmi = km.keymap_items.new('render.render', 'F10', 'PRESS')103kmi = km.keymap_items.new('render.render', 'F10', 'PRESS', ctrl=True)104kmi.properties.animation = True105kmi = km.keymap_items.new('render.view_cancel', 'ESC', 'PRESS')106kmi = km.keymap_items.new('render.view_show', 'F11', 'PRESS')107kmi = km.keymap_items.new('render.play_rendered_anim', 'F11', 'PRESS', ctrl=True)108kmi = km.keymap_items.new('screen.userpref_show', 'U', 'PRESS', ctrl=True, alt=True)109# Map Markers110km = kc.keymaps.new('Markers', space_type='EMPTY', region_type='WINDOW', modal=False)111kmi = km.keymap_items.new('marker.add', 'M', 'PRESS')112kmi = km.keymap_items.new('marker.move', 'EVT_TWEAK_S', 'ANY')113kmi = km.keymap_items.new('marker.duplicate', 'D', 'PRESS', shift=True)114kmi = km.keymap_items.new('marker.select', 'SELECTMOUSE', 'PRESS')115kmi.properties.extend = False116kmi = km.keymap_items.new('marker.select', 'SELECTMOUSE', 'PRESS', shift=True)117kmi.properties.extend = True118kmi = km.keymap_items.new('marker.select', 'SELECTMOUSE', 'PRESS', ctrl=True)119kmi.properties.extend = False120kmi.properties.camera = True121kmi = km.keymap_items.new('marker.select', 'SELECTMOUSE', 'PRESS', shift=True, ctrl=True)122kmi.properties.extend = True123kmi.properties.camera = True124kmi = km.keymap_items.new('marker.select_border', 'B', 'PRESS')125kmi = km.keymap_items.new('marker.select_all', 'A', 'PRESS', ctrl=True)126kmi = km.keymap_items.new('marker.delete', 'X', 'PRESS')127kmi = km.keymap_items.new('marker.rename', 'M', 'PRESS', ctrl=True)128kmi = km.keymap_items.new('marker.move', 'G', 'PRESS')129kmi = km.keymap_items.new('marker.camera_bind', 'B', 'PRESS', ctrl=True)130# Map Outliner131km = kc.keymaps.new('Outliner', space_type='OUTLINER', region_type='WINDOW', modal=False)132kmi = km.keymap_items.new('outliner.item_rename', 'LEFTMOUSE', 'DOUBLE_CLICK')133kmi = km.keymap_items.new('outliner.item_activate', 'LEFTMOUSE', 'CLICK')134kmi.properties.extend = False135kmi.properties.recursive = False136kmi = km.keymap_items.new('outliner.item_activate', 'LEFTMOUSE', 'CLICK', shift=True)137kmi.properties.extend = True138kmi.properties.recursive = False139kmi = km.keymap_items.new('outliner.item_activate', 'LEFTMOUSE', 'CLICK', ctrl=True)140kmi.properties.extend = False141kmi.properties.recursive = True142kmi = km.keymap_items.new('outliner.item_activate', 'LEFTMOUSE', 'CLICK', shift=True, ctrl=True)143kmi.properties.extend = True144kmi.properties.recursive = True145kmi = km.keymap_items.new('outliner.select_border', 'B', 'PRESS')146kmi = km.keymap_items.new('outliner.item_openclose', 'RET', 'PRESS')147kmi.properties.all = False148kmi = km.keymap_items.new('outliner.item_openclose', 'RET', 'PRESS', shift=True)149kmi.properties.all = True150kmi = km.keymap_items.new('outliner.item_rename', 'LEFTMOUSE', 'PRESS', ctrl=True)151kmi = km.keymap_items.new('outliner.operation', 'RIGHTMOUSE', 'PRESS')152kmi = km.keymap_items.new('outliner.show_hierarchy', 'HOME', 'PRESS')153kmi = km.keymap_items.new('outliner.show_active', 'PERIOD', 'PRESS')154kmi = km.keymap_items.new('outliner.show_active', 'NUMPAD_PERIOD', 'PRESS')155kmi = km.keymap_items.new('outliner.scroll_page', 'PAGE_DOWN', 'PRESS')156kmi = km.keymap_items.new('outliner.scroll_page', 'PAGE_UP', 'PRESS')157kmi.properties.up = True158kmi = km.keymap_items.new('outliner.show_one_level', 'NUMPAD_PLUS', 'PRESS')159kmi = km.keymap_items.new('outliner.show_one_level', 'NUMPAD_MINUS', 'PRESS')160kmi.properties.open = False161kmi = km.keymap_items.new('outliner.selected_toggle', 'A', 'PRESS', ctrl=True)162kmi = km.keymap_items.new('outliner.expanded_toggle', 'A', 'PRESS', shift=True)163kmi = km.keymap_items.new('outliner.renderability_toggle', 'R', 'PRESS')164kmi = km.keymap_items.new('outliner.selectability_toggle', 'S', 'PRESS')165kmi = km.keymap_items.new('outliner.visibility_toggle', 'V', 'PRESS')166kmi = km.keymap_items.new('outliner.keyingset_add_selected', 'K', 'PRESS')167kmi = km.keymap_items.new('outliner.keyingset_remove_selected', 'K', 'PRESS', alt=True)168kmi = km.keymap_items.new('anim.keyframe_insert', 'I', 'PRESS')169kmi = km.keymap_items.new('anim.keyframe_delete', 'I', 'PRESS', alt=True)170kmi = km.keymap_items.new('outliner.drivers_add_selected', 'D', 'PRESS')171kmi = km.keymap_items.new('outliner.drivers_delete_selected', 'D', 'PRESS', alt=True)172# Map 3D View Generic173km = kc.keymaps.new('3D View Generic', space_type='VIEW_3D', region_type='WINDOW', modal=False)174kmi = km.keymap_items.new('view3d.properties', 'F12', 'PRESS')175kmi = km.keymap_items.new('view3d.toolshelf', 'D', 'PRESS')176# Map Face Mask177km = kc.keymaps.new('Face Mask', space_type='EMPTY', region_type='WINDOW', modal=False)178kmi = km.keymap_items.new('paint.face_select_all', 'A', 'PRESS', ctrl=True)179kmi = km.keymap_items.new('paint.face_select_all', 'I', 'PRESS', ctrl=True)180kmi.properties.action = 'INVERT'181kmi = km.keymap_items.new('paint.face_select_hide', 'H', 'PRESS')182kmi.properties.unselected = False183kmi = km.keymap_items.new('paint.face_select_hide', 'H', 'PRESS', shift=True)184kmi.properties.unselected = True185kmi = km.keymap_items.new('paint.face_select_reveal', 'H', 'PRESS', alt=True)186kmi = km.keymap_items.new('paint.face_select_linked', 'L', 'PRESS', ctrl=True)187kmi = km.keymap_items.new('paint.face_select_linked_pick', 'L', 'PRESS')188# Map Weight Paint Vertex Selection189km = kc.keymaps.new('Weight Paint Vertex Selection', space_type='EMPTY', region_type='WINDOW', modal=False)190kmi = km.keymap_items.new('paint.vert_select_all', 'A', 'PRESS', ctrl=True)191kmi.properties.action = 'SELECT'192kmi = km.keymap_items.new('paint.vert_select_all', 'I', 'PRESS', ctrl=True)193kmi.properties.action = 'INVERT'194kmi = km.keymap_items.new('view3d.select_border', 'B', 'PRESS')195kmi = km.keymap_items.new('view3d.select_lasso', 'EVT_TWEAK_A', 'ANY', ctrl=True)196kmi.properties.deselect = False197kmi = km.keymap_items.new('view3d.select_lasso', 'EVT_TWEAK_A', 'ANY', shift=True, ctrl=True)198kmi.properties.deselect = True199kmi = km.keymap_items.new('view3d.select_circle', 'C', 'PRESS', alt=True)200# Map Pose201km = kc.keymaps.new('Pose', space_type='EMPTY', region_type='WINDOW', modal=False)202kmi = km.keymap_items.new('object.parent_set', 'P', 'PRESS', ctrl=True)203kmi = km.keymap_items.new('wm.call_menu', 'A', 'PRESS', shift=True)204kmi.properties.name = 'INFO_MT_add'205kmi = km.keymap_items.new('pose.hide', 'H', 'PRESS')206kmi.properties.unselected = False207kmi = km.keymap_items.new('pose.hide', 'H', 'PRESS', shift=True)208kmi.properties.unselected = True209kmi = km.keymap_items.new('pose.reveal', 'H', 'PRESS', alt=True)210kmi = km.keymap_items.new('wm.call_menu', 'A', 'PRESS', shift=True, ctrl=True)211kmi.properties.name = 'VIEW3D_MT_pose_apply'212kmi = km.keymap_items.new('pose.rot_clear', 'R', 'PRESS', alt=True)213kmi = km.keymap_items.new('pose.loc_clear', 'G', 'PRESS', alt=True)214kmi = km.keymap_items.new('pose.scale_clear', 'S', 'PRESS', alt=True)215kmi = km.keymap_items.new('pose.quaternions_flip', 'F', 'PRESS', alt=True)216kmi = km.keymap_items.new('pose.rotation_mode_set', 'R', 'PRESS', ctrl=True)217kmi = km.keymap_items.new('pose.copy', 'C', 'PRESS', ctrl=True)218kmi = km.keymap_items.new('pose.paste', 'V', 'PRESS', ctrl=True)219kmi.properties.flipped = False220kmi = km.keymap_items.new('pose.paste', 'V', 'PRESS', shift=True, ctrl=True)221kmi.properties.flipped = True222kmi = km.keymap_items.new('pose.select_all', 'LEFTMOUSE', 'CLICK')223kmi.properties.action = 'TOGGLE'224kmi = km.keymap_items.new('pose.select_all', 'I', 'PRESS', ctrl=True)225kmi.properties.action = 'INVERT'226kmi = km.keymap_items.new('pose.select_parent', 'P', 'PRESS', shift=True)227kmi = km.keymap_items.new('pose.select_hierarchy', 'LEFT_BRACKET', 'PRESS')228kmi.properties.direction = 'PARENT'229kmi.properties.extend = False230kmi = km.keymap_items.new('pose.select_hierarchy', 'LEFT_BRACKET', 'PRESS', shift=True)231kmi.properties.direction = 'PARENT'232kmi.properties.extend = True233kmi = km.keymap_items.new('pose.select_hierarchy', 'RIGHT_BRACKET', 'PRESS')234kmi.properties.direction = 'CHILD'235kmi.properties.extend = False236kmi = km.keymap_items.new('pose.select_hierarchy', 'RIGHT_BRACKET', 'PRESS', shift=True)237kmi.properties.direction = 'CHILD'238kmi.properties.extend = True239kmi = km.keymap_items.new('pose.select_linked', 'L', 'PRESS', alt=True)240kmi = km.keymap_items.new('pose.select_grouped', 'G', 'PRESS', shift=True)241kmi = km.keymap_items.new('pose.select_mirror', 'F', 'PRESS', shift=True)242kmi.properties.only_active = True243kmi = km.keymap_items.new('pose.constraint_add_with_targets', 'C', 'PRESS', shift=True, ctrl=True)244kmi = km.keymap_items.new('pose.constraints_clear', 'C', 'PRESS', ctrl=True, alt=True)245kmi = km.keymap_items.new('pose.ik_add', 'I', 'PRESS', shift=True)246kmi = km.keymap_items.new('pose.ik_clear', 'I', 'PRESS', ctrl=True, alt=True)247kmi = km.keymap_items.new('wm.call_menu', 'G', 'PRESS', ctrl=True)248kmi.properties.name = 'VIEW3D_MT_pose_group'249kmi = km.keymap_items.new('wm.call_menu', 'W', 'PRESS', shift=True)250kmi.properties.name = 'VIEW3D_MT_bone_options_toggle'251kmi = km.keymap_items.new('wm.call_menu', 'W', 'PRESS', shift=True, ctrl=True)252kmi.properties.name = 'VIEW3D_MT_bone_options_enable'253kmi = km.keymap_items.new('wm.call_menu', 'W', 'PRESS', alt=True)254kmi.properties.name = 'VIEW3D_MT_bone_options_disable'255kmi = km.keymap_items.new('armature.layers_show_all', 'ACCENT_GRAVE', 'PRESS', ctrl=True)256kmi = km.keymap_items.new('armature.armature_layers', 'M', 'PRESS', shift=True)257kmi = km.keymap_items.new('pose.bone_layers', 'M', 'PRESS')258kmi = km.keymap_items.new('transform.transform', 'S', 'PRESS', ctrl=True, alt=True)259kmi.properties.mode = 'BONE_SIZE'260kmi = km.keymap_items.new('anim.keyframe_insert_menu', 'I', 'PRESS')261kmi = km.keymap_items.new('anim.keyframe_delete_v3d', 'I', 'PRESS', alt=True)262kmi = km.keymap_items.new('anim.keying_set_active_set', 'I', 'PRESS', shift=True, ctrl=True, alt=True)263kmi = km.keymap_items.new('poselib.browse_interactive', 'L', 'PRESS', ctrl=True)264kmi = km.keymap_items.new('poselib.pose_add', 'L', 'PRESS', shift=True)265kmi = km.keymap_items.new('poselib.pose_remove', 'L', 'PRESS', ctrl=True, alt=True)266kmi = km.keymap_items.new('poselib.pose_rename', 'L', 'PRESS', shift=True, ctrl=True)267kmi = km.keymap_items.new('pose.push', 'E', 'PRESS', ctrl=True)268kmi = km.keymap_items.new('pose.relax', 'E', 'PRESS', alt=True)269kmi = km.keymap_items.new('pose.breakdown', 'E', 'PRESS', shift=True)270kmi = km.keymap_items.new('wm.call_menu', 'Q', 'PRESS')271kmi.properties.name = 'VIEW3D_MT_pose_specials'272# Map Object Mode273km = kc.keymaps.new('Object Mode', space_type='EMPTY', region_type='WINDOW', modal=False)274kmi = km.keymap_items.new('wm.context_cycle_enum', 'O', 'PRESS', shift=True)275kmi.properties.data_path = 'tool_settings.proportional_edit_falloff'276kmi = km.keymap_items.new('wm.context_toggle', 'O', 'PRESS')277kmi.properties.data_path = 'tool_settings.use_proportional_edit_objects'278kmi = km.keymap_items.new('view3d.game_start', 'P', 'PRESS', shift=True, ctrl=True, alt=True)279kmi = km.keymap_items.new('object.select_all', 'A', 'PRESS', ctrl=True)280kmi.properties.action = 'INVERT'281kmi = km.keymap_items.new('object.select_linked', 'L', 'PRESS', shift=True)282kmi = km.keymap_items.new('object.select_grouped', 'G', 'PRESS', shift=True)283kmi = km.keymap_items.new('object.select_mirror', 'M', 'PRESS', shift=True, ctrl=True)284kmi = km.keymap_items.new('object.select_hierarchy', 'LEFT_BRACKET', 'PRESS')285kmi.properties.direction = 'PARENT'286kmi.properties.extend = False287kmi = km.keymap_items.new('object.select_hierarchy', 'LEFT_BRACKET', 'PRESS', shift=True)288kmi.properties.direction = 'PARENT'289kmi.properties.extend = True290kmi = km.keymap_items.new('object.select_hierarchy', 'RIGHT_BRACKET', 'PRESS')291kmi.properties.direction = 'CHILD'292kmi.properties.extend = False293kmi = km.keymap_items.new('object.select_hierarchy', 'RIGHT_BRACKET', 'PRESS', shift=True)294kmi.properties.direction = 'CHILD'295kmi.properties.extend = True296kmi = km.keymap_items.new('object.parent_set', 'P', 'PRESS', ctrl=True)297kmi = km.keymap_items.new('object.parent_no_inverse_set', 'P', 'PRESS', shift=True, ctrl=True)298kmi = km.keymap_items.new('object.parent_clear', 'P', 'PRESS', alt=True)299kmi = km.keymap_items.new('object.track_set', 'T', 'PRESS', ctrl=True)300kmi = km.keymap_items.new('object.track_clear', 'T', 'PRESS', alt=True)301kmi = km.keymap_items.new('object.constraint_add_with_targets', 'C', 'PRESS', shift=True, ctrl=True)302kmi = km.keymap_items.new('object.constraints_clear', 'C', 'PRESS', ctrl=True, alt=True)303kmi = km.keymap_items.new('object.location_clear', 'G', 'PRESS', alt=True)304kmi = km.keymap_items.new('object.rotation_clear', 'R', 'PRESS', alt=True)305kmi = km.keymap_items.new('object.scale_clear', 'S', 'PRESS', alt=True)306kmi = km.keymap_items.new('object.origin_clear', 'O', 'PRESS', alt=True)307kmi = km.keymap_items.new('object.hide_view_clear', 'H', 'PRESS', alt=True)308kmi = km.keymap_items.new('object.hide_view_set', 'H', 'PRESS')309kmi.properties.unselected = False310kmi = km.keymap_items.new('object.hide_view_set', 'H', 'PRESS', shift=True)311kmi.properties.unselected = True312kmi = km.keymap_items.new('object.hide_render_clear', 'H', 'PRESS', ctrl=True, alt=True)313kmi = km.keymap_items.new('object.hide_render_set', 'H', 'PRESS', ctrl=True)314kmi = km.keymap_items.new('object.move_to_layer', 'M', 'PRESS')315kmi = km.keymap_items.new('object.delete', 'X', 'PRESS')316kmi.properties.use_global = False317kmi = km.keymap_items.new('object.delete', 'X', 'PRESS', shift=True)318kmi.properties.use_global = False319kmi = km.keymap_items.new('object.delete', 'DEL', 'PRESS')320kmi = km.keymap_items.new('object.delete', 'DEL', 'PRESS', shift=True)321kmi.properties.use_global = True322kmi = km.keymap_items.new('wm.call_menu', 'A', 'PRESS', shift=True)323kmi.properties.name = 'INFO_MT_add'324kmi = km.keymap_items.new('object.duplicates_make_real', 'A', 'PRESS', shift=True, ctrl=True)325kmi = km.keymap_items.new('wm.call_menu', 'A', 'PRESS', shift=True, ctrl=True)326kmi.properties.name = 'VIEW3D_MT_object_apply'327kmi = km.keymap_items.new('wm.call_menu', 'U', 'PRESS')328kmi.properties.name = 'VIEW3D_MT_make_single_user'329kmi = km.keymap_items.new('wm.call_menu', 'L', 'PRESS', ctrl=True)330kmi.properties.name = 'VIEW3D_MT_make_links'331kmi = km.keymap_items.new('object.duplicate_move', 'D', 'PRESS', shift=True)332kmi = km.keymap_items.new('object.duplicate_move_linked', 'D', 'PRESS', alt=True)333kmi = km.keymap_items.new('object.join', 'J', 'PRESS', ctrl=True)334kmi = km.keymap_items.new('object.convert', 'C', 'PRESS', ctrl=True, alt=True)335kmi = km.keymap_items.new('object.proxy_make', 'P', 'PRESS', ctrl=True, alt=True)336kmi = km.keymap_items.new('object.make_local', 'L', 'PRESS', alt=True)337kmi = km.keymap_items.new('anim.keyframe_insert_menu', 'I', 'PRESS')338kmi = km.keymap_items.new('anim.keyframe_delete_v3d', 'I', 'PRESS', alt=True)339kmi = km.keymap_items.new('anim.keying_set_active_set', 'I', 'PRESS', shift=True, ctrl=True, alt=True)340kmi = km.keymap_items.new('group.create', 'G', 'PRESS', ctrl=True)341kmi = km.keymap_items.new('group.objects_remove', 'G', 'PRESS', ctrl=True, alt=True)342kmi = km.keymap_items.new('group.objects_remove_all', 'G', 'PRESS', shift=True, ctrl=True, alt=True)343kmi = km.keymap_items.new('group.objects_add_active', 'G', 'PRESS', shift=True, ctrl=True)344kmi = km.keymap_items.new('group.objects_remove_active', 'G', 'PRESS', shift=True, alt=True)345kmi = km.keymap_items.new('rigidbody.objects_add', 'R', 'PRESS', ctrl=True)346kmi.properties.type = 'ACTIVE'347kmi = km.keymap_items.new('rigidbody.objects_add', 'R', 'PRESS', shift=True, ctrl=True)348kmi.properties.type = 'PASSIVE'349kmi = km.keymap_items.new('rigidbody.objects_remove', 'R', 'PRESS', ctrl=True, alt=True)350kmi = km.keymap_items.new('wm.call_menu', 'Q', 'PRESS')351kmi.properties.name = 'VIEW3D_MT_object_specials'352kmi = km.keymap_items.new('object.subdivision_set', 'ZERO', 'PRESS', ctrl=True)353kmi.properties.level = 0354kmi = km.keymap_items.new('object.subdivision_set', 'ONE', 'PRESS', ctrl=True)355kmi.properties.level = 1356kmi = km.keymap_items.new('object.subdivision_set', 'TWO', 'PRESS', ctrl=True)357kmi.properties.level = 2358kmi = km.keymap_items.new('object.subdivision_set', 'THREE', 'PRESS', ctrl=True)359kmi.properties.level = 3360kmi = km.keymap_items.new('object.subdivision_set', 'FOUR', 'PRESS', ctrl=True)361kmi.properties.level = 4362kmi = km.keymap_items.new('object.subdivision_set', 'FIVE', 'PRESS', ctrl=True)363kmi.properties.level = 5364# Map Particle365km = kc.keymaps.new('Particle', space_type='EMPTY', region_type='WINDOW', modal=False)366kmi = km.keymap_items.new('particle.select_all', 'A', 'PRESS', ctrl=True)367kmi.properties.action = 'TOGGLE'368kmi = km.keymap_items.new('particle.select_all', 'I', 'PRESS', ctrl=True)369kmi.properties.action = 'INVERT'370kmi = km.keymap_items.new('particle.select_more', 'NUMPAD_PLUS', 'PRESS', ctrl=True)371kmi = km.keymap_items.new('particle.select_less', 'NUMPAD_MINUS', 'PRESS', ctrl=True)372kmi = km.keymap_items.new('particle.select_linked', 'L', 'PRESS')373kmi.properties.deselect = False374kmi = km.keymap_items.new('particle.select_linked', 'L', 'PRESS', shift=True)375kmi.properties.deselect = True376kmi = km.keymap_items.new('particle.delete', 'X', 'PRESS')377kmi = km.keymap_items.new('particle.delete', 'DEL', 'PRESS')378kmi = km.keymap_items.new('particle.reveal', 'H', 'PRESS', alt=True)379kmi = km.keymap_items.new('particle.hide', 'H', 'PRESS')380kmi.properties.unselected = False381kmi = km.keymap_items.new('particle.hide', 'H', 'PRESS', shift=True)382kmi.properties.unselected = True383kmi = km.keymap_items.new('view3d.manipulator', 'LEFTMOUSE', 'PRESS', shift=True)384kmi.properties.release_confirm = True385kmi.properties.use_planar_constraint= True386kmi = km.keymap_items.new('view3d.manipulator', 'LEFTMOUSE', 'PRESS', shift=True)387kmi.properties.release_confirm = True388kmi.properties.use_accurate= True389kmi = km.keymap_items.new('view3d.manipulator', 'LEFTMOUSE', 'PRESS', any=True)390kmi.properties.release_confirm = True391kmi = km.keymap_items.new('particle.brush_edit', 'LEFTMOUSE', 'PRESS')392kmi = km.keymap_items.new('particle.brush_edit', 'LEFTMOUSE', 'PRESS', shift=True)393kmi = km.keymap_items.new('wm.radial_control', 'F', 'PRESS', ctrl=True)394kmi.properties.data_path_primary = 'tool_settings.particle_edit.brush.size'395kmi = km.keymap_items.new('wm.radial_control', 'F', 'PRESS', shift=True)396kmi.properties.data_path_primary = 'tool_settings.particle_edit.brush.strength'397kmi = km.keymap_items.new('wm.call_menu', 'W', 'PRESS')398kmi.properties.name = 'VIEW3D_MT_particle_specials'399kmi = km.keymap_items.new('particle.weight_set', 'K', 'PRESS', shift=True)400kmi = km.keymap_items.new('wm.context_cycle_enum', 'O', 'PRESS', shift=True)401kmi.properties.data_path = 'tool_settings.proportional_edit_falloff'402kmi = km.keymap_items.new('wm.context_toggle_enum', 'O', 'PRESS')403kmi.properties.data_path = 'tool_settings.proportional_edit'404kmi.properties.value_1 = 'DISABLED'405kmi.properties.value_2 = 'ENABLED'406# Map 3D View407km = kc.keymaps.new('3D View', space_type='VIEW_3D', region_type='WINDOW', modal=False)408kmi = km.keymap_items.new('view3d.manipulator', 'LEFTMOUSE', 'PRESS', shift=True)409kmi.properties.release_confirm = True410kmi.properties.use_planar_constraint= True411kmi = km.keymap_items.new('view3d.manipulator', 'LEFTMOUSE', 'PRESS', shift=True)412kmi.properties.release_confirm = True413kmi.properties.use_accurate= True414kmi = km.keymap_items.new('view3d.manipulator', 'LEFTMOUSE', 'PRESS', any=True)415kmi.properties.release_confirm = True416kmi = km.keymap_items.new('view3d.cursor3d', 'ACTIONMOUSE', 'PRESS')417kmi = km.keymap_items.new('view3d.rotate', 'MIDDLEMOUSE', 'PRESS', alt=True)418kmi = km.keymap_items.new('view3d.move', 'MIDDLEMOUSE', 'PRESS')419kmi = km.keymap_items.new('view3d.zoom', 'MIDDLEMOUSE', 'PRESS', ctrl=True)420kmi = km.keymap_items.new('view3d.dolly', 'MIDDLEMOUSE', 'PRESS', shift=True, ctrl=True)421kmi = km.keymap_items.new('view3d.view_selected', 'NUMPAD_PERIOD', 'PRESS', ctrl=True)422kmi.properties.use_all_regions = True423kmi = km.keymap_items.new('view3d.view_selected', 'Z', 'PRESS')424kmi.properties.use_all_regions = False425kmi = km.keymap_items.new('view3d.view_lock_to_active', 'NUMPAD_PERIOD', 'PRESS', shift=True)426kmi = km.keymap_items.new('view3d.view_lock_clear', 'NUMPAD_PERIOD', 'PRESS', alt=True)427kmi = km.keymap_items.new('view3d.fly', 'F', 'PRESS', shift=True)428kmi = km.keymap_items.new('view3d.smoothview', 'TIMER1', 'ANY', any=True)429kmi = km.keymap_items.new('view3d.rotate', 'TRACKPADPAN', 'ANY')430kmi = km.keymap_items.new('view3d.rotate', 'MOUSEROTATE', 'ANY')431kmi = km.keymap_items.new('view3d.move', 'TRACKPADPAN', 'ANY', shift=True)432kmi = km.keymap_items.new('view3d.zoom', 'TRACKPADZOOM', 'ANY')433kmi = km.keymap_items.new('view3d.zoom', 'TRACKPADPAN', 'ANY', ctrl=True)434kmi = km.keymap_items.new('view3d.zoom', 'NUMPAD_PLUS', 'PRESS')435kmi.properties.delta = 1436kmi = km.keymap_items.new('view3d.zoom', 'NUMPAD_MINUS', 'PRESS')437kmi.properties.delta = -1438kmi = km.keymap_items.new('view3d.zoom', 'EQUAL', 'PRESS', ctrl=True)439kmi.properties.delta = 1440kmi = km.keymap_items.new('view3d.zoom', 'MINUS', 'PRESS', ctrl=True)441kmi.properties.delta = -1442kmi = km.keymap_items.new('view3d.zoom', 'WHEELINMOUSE', 'PRESS')443kmi.properties.delta = 1444kmi = km.keymap_items.new('view3d.zoom', 'WHEELOUTMOUSE', 'PRESS')445kmi.properties.delta = -1446kmi = km.keymap_items.new('view3d.zoom_camera_1_to_1', 'NUMPAD_ENTER', 'PRESS', shift=True)447kmi = km.keymap_items.new('view3d.view_center_camera', 'HOME', 'PRESS')448kmi = km.keymap_items.new('view3d.view_center_cursor', 'HOME', 'PRESS', alt=True)449kmi = km.keymap_items.new('view3d.view_all', 'HOME', 'PRESS')450kmi.properties.center = False451kmi = km.keymap_items.new('view3d.view_all', 'HOME', 'PRESS', ctrl=True)452kmi.properties.use_all_regions = True453kmi.properties.center = False454kmi = km.keymap_items.new('view3d.view_all', 'C', 'PRESS', shift=True)455kmi.properties.center = True456kmi = km.keymap_items.new('view3d.viewnumpad', 'C', 'PRESS')457kmi.properties.type = 'CAMERA'458kmi = km.keymap_items.new('view3d.viewnumpad', 'F', 'PRESS')459kmi.properties.type = 'FRONT'460kmi = km.keymap_items.new('view3d.view_orbit', 'NUMPAD_2', 'PRESS')461kmi.properties.type = 'ORBITDOWN'462kmi = km.keymap_items.new('view3d.viewnumpad', 'NUMPAD_3', 'PRESS')463kmi.properties.type = 'RIGHT'464kmi = km.keymap_items.new('view3d.view_orbit', 'NUMPAD_4', 'PRESS')465kmi.properties.type = 'ORBITLEFT'466kmi = km.keymap_items.new('view3d.view_persportho', 'P', 'PRESS')467kmi = km.keymap_items.new('view3d.view_orbit', 'NUMPAD_6', 'PRESS')468kmi.properties.type = 'ORBITRIGHT'469kmi = km.keymap_items.new('view3d.viewnumpad', 'T', 'PRESS')470kmi.properties.type = 'TOP'471kmi = km.keymap_items.new('view3d.view_orbit', 'NUMPAD_8', 'PRESS')472kmi.properties.type = 'ORBITUP'473kmi = km.keymap_items.new('view3d.viewnumpad', 'NUMPAD_1', 'PRESS', ctrl=True)474kmi.properties.type = 'BACK'475kmi = km.keymap_items.new('view3d.viewnumpad', 'L', 'PRESS')476kmi.properties.type = 'LEFT'477kmi = km.keymap_items.new('view3d.viewnumpad', 'B', 'PRESS')478kmi.properties.type = 'BOTTOM'479kmi = km.keymap_items.new('view3d.view_pan', 'NUMPAD_2', 'PRESS', ctrl=True)480kmi.properties.type = 'PANDOWN'481kmi = km.keymap_items.new('view3d.view_pan', 'NUMPAD_4', 'PRESS', ctrl=True)482kmi.properties.type = 'PANLEFT'483kmi = km.keymap_items.new('view3d.view_pan', 'NUMPAD_6', 'PRESS', ctrl=True)484kmi.properties.type = 'PANRIGHT'485kmi = km.keymap_items.new('view3d.view_pan', 'NUMPAD_8', 'PRESS', ctrl=True)486kmi.properties.type = 'PANUP'487kmi = km.keymap_items.new('view3d.view_pan', 'WHEELUPMOUSE', 'PRESS', ctrl=True)488kmi.properties.type = 'PANRIGHT'489kmi = km.keymap_items.new('view3d.view_pan', 'WHEELDOWNMOUSE', 'PRESS', ctrl=True)490kmi.properties.type = 'PANLEFT'491kmi = km.keymap_items.new('view3d.view_pan', 'WHEELUPMOUSE', 'PRESS', shift=True)492kmi.properties.type = 'PANUP'493kmi = km.keymap_items.new('view3d.view_pan', 'WHEELDOWNMOUSE', 'PRESS', shift=True)494kmi.properties.type = 'PANDOWN'495kmi = km.keymap_items.new('view3d.view_orbit', 'WHEELUPMOUSE', 'PRESS', ctrl=True, alt=True)496kmi.properties.type = 'ORBITLEFT'497kmi = km.keymap_items.new('view3d.view_orbit', 'WHEELDOWNMOUSE', 'PRESS', ctrl=True, alt=True)498kmi.properties.type = 'ORBITRIGHT'499kmi = km.keymap_items.new('view3d.view_orbit', 'WHEELUPMOUSE', 'PRESS', shift=True, alt=True)500kmi.properties.type = 'ORBITUP'501kmi = km.keymap_items.new('view3d.view_orbit', 'WHEELDOWNMOUSE', 'PRESS', shift=True, alt=True)502kmi.properties.type = 'ORBITDOWN'503kmi = km.keymap_items.new('view3d.viewnumpad', 'NUMPAD_1', 'PRESS', shift=True)504kmi.properties.type = 'FRONT'505kmi.properties.align_active = True506kmi = km.keymap_items.new('view3d.viewnumpad', 'NUMPAD_3', 'PRESS', shift=True)507kmi.properties.type = 'RIGHT'508kmi.properties.align_active = True509kmi = km.keymap_items.new('view3d.viewnumpad', 'NUMPAD_7', 'PRESS', shift=True)510kmi.properties.type = 'TOP'511kmi.properties.align_active = True512kmi = km.keymap_items.new('view3d.viewnumpad', 'NUMPAD_1', 'PRESS', shift=True, ctrl=True)513kmi.properties.type = 'BACK'514kmi.properties.align_active = True515kmi = km.keymap_items.new('view3d.viewnumpad', 'NUMPAD_3', 'PRESS', shift=True, ctrl=True)516kmi.properties.type = 'LEFT'517kmi.properties.align_active = True518kmi = km.keymap_items.new('view3d.viewnumpad', 'NUMPAD_7', 'PRESS', shift=True, ctrl=True)519kmi.properties.type = 'BOTTOM'520kmi.properties.align_active = True521kmi = km.keymap_items.new('view3d.localview', 'NUMPAD_SLASH', 'PRESS')522kmi = km.keymap_items.new('view3d.ndof_orbit_zoom', 'NDOF_MOTION', 'ANY')523kmi = km.keymap_items.new('view3d.ndof_orbit', 'NDOF_MOTION', 'ANY', ctrl=True)524kmi = km.keymap_items.new('view3d.ndof_pan', 'NDOF_MOTION', 'ANY', shift=True)525kmi = km.keymap_items.new('view3d.ndof_all', 'NDOF_MOTION', 'ANY', shift=True, ctrl=True)526kmi = km.keymap_items.new('view3d.view_selected', 'NDOF_BUTTON_FIT', 'PRESS')527kmi = km.keymap_items.new('view3d.viewnumpad', 'NDOF_BUTTON_FRONT', 'PRESS')528kmi.properties.type = 'FRONT'529kmi = km.keymap_items.new('view3d.viewnumpad', 'NDOF_BUTTON_BACK', 'PRESS')530kmi.properties.type = 'BACK'531kmi = km.keymap_items.new('view3d.viewnumpad', 'NDOF_BUTTON_LEFT', 'PRESS')532kmi.properties.type = 'LEFT'533kmi = km.keymap_items.new('view3d.viewnumpad', 'NDOF_BUTTON_RIGHT', 'PRESS')534kmi.properties.type = 'RIGHT'535kmi = km.keymap_items.new('view3d.viewnumpad', 'NDOF_BUTTON_TOP', 'PRESS')536kmi.properties.type = 'TOP'537kmi = km.keymap_items.new('view3d.viewnumpad', 'NDOF_BUTTON_BOTTOM', 'PRESS')538kmi.properties.type = 'BOTTOM'539kmi = km.keymap_items.new('view3d.viewnumpad', 'NDOF_BUTTON_FRONT', 'PRESS', shift=True)540kmi.properties.type = 'FRONT'541kmi.properties.align_active = True542kmi = km.keymap_items.new('view3d.viewnumpad', 'NDOF_BUTTON_RIGHT', 'PRESS', shift=True)543kmi.properties.type = 'RIGHT'544kmi.properties.align_active = True545kmi = km.keymap_items.new('view3d.viewnumpad', 'NDOF_BUTTON_TOP', 'PRESS', shift=True)546kmi.properties.type = 'TOP'547kmi.properties.align_active = True548kmi = km.keymap_items.new('view3d.layers', 'ACCENT_GRAVE', 'PRESS')549kmi.properties.nr = 0550kmi = km.keymap_items.new('view3d.layers', 'ONE', 'PRESS', any=True)551kmi.properties.nr = 1552kmi = km.keymap_items.new('view3d.layers', 'TWO', 'PRESS', any=True)553kmi.properties.nr = 2554kmi = km.keymap_items.new('view3d.layers', 'THREE', 'PRESS', any=True)555kmi.properties.nr = 3556kmi = km.keymap_items.new('view3d.layers', 'FOUR', 'PRESS', any=True)557kmi.properties.nr = 4558kmi = km.keymap_items.new('view3d.layers', 'FIVE', 'PRESS', any=True)559kmi.properties.nr = 5560kmi = km.keymap_items.new('view3d.layers', 'SIX', 'PRESS', any=True)561kmi.properties.nr = 6562kmi = km.keymap_items.new('view3d.layers', 'SEVEN', 'PRESS', any=True)563kmi.properties.nr = 7564kmi = km.keymap_items.new('view3d.layers', 'EIGHT', 'PRESS', any=True)565kmi.properties.nr = 8566kmi = km.keymap_items.new('view3d.layers', 'NINE', 'PRESS', any=True)567kmi.properties.nr = 9568kmi = km.keymap_items.new('view3d.layers', 'ZERO', 'PRESS', any=True)569kmi.properties.nr = 10570kmi = km.keymap_items.new('wm.context_toggle_enum', 'F3', 'PRESS')571kmi.properties.data_path = 'space_data.viewport_shade'572kmi.properties.value_1 = 'SOLID'573kmi.properties.value_2 = 'WIREFRAME'574kmi = km.keymap_items.new('wm.context_toggle_enum', 'Z', 'PRESS', alt=True)575kmi.properties.data_path = 'space_data.viewport_shade'576kmi.properties.value_1 = 'SOLID'577kmi.properties.value_2 = 'TEXTURED'578kmi = km.keymap_items.new('view3d.select_or_deselect_all', 'SELECTMOUSE', 'CLICK')579kmi.properties.extend = False580kmi.properties.deselect = False581kmi.properties.toggle = False582kmi.properties.center = False583kmi.properties.enumerate = False584kmi.properties.object = False585kmi = km.keymap_items.new('view3d.select_or_deselect_all', 'SELECTMOUSE', 'CLICK', ctrl=True)586kmi.properties.extend = False587kmi.properties.deselect = False588kmi.properties.toggle = True589kmi.properties.center = False590kmi.properties.enumerate = False591kmi.properties.object = False592kmi = km.keymap_items.new('view3d.select_or_deselect_all', 'SELECTMOUSE', 'CLICK', shift=True)593kmi.properties.extend = False594kmi.properties.deselect = False595kmi.properties.toggle = False596kmi.properties.center = True597kmi.properties.enumerate = False598kmi.properties.object = True599kmi = km.keymap_items.new('view3d.select_or_deselect_all', 'SELECTMOUSE', 'CLICK', alt=True)600kmi.properties.extend = False601kmi.properties.deselect = False602kmi.properties.toggle = False603kmi.properties.center = False604kmi.properties.enumerate = True605kmi.properties.object = False606kmi = km.keymap_items.new('view3d.select_or_deselect_all', 'SELECTMOUSE', 'CLICK', shift=True, ctrl=True)607kmi.properties.extend = True608kmi.properties.deselect = False609kmi.properties.toggle = True610kmi.properties.center = True611kmi.properties.enumerate = False612kmi.properties.object = False613kmi = km.keymap_items.new('view3d.select_or_deselect_all', 'SELECTMOUSE', 'CLICK', ctrl=True, alt=True)614kmi.properties.extend = False615kmi.properties.deselect = False616kmi.properties.toggle = False617kmi.properties.center = True618kmi.properties.enumerate = True619kmi.properties.object = False620kmi = km.keymap_items.new('view3d.select_or_deselect_all', 'SELECTMOUSE', 'CLICK', shift=True, alt=True)621kmi.properties.extend = False622kmi.properties.deselect = False623kmi.properties.toggle = True624kmi.properties.center = False625kmi.properties.enumerate = True626kmi.properties.object = False627kmi = km.keymap_items.new('view3d.select_or_deselect_all', 'SELECTMOUSE', 'CLICK', shift=True, ctrl=True, alt=True)628kmi.properties.extend = False629kmi.properties.deselect = False630kmi.properties.toggle = True631kmi.properties.center = True632kmi.properties.enumerate = True633kmi.properties.object = False634kmi = km.keymap_items.new('view3d.select_border', 'EVT_TWEAK_L', 'ANY')635kmi.properties.extend = False636kmi = km.keymap_items.new('view3d.select_lasso', 'EVT_TWEAK_A', 'ANY', ctrl=True)637kmi.properties.deselect = False638kmi = km.keymap_items.new('view3d.select_lasso', 'EVT_TWEAK_A', 'ANY', shift=True, ctrl=True)639kmi.properties.deselect = True640kmi = km.keymap_items.new('view3d.select_circle', 'C', 'PRESS', alt=True)641kmi = km.keymap_items.new('view3d.clip_border', 'B', 'PRESS', alt=True)642kmi = km.keymap_items.new('view3d.zoom_border', 'B', 'PRESS', shift=True)643kmi = km.keymap_items.new('view3d.render_border', 'B', 'PRESS', shift=True)644kmi.properties.camera_only = True645kmi = km.keymap_items.new('view3d.render_border', 'B', 'PRESS', ctrl=True)646kmi.properties.camera_only = False647kmi = km.keymap_items.new('view3d.clear_render_border', 'B', 'PRESS', ctrl=True, alt=True)648kmi = km.keymap_items.new('view3d.camera_to_view', 'NUMPAD_0', 'PRESS', ctrl=True, alt=True)649kmi = km.keymap_items.new('view3d.object_as_camera', 'NUMPAD_0', 'PRESS', ctrl=True)650kmi = km.keymap_items.new('wm.call_menu', 'S', 'PRESS', shift=True)651kmi.properties.name = 'VIEW3D_MT_snap'652kmi = km.keymap_items.new('view3d.copybuffer', 'C', 'PRESS', ctrl=True)653kmi = km.keymap_items.new('view3d.pastebuffer', 'V', 'PRESS', ctrl=True)654kmi = km.keymap_items.new('wm.context_set_enum', 'COMMA', 'PRESS')655kmi.properties.data_path = 'space_data.pivot_point'656kmi.properties.value = 'BOUNDING_BOX_CENTER'657kmi = km.keymap_items.new('wm.context_set_enum', 'COMMA', 'PRESS', ctrl=True)658kmi.properties.data_path = 'space_data.pivot_point'659kmi.properties.value = 'MEDIAN_POINT'660kmi = km.keymap_items.new('wm.context_toggle', 'COMMA', 'PRESS', alt=True)661kmi.properties.data_path = 'space_data.use_pivot_point_align'662kmi = km.keymap_items.new('wm.context_toggle', 'SPACE', 'PRESS', ctrl=True)663kmi.properties.data_path = 'space_data.show_manipulator'664kmi = km.keymap_items.new('wm.context_set_enum', 'PERIOD', 'PRESS')665kmi.properties.data_path = 'space_data.pivot_point'666kmi.properties.value = 'CURSOR'667kmi = km.keymap_items.new('wm.context_set_enum', 'PERIOD', 'PRESS', ctrl=True)668kmi.properties.data_path = 'space_data.pivot_point'669kmi.properties.value = 'INDIVIDUAL_ORIGINS'670kmi = km.keymap_items.new('wm.context_set_enum', 'PERIOD', 'PRESS', alt=True)671kmi.properties.data_path = 'space_data.pivot_point'672kmi.properties.value = 'ACTIVE_ELEMENT'673kmi = km.keymap_items.new('transform.translate', 'W', 'PRESS', shift=True)674kmi = km.keymap_items.new('transform.translate', 'EVT_TWEAK_S', 'ANY')675kmi = km.keymap_items.new('transform.rotate', 'E', 'PRESS', shift=True)676kmi = km.keymap_items.new('transform.resize', 'R', 'PRESS', shift=True)677kmi = km.keymap_items.new('transform.bend', 'Q', 'PRESS', shift=True)678kmi = km.keymap_items.new('transform.tosphere', 'S', 'PRESS', shift=True, alt=True)679kmi = km.keymap_items.new('transform.shear', 'S', 'PRESS', shift=True, ctrl=True, alt=True)680kmi = km.keymap_items.new('transform.select_orientation', 'SPACE', 'PRESS', alt=True)681kmi = km.keymap_items.new('transform.create_orientation', 'SPACE', 'PRESS', ctrl=True, alt=True)682kmi.properties.use = True683kmi = km.keymap_items.new('transform.mirror', 'M', 'PRESS', ctrl=True)684kmi = km.keymap_items.new('wm.context_toggle', 'TAB', 'PRESS', shift=True)685kmi.properties.data_path = 'tool_settings.use_snap'686kmi = km.keymap_items.new('wm.context_menu_enum', 'TAB', 'PRESS', shift=True, ctrl=True)687kmi.properties.data_path = 'tool_settings.snap_element'688kmi = km.keymap_items.new('transform.translate', 'T', 'PRESS', shift=True)689kmi.properties.texture_space = True690kmi = km.keymap_items.new('transform.resize', 'T', 'PRESS', shift=True, alt=True)691kmi.properties.texture_space = True692kmi = km.keymap_items.new('transform.skin_resize', 'A', 'PRESS', shift=True, ctrl=True)693kmi = km.keymap_items.new('view3d.enable_manipulator', 'W', 'PRESS')694kmi.properties.translate = True695kmi = km.keymap_items.new('view3d.enable_manipulator', 'E', 'PRESS')696kmi.properties.rotate = True697kmi = km.keymap_items.new('view3d.enable_manipulator', 'R', 'PRESS')698kmi.properties.scale = True699kmi = km.keymap_items.new('wm.context_toggle', 'S', 'PRESS')700kmi.properties.data_path = 'tool_settings.use_snap'701kmi = km.keymap_items.new('wm.context_toggle_enum', 'A', 'PRESS')702kmi.properties.data_path = 'tool_settings.snap_element'703kmi.properties.value_1 = 'VERTEX'704kmi.properties.value_2 = 'INCREMENT'705kmi = km.keymap_items.new('view3d.select_border', 'EVT_TWEAK_L', 'ANY', ctrl=True)706kmi = km.keymap_items.new('wm.context_toggle', 'G', 'PRESS')707kmi.properties.data_path = 'space_data.show_floor'708# Map Animation Channels709km = kc.keymaps.new('Animation Channels', space_type='EMPTY', region_type='WINDOW', modal=False)710kmi = km.keymap_items.new('anim.channels_click', 'LEFTMOUSE', 'PRESS')711kmi.properties.extend = False712kmi = km.keymap_items.new('anim.channels_click', 'LEFTMOUSE', 'PRESS', shift=True)713kmi.properties.extend = True714kmi = km.keymap_items.new('anim.channels_click', 'LEFTMOUSE', 'PRESS', shift=True, ctrl=True)715kmi.properties.children_only = True716kmi = km.keymap_items.new('anim.channels_rename', 'LEFTMOUSE', 'PRESS', ctrl=True)717kmi = km.keymap_items.new('anim.channels_select_all_toggle', 'A', 'PRESS', ctrl=True)718kmi = km.keymap_items.new('anim.channels_select_all_toggle', 'I', 'PRESS', ctrl=True)719kmi.properties.invert = True720kmi = km.keymap_items.new('anim.channels_select_border', 'B', 'PRESS')721kmi = km.keymap_items.new('anim.channels_select_border', 'EVT_TWEAK_L', 'ANY')722kmi = km.keymap_items.new('anim.channels_delete', 'X', 'PRESS')723kmi = km.keymap_items.new('anim.channels_delete', 'DEL', 'PRESS')724kmi = km.keymap_items.new('anim.channels_setting_toggle', 'W', 'PRESS', shift=True)725kmi = km.keymap_items.new('anim.channels_setting_enable', 'W', 'PRESS', shift=True, ctrl=True)726kmi = km.keymap_items.new('anim.channels_setting_disable', 'W', 'PRESS', alt=True)727kmi = km.keymap_items.new('anim.channels_editable_toggle', 'TAB', 'PRESS')728kmi = km.keymap_items.new('anim.channels_expand', 'NUMPAD_PLUS', 'PRESS')729kmi = km.keymap_items.new('anim.channels_collapse', 'NUMPAD_MINUS', 'PRESS')730kmi = km.keymap_items.new('anim.channels_expand', 'NUMPAD_PLUS', 'PRESS', ctrl=True)731kmi.properties.all = False732kmi = km.keymap_items.new('anim.channels_collapse', 'NUMPAD_MINUS', 'PRESS', ctrl=True)733kmi.properties.all = False734kmi = km.keymap_items.new('anim.channels_move', 'PAGE_UP', 'PRESS')735kmi.properties.direction = 'UP'736kmi = km.keymap_items.new('anim.channels_move', 'PAGE_DOWN', 'PRESS')737kmi.properties.direction = 'DOWN'738kmi = km.keymap_items.new('anim.channels_move', 'PAGE_UP', 'PRESS', shift=True)739kmi.properties.direction = 'TOP'740kmi = km.keymap_items.new('anim.channels_move', 'PAGE_DOWN', 'PRESS', shift=True)741kmi.properties.direction = 'BOTTOM'742kmi = km.keymap_items.new('anim.channels_group', 'G', 'PRESS', ctrl=True)743kmi = km.keymap_items.new('anim.channels_ungroup', 'G', 'PRESS', alt=True)744# Map UV Editor745km = kc.keymaps.new('UV Editor', space_type='EMPTY', region_type='WINDOW', modal=False)746kmi = km.keymap_items.new('wm.context_toggle', 'Q', 'PRESS')747kmi.properties.data_path = 'tool_settings.use_uv_sculpt'748kmi = km.keymap_items.new('uv.mark_seam', 'E', 'PRESS', ctrl=True)749kmi = km.keymap_items.new('uv.select', 'SELECTMOUSE', 'PRESS')750kmi.properties.extend = False751kmi = km.keymap_items.new('uv.select', 'SELECTMOUSE', 'PRESS', shift=True)752kmi.properties.extend = True753kmi = km.keymap_items.new('uv.select_loop', 'SELECTMOUSE', 'PRESS', alt=True)754kmi.properties.extend = False755kmi = km.keymap_items.new('uv.select_loop', 'SELECTMOUSE', 'PRESS', shift=True, alt=True)756kmi.properties.extend = True757kmi = km.keymap_items.new('uv.select_split', 'Y', 'PRESS')758kmi = km.keymap_items.new('uv.select_border', 'B', 'PRESS')759kmi.properties.pinned = False760kmi = km.keymap_items.new('uv.select_border', 'B', 'PRESS', shift=True)761kmi.properties.pinned = True762kmi = km.keymap_items.new('uv.circle_select', 'C', 'PRESS')763kmi = km.keymap_items.new('uv.select_lasso', 'EVT_TWEAK_A', 'ANY', ctrl=True)764kmi.properties.deselect = False765kmi = km.keymap_items.new('uv.select_lasso', 'EVT_TWEAK_A', 'ANY', shift=True, ctrl=True)766kmi.properties.deselect = True767kmi = km.keymap_items.new('uv.select_linked', 'L', 'PRESS', ctrl=True)768kmi.properties.extend = False769kmi = km.keymap_items.new('uv.select_linked_pick', 'L', 'PRESS')770kmi.properties.extend = False771kmi = km.keymap_items.new('uv.select_linked', 'L', 'PRESS', shift=True, ctrl=True)772kmi.properties.extend = True773kmi = km.keymap_items.new('uv.select_linked_pick', 'L', 'PRESS', shift=True)774kmi.properties.extend = True775kmi = km.keymap_items.new('uv.select_all', 'A', 'PRESS', ctrl=True)776kmi.properties.action = 'TOGGLE'777kmi = km.keymap_items.new('uv.select_all', 'I', 'PRESS', ctrl=True)778kmi.properties.action = 'INVERT'779kmi = km.keymap_items.new('uv.select_pinned', 'P', 'PRESS', shift=True)780kmi = km.keymap_items.new('wm.call_menu', 'W', 'PRESS')781kmi.properties.name = 'IMAGE_MT_uvs_weldalign'782kmi = km.keymap_items.new('uv.stitch', 'V', 'PRESS')783kmi = km.keymap_items.new('uv.pin', 'P', 'PRESS')784kmi.properties.clear = False785kmi = km.keymap_items.new('uv.pin', 'P', 'PRESS', alt=True)786kmi.properties.clear = True787kmi = km.keymap_items.new('uv.unwrap', 'E', 'PRESS')788kmi = km.keymap_items.new('uv.minimize_stretch', 'V', 'PRESS', ctrl=True)789kmi = km.keymap_items.new('uv.pack_islands', 'P', 'PRESS', ctrl=True)790kmi = km.keymap_items.new('uv.average_islands_scale', 'A', 'PRESS', shift=True, ctrl=True)791kmi = km.keymap_items.new('uv.hide', 'H', 'PRESS')792kmi.properties.unselected = False793kmi = km.keymap_items.new('uv.hide', 'H', 'PRESS', shift=True)794kmi.properties.unselected = True795kmi = km.keymap_items.new('uv.reveal', 'H', 'PRESS', alt=True)796kmi = km.keymap_items.new('uv.cursor_set', 'ACTIONMOUSE', 'PRESS')797kmi = km.keymap_items.new('uv.tile_set', 'ACTIONMOUSE', 'PRESS', shift=True)798kmi = km.keymap_items.new('wm.call_menu', 'S', 'PRESS', shift=True)799kmi.properties.name = 'IMAGE_MT_uvs_snap'800kmi = km.keymap_items.new('wm.call_menu', 'TAB', 'PRESS', ctrl=True)801kmi.properties.name = 'IMAGE_MT_uvs_select_mode'802kmi = km.keymap_items.new('wm.context_cycle_enum', 'O', 'PRESS', shift=True)803kmi.properties.data_path = 'tool_settings.proportional_edit_falloff'804kmi = km.keymap_items.new('wm.context_toggle_enum', 'O', 'PRESS')805kmi.properties.data_path = 'tool_settings.proportional_edit'806kmi.properties.value_1 = 'DISABLED'807kmi.properties.value_2 = 'ENABLED'808kmi = km.keymap_items.new('transform.translate', 'G', 'PRESS')809kmi = km.keymap_items.new('transform.translate', 'EVT_TWEAK_S', 'ANY')810kmi = km.keymap_items.new('transform.rotate', 'R', 'PRESS')811kmi = km.keymap_items.new('transform.resize', 'S', 'PRESS')812kmi = km.keymap_items.new('transform.shear', 'S', 'PRESS', shift=True, ctrl=True, alt=True)813kmi = km.keymap_items.new('transform.mirror', 'M', 'PRESS', ctrl=True)814kmi = km.keymap_items.new('wm.context_toggle', 'TAB', 'PRESS', shift=True)815kmi.properties.data_path = 'tool_settings.use_snap'816kmi = km.keymap_items.new('wm.context_menu_enum', 'TAB', 'PRESS', shift=True, ctrl=True)817kmi.properties.data_path = 'tool_settings.snap_uv_element'818# Map Mask Editing819km = kc.keymaps.new('Mask Editing', space_type='EMPTY', region_type='WINDOW', modal=False)820kmi = km.keymap_items.new('mask.new', 'N', 'PRESS', alt=True)821kmi = km.keymap_items.new('wm.context_cycle_enum', 'O', 'PRESS', shift=True)822kmi.properties.data_path = 'tool_settings.proportional_edit_falloff'823kmi = km.keymap_items.new('wm.context_toggle', 'O', 'PRESS')824kmi.properties.data_path = 'tool_settings.use_proportional_edit_mask'825kmi = km.keymap_items.new('mask.add_vertex_slide', 'ACTIONMOUSE', 'PRESS', ctrl=True)826kmi = km.keymap_items.new('mask.add_feather_vertex_slide', 'ACTIONMOUSE', 'PRESS', shift=True)827kmi = km.keymap_items.new('mask.delete', 'X', 'PRESS')828kmi = km.keymap_items.new('mask.delete', 'DEL', 'PRESS')829kmi = km.keymap_items.new('mask.select', 'SELECTMOUSE', 'PRESS')830kmi.properties.extend = False831kmi.properties.deselect = False832kmi.properties.toggle = False833kmi = km.keymap_items.new('mask.select', 'SELECTMOUSE', 'PRESS', shift=True)834kmi.properties.extend = False835kmi.properties.deselect = False836kmi.properties.toggle = True837kmi = km.keymap_items.new('mask.select_all', 'A', 'PRESS', ctrl=True)838kmi.properties.action = 'TOGGLE'839kmi = km.keymap_items.new('mask.select_all', 'I', 'PRESS', ctrl=True)840kmi.properties.action = 'INVERT'841kmi = km.keymap_items.new('mask.select_linked', 'L', 'PRESS', ctrl=True)842kmi = km.keymap_items.new('mask.select_linked_pick', 'L', 'PRESS')843kmi.properties.deselect = False844kmi = km.keymap_items.new('mask.select_linked_pick', 'L', 'PRESS', shift=True)845kmi.properties.deselect = True846kmi = km.keymap_items.new('mask.select_border', 'B', 'PRESS')847kmi = km.keymap_items.new('mask.select_circle', 'C', 'PRESS')848kmi = km.keymap_items.new('mask.select_lasso', 'EVT_TWEAK_A', 'ANY', ctrl=True, alt=True)849kmi.properties.deselect = False850kmi = km.keymap_items.new('mask.select_lasso', 'EVT_TWEAK_A', 'ANY', shift=True, ctrl=True, alt=True)851kmi.properties.deselect = True852kmi = km.keymap_items.new('mask.hide_view_clear', 'H', 'PRESS', alt=True)853kmi = km.keymap_items.new('mask.hide_view_set', 'H', 'PRESS')854kmi.properties.unselected = False855kmi = km.keymap_items.new('mask.hide_view_set', 'H', 'PRESS', shift=True)856kmi.properties.unselected = True857kmi = km.keymap_items.new('clip.select', 'SELECTMOUSE', 'PRESS', ctrl=True)858kmi.properties.extend = False859kmi = km.keymap_items.new('mask.cyclic_toggle', 'C', 'PRESS', alt=True)860kmi = km.keymap_items.new('mask.slide_point', 'ACTIONMOUSE', 'PRESS')861kmi = km.keymap_items.new('mask.handle_type_set', 'V', 'PRESS')862kmi = km.keymap_items.new('mask.normals_make_consistent', 'N', 'PRESS', ctrl=True)863kmi = km.keymap_items.new('mask.parent_set', 'P', 'PRESS', ctrl=True)864kmi = km.keymap_items.new('mask.parent_clear', 'P', 'PRESS', alt=True)865kmi = km.keymap_items.new('mask.shape_key_insert', 'I', 'PRESS')866kmi = km.keymap_items.new('mask.shape_key_clear', 'I', 'PRESS', alt=True)867kmi = km.keymap_items.new('uv.cursor_set', 'ACTIONMOUSE', 'PRESS')868kmi = km.keymap_items.new('transform.translate', 'G', 'PRESS')869kmi = km.keymap_items.new('transform.translate', 'EVT_TWEAK_S', 'ANY')870kmi = km.keymap_items.new('transform.resize', 'S', 'PRESS')871kmi = km.keymap_items.new('transform.rotate', 'R', 'PRESS')872kmi = km.keymap_items.new('transform.transform', 'S', 'PRESS', alt=True)873kmi.properties.mode = 'MASK_SHRINKFATTEN'874# Map Graph Editor875km = kc.keymaps.new('Graph Editor', space_type='GRAPH_EDITOR', region_type='WINDOW', modal=False)876kmi = km.keymap_items.new('wm.context_toggle', 'H', 'PRESS', ctrl=True)877kmi.properties.data_path = 'space_data.show_handles'878kmi = km.keymap_items.new('graph.cursor_set', 'ACTIONMOUSE', 'PRESS')879kmi = km.keymap_items.new('graph.clickselect', 'SELECTMOUSE', 'PRESS')880kmi.properties.extend = False881kmi.properties.column = False882kmi.properties.curves = False883kmi = km.keymap_items.new('graph.clickselect', 'SELECTMOUSE', 'PRESS', alt=True)884kmi.properties.extend = False885kmi.properties.column = True886kmi.properties.curves = False887kmi = km.keymap_items.new('graph.clickselect', 'SELECTMOUSE', 'PRESS', shift=True)888kmi.properties.extend = True889kmi.properties.column = False890kmi.properties.curves = False891kmi = km.keymap_items.new('graph.clickselect', 'SELECTMOUSE', 'PRESS', shift=True, alt=True)892kmi.properties.extend = True893kmi.properties.column = True894kmi.properties.curves = False895kmi = km.keymap_items.new('graph.clickselect', 'SELECTMOUSE', 'PRESS', ctrl=True, alt=True)896kmi.properties.extend = False897kmi.properties.column = False898kmi.properties.curves = True899kmi = km.keymap_items.new('graph.clickselect', 'SELECTMOUSE', 'PRESS', shift=True, ctrl=True, alt=True)900kmi.properties.extend = True901kmi.properties.column = False902kmi.properties.curves = True903kmi = km.keymap_items.new('graph.select_leftright', 'SELECTMOUSE', 'PRESS', ctrl=True)904kmi.properties.mode = 'CHECK'905kmi.properties.extend = False906kmi = km.keymap_items.new('graph.select_leftright', 'SELECTMOUSE', 'PRESS', shift=True, ctrl=True)907kmi.properties.mode = 'CHECK'908kmi.properties.extend = True909kmi = km.keymap_items.new('graph.select_leftright', 'LEFT_BRACKET', 'PRESS')910kmi.properties.mode = 'LEFT'911kmi.properties.extend = False912kmi = km.keymap_items.new('graph.select_leftright', 'RIGHT_BRACKET', 'PRESS')913kmi.properties.mode = 'RIGHT'914kmi.properties.extend = False915kmi = km.keymap_items.new('graph.select_all_toggle', 'A', 'PRESS', ctrl=True)916kmi.properties.invert = False917kmi = km.keymap_items.new('graph.select_all_toggle', 'I', 'PRESS', ctrl=True)918kmi.properties.invert = True919kmi = km.keymap_items.new('graph.select_border', 'B', 'PRESS')920kmi.properties.axis_range = False921kmi.properties.include_handles = False922kmi = km.keymap_items.new('graph.select_border', 'B', 'PRESS', alt=True)923kmi.properties.axis_range = True924kmi.properties.include_handles = False925kmi = km.keymap_items.new('graph.select_border', 'B', 'PRESS', ctrl=True)926kmi.properties.axis_range = False927kmi.properties.include_handles = True928kmi = km.keymap_items.new('graph.select_border', 'B', 'PRESS', ctrl=True, alt=True)929kmi.properties.axis_range = True930kmi.properties.include_handles = True931kmi = km.keymap_items.new('graph.select_column', 'K', 'PRESS')932kmi.properties.mode = 'KEYS'933kmi = km.keymap_items.new('graph.select_column', 'K', 'PRESS', ctrl=True)934kmi.properties.mode = 'CFRA'935kmi = km.keymap_items.new('graph.select_column', 'K', 'PRESS', shift=True)936kmi.properties.mode = 'MARKERS_COLUMN'937kmi = km.keymap_items.new('graph.select_column', 'K', 'PRESS', alt=True)938kmi.properties.mode = 'MARKERS_BETWEEN'939kmi = km.keymap_items.new('graph.select_more', 'NUMPAD_PLUS', 'PRESS', ctrl=True)940kmi = km.keymap_items.new('graph.select_less', 'NUMPAD_MINUS', 'PRESS', ctrl=True)941kmi = km.keymap_items.new('graph.select_linked', 'L', 'PRESS')942kmi = km.keymap_items.new('graph.frame_jump', 'G', 'PRESS', ctrl=True)943kmi = km.keymap_items.new('graph.snap', 'S', 'PRESS', shift=True)944kmi = km.keymap_items.new('graph.mirror', 'M', 'PRESS', shift=True)945kmi = km.keymap_items.new('graph.handle_type', 'V', 'PRESS')946kmi = km.keymap_items.new('graph.interpolation_type', 'T', 'PRESS')947kmi = km.keymap_items.new('graph.clean', 'O', 'PRESS')948kmi = km.keymap_items.new('graph.smooth', 'O', 'PRESS', alt=True)949kmi = km.keymap_items.new('graph.sample', 'O', 'PRESS', shift=True)950kmi = km.keymap_items.new('graph.bake', 'C', 'PRESS', alt=True)951kmi = km.keymap_items.new('graph.delete', 'X', 'PRESS')952kmi = km.keymap_items.new('graph.delete', 'DEL', 'PRESS')953kmi = km.keymap_items.new('graph.duplicate_move', 'D', 'PRESS', shift=True)954kmi = km.keymap_items.new('graph.keyframe_insert', 'I', 'PRESS')955kmi = km.keymap_items.new('graph.click_insert', 'ACTIONMOUSE', 'CLICK', ctrl=True)956kmi = km.keymap_items.new('graph.copy', 'C', 'PRESS', ctrl=True)957kmi = km.keymap_items.new('graph.paste', 'V', 'PRESS', ctrl=True)958kmi = km.keymap_items.new('graph.previewrange_set', 'P', 'PRESS', ctrl=True, alt=True)959kmi = km.keymap_items.new('graph.view_all', 'HOME', 'PRESS')960kmi = km.keymap_items.new('graph.view_selected', 'NUMPAD_PERIOD', 'PRESS')961kmi = km.keymap_items.new('graph.fmodifier_add', 'M', 'PRESS', shift=True, ctrl=True)962kmi.properties.only_active = False963kmi = km.keymap_items.new('anim.channels_editable_toggle', 'TAB', 'PRESS')964kmi = km.keymap_items.new('transform.translate', 'G', 'PRESS')965kmi = km.keymap_items.new('transform.translate', 'EVT_TWEAK_S', 'ANY')966kmi = km.keymap_items.new('transform.transform', 'E', 'PRESS')967kmi.properties.mode = 'TIME_EXTEND'968kmi = km.keymap_items.new('transform.rotate', 'R', 'PRESS')969kmi = km.keymap_items.new('transform.resize', 'S', 'PRESS')970kmi = km.keymap_items.new('marker.add', 'M', 'PRESS')971kmi = km.keymap_items.new('marker.rename', 'M', 'PRESS', ctrl=True)972# Map Node Editor973km = kc.keymaps.new('Node Editor', space_type='NODE_EDITOR', region_type='WINDOW', modal=False)974kmi = km.keymap_items.new('node.select', 'ACTIONMOUSE', 'PRESS')975kmi.properties.extend = False976kmi = km.keymap_items.new('node.select', 'SELECTMOUSE', 'PRESS')977kmi.properties.extend = False978kmi = km.keymap_items.new('node.select', 'ACTIONMOUSE', 'PRESS', ctrl=True)979kmi.properties.extend = False980kmi = km.keymap_items.new('node.select', 'SELECTMOUSE', 'PRESS', ctrl=True)981kmi.properties.extend = False982kmi = km.keymap_items.new('node.select', 'ACTIONMOUSE', 'PRESS', alt=True)983kmi.properties.extend = False984kmi = km.keymap_items.new('node.select', 'SELECTMOUSE', 'PRESS', alt=True)985kmi.properties.extend = False986kmi = km.keymap_items.new('node.select', 'ACTIONMOUSE', 'PRESS', ctrl=True, alt=True)987kmi.properties.extend = False988kmi = km.keymap_items.new('node.select', 'SELECTMOUSE', 'PRESS', ctrl=True, alt=True)989kmi.properties.extend = False990kmi = km.keymap_items.new('node.select', 'ACTIONMOUSE', 'PRESS', shift=True)991kmi.properties.extend = True992kmi = km.keymap_items.new('node.select', 'SELECTMOUSE', 'PRESS', shift=True)993kmi.properties.extend = True994kmi = km.keymap_items.new('node.select', 'ACTIONMOUSE', 'PRESS', shift=True, ctrl=True)995kmi.properties.extend = True996kmi = km.keymap_items.new('node.select', 'SELECTMOUSE', 'PRESS', shift=True, ctrl=True)997kmi.properties.extend = True998kmi = km.keymap_items.new('node.select', 'ACTIONMOUSE', 'PRESS', shift=True, alt=True)999kmi.properties.extend = True1000kmi = km.keymap_items.new('node.select', 'SELECTMOUSE', 'PRESS', shift=True, alt=True)1001kmi.properties.extend = True1002kmi = km.keymap_items.new('node.select', 'ACTIONMOUSE', 'PRESS', shift=True, ctrl=True, alt=True)1003kmi.properties.extend = True1004kmi = km.keymap_items.new('node.select', 'SELECTMOUSE', 'PRESS', shift=True, ctrl=True, alt=True)1005kmi.properties.extend = True1006kmi = km.keymap_items.new('node.select_border', 'EVT_TWEAK_S', 'ANY')1007kmi.properties.tweak = True1008kmi = km.keymap_items.new('node.select_lasso', 'EVT_TWEAK_A', 'ANY', ctrl=True, alt=True)1009kmi.properties.deselect = False1010kmi = km.keymap_items.new('node.select_lasso', 'EVT_TWEAK_A', 'ANY', shift=True, ctrl=True, alt=True)1011kmi.properties.deselect = True1012kmi = km.keymap_items.new('node.link', 'LEFTMOUSE', 'PRESS')1013kmi.properties.detach = False1014kmi = km.keymap_items.new('node.link', 'LEFTMOUSE', 'PRESS', ctrl=True)1015kmi.properties.detach = True1016kmi = km.keymap_items.new('node.resize', 'LEFTMOUSE', 'PRESS')1017kmi = km.keymap_items.new('node.add_reroute', 'LEFTMOUSE', 'PRESS', shift=True)1018kmi = km.keymap_items.new('node.links_cut', 'LEFTMOUSE', 'PRESS', ctrl=True)1019kmi = km.keymap_items.new('node.select_link_viewer', 'LEFTMOUSE', 'PRESS', shift=True, ctrl=True)1020kmi = km.keymap_items.new('node.backimage_move', 'MIDDLEMOUSE', 'PRESS', alt=True)1021kmi = km.keymap_items.new('node.backimage_zoom', 'V', 'PRESS')1022kmi.properties.factor = 0.8333299756050111023kmi = km.keymap_items.new('node.backimage_zoom', 'V', 'PRESS', alt=True)1024kmi.properties.factor = 1.20000004768371581025kmi = km.keymap_items.new('node.backimage_sample', 'ACTIONMOUSE', 'PRESS', alt=True)1026kmi = km.keymap_items.new('node.link_make', 'F', 'PRESS')1027kmi.properties.replace = False1028kmi = km.keymap_items.new('node.link_make', 'F', 'PRESS', shift=True)1029kmi.properties.replace = True1030kmi = km.keymap_items.new('wm.call_menu', 'A', 'PRESS', shift=True)1031kmi.properties.name = 'NODE_MT_add'1032kmi = km.keymap_items.new('node.duplicate_move', 'D', 'PRESS', shift=True)1033kmi = km.keymap_items.new('node.duplicate_move_keep_inputs', 'D', 'PRESS', shift=True, ctrl=True)1034kmi = km.keymap_items.new('node.parent_set', 'P', 'PRESS', ctrl=True)1035kmi = km.keymap_items.new('node.join', 'J', 'PRESS', ctrl=True)1036kmi = km.keymap_items.new('node.hide_toggle', 'H', 'PRESS')1037kmi = km.keymap_items.new('node.mute_toggle', 'M', 'PRESS')1038kmi = km.keymap_items.new('node.preview_toggle', 'H', 'PRESS', shift=True)1039kmi = km.keymap_items.new('node.hide_socket_toggle', 'H', 'PRESS', ctrl=True)1040kmi = km.keymap_items.new('node.view_all', 'HOME', 'PRESS')1041kmi = km.keymap_items.new('node.view_selected', 'NUMPAD_PERIOD', 'PRESS')1042kmi = km.keymap_items.new('node.select_border', 'B', 'PRESS')1043kmi.properties.tweak = False1044kmi = km.keymap_items.new('node.delete', 'X', 'PRESS')1045kmi = km.keymap_items.new('node.delete', 'DEL', 'PRESS')1046kmi = km.keymap_items.new('node.delete_reconnect', 'X', 'PRESS', ctrl=True)1047kmi = km.keymap_items.new('node.select_all', 'A', 'PRESS', ctrl=True)1048kmi.properties.action = 'TOGGLE'1049kmi = km.keymap_items.new('node.select_all', 'I', 'PRESS', ctrl=True)1050kmi.properties.action = 'INVERT'1051kmi = km.keymap_items.new('node.select_linked_to', 'L', 'PRESS', shift=True)1052kmi = km.keymap_items.new('node.select_linked_from', 'L', 'PRESS')1053kmi = km.keymap_items.new('node.select_grouped', 'G', 'PRESS', shift=True)1054kmi = km.keymap_items.new('node.select_same_type_step', 'RIGHT_BRACKET', 'PRESS', shift=True)1055kmi.properties.prev = False1056kmi = km.keymap_items.new('node.select_same_type_step', 'LEFT_BRACKET', 'PRESS', shift=True)1057kmi.properties.prev = True1058kmi = km.keymap_items.new('node.find_node', 'F', 'PRESS', ctrl=True)1059kmi = km.keymap_items.new('node.group_make', 'G', 'PRESS', ctrl=True)1060kmi = km.keymap_items.new('node.group_ungroup', 'G', 'PRESS', alt=True)1061kmi = km.keymap_items.new('node.group_separate', 'P', 'PRESS')1062kmi = km.keymap_items.new('node.group_edit', 'TAB', 'PRESS')1063kmi.properties.exit = False1064kmi = km.keymap_items.new('node.group_edit', 'TAB', 'PRESS', shift=True)1065kmi.properties.exit = True1066kmi = km.keymap_items.new('node.group_make', 'G', 'PRESS', ctrl=True)1067kmi = km.keymap_items.new('node.group_ungroup', 'G', 'PRESS', alt=True)1068kmi = km.keymap_items.new('node.group_separate', 'P', 'PRESS')1069kmi = km.keymap_items.new('node.group_edit', 'TAB', 'PRESS')1070kmi.properties.exit = False1071kmi = km.keymap_items.new('node.group_edit', 'TAB', 'PRESS', shift=True)1072kmi.properties.exit = True1073kmi = km.keymap_items.new('node.group_make', 'G', 'PRESS', ctrl=True)1074kmi = km.keymap_items.new('node.group_ungroup', 'G', 'PRESS', alt=True)1075kmi = km.keymap_items.new('node.group_separate', 'P', 'PRESS')1076kmi = km.keymap_items.new('node.group_edit', 'TAB', 'PRESS')1077kmi.properties.exit = False1078kmi = km.keymap_items.new('node.group_edit', 'TAB', 'PRESS', shift=True)1079kmi.properties.exit = True1080kmi = km.keymap_items.new('node.read_renderlayers', 'R', 'PRESS', ctrl=True)1081kmi = km.keymap_items.new('node.read_fullsamplelayers', 'R', 'PRESS', shift=True)1082kmi = km.keymap_items.new('node.render_changed', 'Z', 'PRESS')1083kmi = km.keymap_items.new('node.clipboard_copy', 'C', 'PRESS', ctrl=True)1084kmi = km.keymap_items.new('node.clipboard_paste', 'V', 'PRESS', ctrl=True)1085kmi = km.keymap_items.new('node.viewer_border', 'B', 'PRESS', ctrl=True)1086kmi = km.keymap_items.new('node.translate_attach', 'G', 'PRESS')1087kmi = km.keymap_items.new('node.translate_attach', 'EVT_TWEAK_A', 'ANY')1088kmi = km.keymap_items.new('node.translate_attach', 'EVT_TWEAK_S', 'ANY')1089kmi = km.keymap_items.new('transform.rotate', 'R', 'PRESS')1090kmi = km.keymap_items.new('transform.resize', 'S', 'PRESS')1091kmi = km.keymap_items.new('node.move_detach_links', 'D', 'PRESS', alt=True)1092kmi = km.keymap_items.new('node.move_detach_links_release', 'EVT_TWEAK_A', 'ANY', alt=True)1093kmi = km.keymap_items.new('node.move_detach_links', 'EVT_TWEAK_S', 'ANY', alt=True)1094kmi = km.keymap_items.new('node.detach_translate_attach', 'F', 'PRESS', alt=True)1095# Map Info1096km = kc.keymaps.new('Info', space_type='INFO', region_type='WINDOW', modal=False)1097kmi = km.keymap_items.new('info.select_pick', 'SELECTMOUSE', 'PRESS')1098kmi = km.keymap_items.new('info.select_all_toggle', 'A', 'PRESS', ctrl=True)1099kmi = km.keymap_items.new('info.select_border', 'B', 'PRESS')1100kmi = km.keymap_items.new('info.report_replay', 'R', 'PRESS')1101kmi = km.keymap_items.new('info.report_delete', 'X', 'PRESS')1102kmi = km.keymap_items.new('info.report_delete', 'DEL', 'PRESS')1103kmi = km.keymap_items.new('info.report_copy', 'C', 'PRESS', ctrl=True)1104# Map File Browser Main1105km = kc.keymaps.new('File Browser Main', space_type='FILE_BROWSER', region_type='WINDOW', modal=False)1106kmi = km.keymap_items.new('file.execute', 'LEFTMOUSE', 'DOUBLE_CLICK')1107kmi.properties.need_active = True1108kmi = km.keymap_items.new('file.select', 'LEFTMOUSE', 'CLICK')1109kmi = km.keymap_items.new('file.select', 'LEFTMOUSE', 'CLICK', shift=True)1110kmi.properties.extend = True1111kmi = km.keymap_items.new('file.select', 'LEFTMOUSE', 'CLICK', alt=True)1112kmi.properties.extend = True1113kmi.properties.fill = True1114kmi = km.keymap_items.new('file.select', 'RIGHTMOUSE', 'CLICK')1115kmi.properties.open = False1116kmi = km.keymap_items.new('file.select', 'RIGHTMOUSE', 'CLICK', shift=True)1117kmi.properties.extend = True1118kmi.properties.open = False1119kmi = km.keymap_items.new('file.select', 'RIGHTMOUSE', 'CLICK', alt=True)1120kmi.properties.extend = True1121kmi.properties.fill = True1122kmi.properties.open = False1123kmi = km.keymap_items.new('file.select_all_toggle', 'A', 'PRESS', ctrl=True)1124kmi = km.keymap_items.new('file.refresh', 'NUMPAD_PERIOD', 'PRESS')1125kmi = km.keymap_items.new('file.select_border', 'B', 'PRESS')1126kmi = km.keymap_items.new('file.select_border', 'EVT_TWEAK_L', 'ANY')1127kmi = km.keymap_items.new('file.rename', 'LEFTMOUSE', 'PRESS', ctrl=True)1128kmi = km.keymap_items.new('file.highlight', 'MOUSEMOVE', 'ANY', any=True)1129kmi = km.keymap_items.new('file.filenum', 'NUMPAD_PLUS', 'PRESS')1130kmi.properties.increment = 11131kmi = km.keymap_items.new('file.filenum', 'NUMPAD_PLUS', 'PRESS', shift=True)1132kmi.properties.increment = 101133kmi = km.keymap_items.new('file.filenum', 'NUMPAD_PLUS', 'PRESS', ctrl=True)1134kmi.properties.increment = 1001135kmi = km.keymap_items.new('file.filenum', 'NUMPAD_MINUS', 'PRESS')1136kmi.properties.increment = -11137kmi = km.keymap_items.new('file.filenum', 'NUMPAD_MINUS', 'PRESS', shift=True)1138kmi.properties.increment = -101139kmi = km.keymap_items.new('file.filenum', 'NUMPAD_MINUS', 'PRESS', ctrl=True)1140kmi.properties.increment = -1001141# Map Dopesheet1142km = kc.keymaps.new('Dopesheet', space_type='DOPESHEET_EDITOR', region_type='WINDOW', modal=False)1143kmi = km.keymap_items.new('action.clickselect', 'SELECTMOUSE', 'PRESS')1144kmi.properties.extend = False1145kmi.properties.column = False1146kmi = km.keymap_items.new('action.clickselect', 'SELECTMOUSE', 'PRESS', alt=True)1147kmi.properties.extend = False1148kmi.properties.column = True1149kmi = km.keymap_items.new('action.clickselect', 'SELECTMOUSE', 'PRESS', shift=True)1150kmi.properties.extend = True1151kmi.properties.column = False1152kmi = km.keymap_items.new('action.clickselect', 'SELECTMOUSE', 'PRESS', shift=True, alt=True)1153kmi.properties.extend = True1154kmi.properties.column = True1155kmi = km.keymap_items.new('action.select_leftright', 'SELECTMOUSE', 'PRESS', ctrl=True)1156kmi.properties.mode = 'CHECK'1157kmi.properties.extend = False1158kmi = km.keymap_items.new('action.select_leftright', 'SELECTMOUSE', 'PRESS', shift=True, ctrl=True)1159kmi.properties.mode = 'CHECK'1160kmi.properties.extend = True1161kmi = km.keymap_items.new('action.select_leftright', 'LEFT_BRACKET', 'PRESS')1162kmi.properties.mode = 'LEFT'1163kmi.properties.extend = False1164kmi = km.keymap_items.new('action.select_leftright', 'RIGHT_BRACKET', 'PRESS')1165kmi.properties.mode = 'RIGHT'1166kmi.properties.extend = False1167kmi = km.keymap_items.new('action.select_all_toggle', 'A', 'PRESS', ctrl=True)1168kmi.properties.invert = False1169kmi = km.keymap_items.new('action.select_all_toggle', 'I', 'PRESS', ctrl=True)1170kmi.properties.invert = True1171kmi = km.keymap_items.new('action.select_border', 'B', 'PRESS')1172kmi.properties.axis_range = False1173kmi = km.keymap_items.new('action.select_border', 'B', 'PRESS', alt=True)1174kmi.properties.axis_range = True1175kmi = km.keymap_items.new('action.select_column', 'K', 'PRESS')1176kmi.properties.mode = 'KEYS'1177kmi = km.keymap_items.new('action.select_column', 'K', 'PRESS', ctrl=True)1178kmi.properties.mode = 'CFRA'1179kmi = km.keymap_items.new('action.select_column', 'K', 'PRESS', shift=True)1180kmi.properties.mode = 'MARKERS_COLUMN'1181kmi = km.keymap_items.new('action.select_column', 'K', 'PRESS', alt=True)1182kmi.properties.mode = 'MARKERS_BETWEEN'1183kmi = km.keymap_items.new('action.select_more', 'NUMPAD_PLUS', 'PRESS', ctrl=True)1184kmi = km.keymap_items.new('action.select_less', 'NUMPAD_MINUS', 'PRESS', ctrl=True)1185kmi = km.keymap_items.new('action.select_linked', 'L', 'PRESS')1186kmi = km.keymap_items.new('action.frame_jump', 'G', 'PRESS', ctrl=True)1187kmi = km.keymap_items.new('action.snap', 'S', 'PRESS', shift=True)1188kmi = km.keymap_items.new('action.mirror', 'M', 'PRESS', shift=True)1189kmi = km.keymap_items.new('action.handle_type', 'V', 'PRESS')1190kmi = km.keymap_items.new('action.interpolation_type', 'T', 'PRESS')1191kmi = km.keymap_items.new('action.extrapolation_type', 'E', 'PRESS', shift=True)1192kmi = km.keymap_items.new('action.keyframe_type', 'R', 'PRESS')1193kmi = km.keymap_items.new('action.clean', 'O', 'PRESS')1194kmi = km.keymap_items.new('action.sample', 'O', 'PRESS', shift=True)1195kmi = km.keymap_items.new('action.delete', 'X', 'PRESS')1196kmi = km.keymap_items.new('action.delete', 'DEL', 'PRESS')1197kmi = km.keymap_items.new('action.duplicate_move', 'D', 'PRESS', shift=True)1198kmi = km.keymap_items.new('action.keyframe_insert', 'I', 'PRESS')1199kmi = km.keymap_items.new('action.copy', 'C', 'PRESS', ctrl=True)1200kmi = km.keymap_items.new('action.paste', 'V', 'PRESS', ctrl=True)1201kmi = km.keymap_items.new('action.previewrange_set', 'P', 'PRESS', ctrl=True, alt=True)1202kmi = km.keymap_items.new('action.view_all', 'HOME', 'PRESS')1203kmi = km.keymap_items.new('action.view_selected', 'NUMPAD_PERIOD', 'PRESS')1204kmi = km.keymap_items.new('anim.channels_editable_toggle', 'TAB', 'PRESS')1205kmi = km.keymap_items.new('transform.transform', 'G', 'PRESS')1206kmi.properties.mode = 'TIME_TRANSLATE'1207kmi = km.keymap_items.new('transform.transform', 'EVT_TWEAK_S', 'ANY')1208kmi.properties.mode = 'TIME_TRANSLATE'1209kmi = km.keymap_items.new('transform.transform', 'E', 'PRESS')1210kmi.properties.mode = 'TIME_EXTEND'1211kmi = km.keymap_items.new('transform.transform', 'S', 'PRESS')1212kmi.properties.mode = 'TIME_SCALE'1213kmi = km.keymap_items.new('transform.transform', 'T', 'PRESS', shift=True)1214kmi.properties.mode = 'TIME_SLIDE'1215kmi = km.keymap_items.new('marker.add', 'M', 'PRESS')1216kmi = km.keymap_items.new('marker.rename', 'M', 'PRESS', ctrl=True)1217# Map NLA Editor1218km = kc.keymaps.new('NLA Editor', space_type='NLA_EDITOR', region_type='WINDOW', modal=False)1219kmi = km.keymap_items.new('nla.click_select', 'SELECTMOUSE', 'PRESS')1220kmi.properties.extend = False1221kmi = km.keymap_items.new('nla.click_select', 'SELECTMOUSE', 'PRESS', shift=True)1222kmi.properties.extend = True1223kmi = km.keymap_items.new('nla.select_leftright', 'SELECTMOUSE', 'PRESS', ctrl=True)1224kmi.properties.mode = 'CHECK'1225kmi.properties.extend = False1226kmi = km.keymap_items.new('nla.select_leftright', 'SELECTMOUSE', 'PRESS', shift=True, ctrl=True)1227kmi.properties.mode = 'CHECK'1228kmi.properties.extend = True1229kmi = km.keymap_items.new('nla.select_leftright', 'LEFT_BRACKET', 'PRESS')1230kmi.properties.mode = 'LEFT'1231kmi.properties.extend = False1232kmi = km.keymap_items.new('nla.select_leftright', 'RIGHT_BRACKET', 'PRESS')1233kmi.properties.mode = 'RIGHT'1234kmi.properties.extend = False1235kmi = km.keymap_items.new('nla.select_all_toggle', 'A', 'PRESS', ctrl=True)1236kmi.properties.invert = False1237kmi = km.keymap_items.new('nla.select_all_toggle', 'I', 'PRESS', ctrl=True)1238kmi.properties.invert = True1239kmi = km.keymap_items.new('nla.select_border', 'B', 'PRESS')1240kmi.properties.axis_range = False1241kmi = km.keymap_items.new('nla.select_border', 'B', 'PRESS', alt=True)1242kmi.properties.axis_range = True1243kmi = km.keymap_items.new('nla.view_all', 'HOME', 'PRESS')1244kmi = km.keymap_items.new('nla.view_selected', 'NUMPAD_PERIOD', 'PRESS')1245kmi = km.keymap_items.new('nla.tweakmode_enter', 'TAB', 'PRESS')1246kmi = km.keymap_items.new('nla.tweakmode_exit', 'TAB', 'PRESS')1247kmi = km.keymap_items.new('nla.actionclip_add', 'A', 'PRESS', shift=True)1248kmi = km.keymap_items.new('nla.transition_add', 'T', 'PRESS', shift=True)1249kmi = km.keymap_items.new('nla.soundclip_add', 'K', 'PRESS', shift=True)1250kmi = km.keymap_items.new('nla.meta_add', 'G', 'PRESS', shift=True)1251kmi = km.keymap_items.new('nla.meta_remove', 'G', 'PRESS', alt=True)1252kmi = km.keymap_items.new('nla.duplicate', 'D', 'PRESS', shift=True)1253kmi = km.keymap_items.new('nla.delete', 'X', 'PRESS')1254kmi = km.keymap_items.new('nla.delete', 'DEL', 'PRESS')1255kmi = km.keymap_items.new('nla.split', 'Y', 'PRESS')1256kmi = km.keymap_items.new('nla.mute_toggle', 'H', 'PRESS')1257kmi = km.keymap_items.new('nla.swap', 'F', 'PRESS', alt=True)1258kmi = km.keymap_items.new('nla.move_up', 'PAGE_UP', 'PRESS')1259kmi = km.keymap_items.new('nla.move_down', 'PAGE_DOWN', 'PRESS')1260kmi = km.keymap_items.new('nla.apply_scale', 'A', 'PRESS', shift=True, ctrl=True)1261kmi = km.keymap_items.new('nla.clear_scale', 'S', 'PRESS', alt=True)1262kmi = km.keymap_items.new('nla.snap', 'S', 'PRESS', shift=True)1263kmi = km.keymap_items.new('nla.fmodifier_add', 'M', 'PRESS', shift=True, ctrl=True)1264kmi = km.keymap_items.new('transform.transform', 'G', 'PRESS')1265kmi.properties.mode = 'TRANSLATION'1266kmi = km.keymap_items.new('transform.transform', 'EVT_TWEAK_S', 'ANY')1267kmi.properties.mode = 'TRANSLATION'1268kmi = km.keymap_items.new('transform.transform', 'E', 'PRESS')1269kmi.properties.mode = 'TIME_EXTEND'1270kmi = km.keymap_items.new('transform.transform', 'S', 'PRESS')1271kmi.properties.mode = 'TIME_SCALE'1272kmi = km.keymap_items.new('marker.add', 'M', 'PRESS')1273kmi = km.keymap_items.new('marker.rename', 'M', 'PRESS', ctrl=True)1274# Map Sequencer1275km = kc.keymaps.new('Sequencer', space_type='SEQUENCE_EDITOR', region_type='WINDOW', modal=False)1276kmi = km.keymap_items.new('sequencer.select_all', 'A', 'PRESS', ctrl=True)1277kmi.properties.action = 'TOGGLE'1278kmi = km.keymap_items.new('sequencer.select_all', 'I', 'PRESS', ctrl=True)1279kmi.properties.action = 'INVERT'1280kmi = km.keymap_items.new('sequencer.cut', 'K', 'PRESS')1281kmi.properties.type = 'SOFT'1282kmi = km.keymap_items.new('sequencer.cut', 'K', 'PRESS', shift=True)1283kmi.properties.type = 'HARD'1284kmi = km.keymap_items.new('sequencer.mute', 'H', 'PRESS')1285kmi.properties.unselected = False1286kmi = km.keymap_items.new('sequencer.mute', 'H', 'PRESS', shift=True)1287kmi.properties.unselected = True1288kmi = km.keymap_items.new('sequencer.unmute', 'H', 'PRESS', alt=True)1289kmi.properties.unselected = False1290kmi = km.keymap_items.new('sequencer.unmute', 'H', 'PRESS', shift=True, alt=True)1291kmi.properties.unselected = True1292kmi = km.keymap_items.new('sequencer.lock', 'L', 'PRESS', shift=True)1293kmi = km.keymap_items.new('sequencer.unlock', 'L', 'PRESS', shift=True, alt=True)1294kmi = km.keymap_items.new('sequencer.reassign_inputs', 'R', 'PRESS')1295kmi = km.keymap_items.new('sequencer.reload', 'R', 'PRESS', alt=True)1296kmi = km.keymap_items.new('sequencer.reload', 'R', 'PRESS', shift=True, alt=True)1297kmi.properties.adjust_length = True1298kmi = km.keymap_items.new('sequencer.offset_clear', 'O', 'PRESS', alt=True)1299kmi = km.keymap_items.new('sequencer.duplicate_move', 'D', 'PRESS', shift=True)1300kmi = km.keymap_items.new('sequencer.delete', 'X', 'PRESS')1301kmi = km.keymap_items.new('sequencer.delete', 'DEL', 'PRESS')1302kmi = km.keymap_items.new('sequencer.copy', 'C', 'PRESS', ctrl=True)1303kmi = km.keymap_items.new('sequencer.paste', 'V', 'PRESS', ctrl=True)1304kmi = km.keymap_items.new('sequencer.images_separate', 'Y', 'PRESS')1305kmi = km.keymap_items.new('sequencer.meta_toggle', 'TAB', 'PRESS')1306kmi = km.keymap_items.new('sequencer.meta_make', 'G', 'PRESS', ctrl=True)1307kmi = km.keymap_items.new('sequencer.meta_separate', 'G', 'PRESS', alt=True)1308kmi = km.keymap_items.new('sequencer.view_all', 'HOME', 'PRESS')1309kmi = km.keymap_items.new('sequencer.view_selected', 'NUMPAD_PERIOD', 'PRESS')1310kmi = km.keymap_items.new('sequencer.strip_jump', 'PAGE_UP', 'PRESS')1311kmi.properties.next = True1312kmi.properties.center = False1313kmi = km.keymap_items.new('sequencer.strip_jump', 'PAGE_DOWN', 'PRESS')1314kmi.properties.next = False1315kmi.properties.center = False1316kmi = km.keymap_items.new('sequencer.strip_jump', 'PAGE_UP', 'PRESS', alt=True)1317kmi.properties.next = True1318kmi.properties.center = True1319kmi = km.keymap_items.new('sequencer.strip_jump', 'PAGE_DOWN', 'PRESS', alt=True)1320kmi.properties.next = False1321kmi.properties.center = True1322kmi = km.keymap_items.new('sequencer.swap', 'LEFT_ARROW', 'PRESS', alt=True)1323kmi.properties.side = 'LEFT'1324kmi = km.keymap_items.new('sequencer.swap', 'RIGHT_ARROW', 'PRESS', alt=True)1325kmi.properties.side = 'RIGHT'1326kmi = km.keymap_items.new('sequencer.gap_remove', 'BACK_SPACE', 'PRESS')1327kmi.properties.all = False1328kmi = km.keymap_items.new('sequencer.gap_remove', 'BACK_SPACE', 'PRESS', shift=True)1329kmi.properties.all = True1330kmi = km.keymap_items.new('sequencer.gap_insert', 'EQUAL', 'PRESS', shift=True)1331kmi = km.keymap_items.new('sequencer.snap', 'S', 'PRESS', shift=True)1332kmi = km.keymap_items.new('sequencer.swap_inputs', 'S', 'PRESS', alt=True)1333kmi = km.keymap_items.new('sequencer.cut_multicam', 'ONE', 'PRESS')1334kmi.properties.camera = 11335kmi = km.keymap_items.new('sequencer.cut_multicam', 'TWO', 'PRESS')1336kmi.properties.camera = 21337kmi = km.keymap_items.new('sequencer.cut_multicam', 'THREE', 'PRESS')1338kmi.properties.camera = 31339kmi = km.keymap_items.new('sequencer.cut_multicam', 'FOUR', 'PRESS')1340kmi.properties.camera = 41341kmi = km.keymap_items.new('sequencer.cut_multicam', 'FIVE', 'PRESS')1342kmi.properties.camera = 51343kmi = km.keymap_items.new('sequencer.cut_multicam', 'SIX', 'PRESS')1344kmi.properties.camera = 61345kmi = km.keymap_items.new('sequencer.cut_multicam', 'SEVEN', 'PRESS')1346kmi.properties.camera = 71347kmi = km.keymap_items.new('sequencer.cut_multicam', 'EIGHT', 'PRESS')1348kmi.properties.camera = 81349kmi = km.keymap_items.new('sequencer.cut_multicam', 'NINE', 'PRESS')1350kmi.properties.camera = 91351kmi = km.keymap_items.new('sequencer.cut_multicam', 'ZERO', 'PRESS')1352kmi.properties.camera = 101353kmi = km.keymap_items.new('sequencer.select', 'SELECTMOUSE', 'PRESS')1354kmi.properties.extend = False1355kmi.properties.linked_handle = False1356kmi.properties.left_right = 'NONE'1357kmi.properties.linked_time = False1358kmi = km.keymap_items.new('sequencer.select', 'SELECTMOUSE', 'PRESS', shift=True)1359kmi.properties.extend = True1360kmi.properties.linked_handle = False1361kmi.properties.left_right = 'NONE'1362kmi.properties.linked_time = False1363kmi = km.keymap_items.new('sequencer.select', 'SELECTMOUSE', 'PRESS', alt=True)1364kmi.properties.extend = False1365kmi.properties.linked_handle = True1366kmi.properties.left_right = 'NONE'1367kmi.properties.linked_time = False1368kmi = km.keymap_items.new('sequencer.select', 'SELECTMOUSE', 'PRESS', shift=True, alt=True)1369kmi.properties.extend = True1370kmi.properties.linked_handle = True1371kmi.properties.left_right = 'NONE'1372kmi.properties.linked_time = False1373kmi = km.keymap_items.new('sequencer.select', 'SELECTMOUSE', 'PRESS', ctrl=True)1374kmi.properties.extend = False1375kmi.properties.linked_handle = False1376kmi.properties.left_right = 'MOUSE'1377kmi.properties.linked_time = True1378kmi = km.keymap_items.new('sequencer.select', 'SELECTMOUSE', 'PRESS', shift=True, ctrl=True)1379kmi.properties.extend = True1380kmi.properties.linked_handle = False1381kmi.properties.left_right = 'NONE'1382kmi.properties.linked_time = True1383kmi = km.keymap_items.new('sequencer.select_more', 'NUMPAD_PLUS', 'PRESS', ctrl=True)1384kmi = km.keymap_items.new('sequencer.select_less', 'NUMPAD_MINUS', 'PRESS', ctrl=True)1385kmi = km.keymap_items.new('sequencer.select_linked_pick', 'L', 'PRESS')1386kmi.properties.extend = False1387kmi = km.keymap_items.new('sequencer.select_linked_pick', 'L', 'PRESS', shift=True)1388kmi.properties.extend = True1389kmi = km.keymap_items.new('sequencer.select_linked', 'L', 'PRESS', ctrl=True)1390kmi = km.keymap_items.new('sequencer.select_border', 'B', 'PRESS')1391kmi = km.keymap_items.new('sequencer.select_grouped', 'G', 'PRESS', shift=True)1392kmi = km.keymap_items.new('wm.call_menu', 'A', 'PRESS', shift=True)1393kmi.properties.name = 'SEQUENCER_MT_add'1394kmi = km.keymap_items.new('wm.call_menu', 'C', 'PRESS')1395kmi.properties.name = 'SEQUENCER_MT_change'1396kmi = km.keymap_items.new('wm.context_set_int', 'O', 'PRESS')1397kmi.properties.data_path = 'scene.sequence_editor.overlay_frame'1398kmi.properties.value = 01399kmi = km.keymap_items.new('transform.seq_slide', 'G', 'PRESS')1400kmi = km.keymap_items.new('transform.seq_slide', 'EVT_TWEAK_S', 'ANY')1401kmi = km.keymap_items.new('transform.transform', 'E', 'PRESS')1402kmi.properties.mode = 'TIME_EXTEND'1403kmi = km.keymap_items.new('marker.add', 'M', 'PRESS')1404kmi = km.keymap_items.new('marker.rename', 'M', 'PRESS', ctrl=True)1405# Map Clip Editor1406km = kc.keymaps.new('Clip Editor', space_type='CLIP_EDITOR', region_type='WINDOW', modal=False)1407kmi = km.keymap_items.new('clip.view_pan', 'MIDDLEMOUSE', 'PRESS')1408kmi = km.keymap_items.new('clip.view_pan', 'MIDDLEMOUSE', 'PRESS', shift=True)1409kmi = km.keymap_items.new('clip.view_pan', 'TRACKPADPAN', 'ANY')1410kmi = km.keymap_items.new('clip.view_zoom', 'MIDDLEMOUSE', 'PRESS', ctrl=True)1411kmi = km.keymap_items.new('clip.view_zoom', 'TRACKPADZOOM', 'ANY')1412kmi = km.keymap_items.new('clip.view_zoom', 'TRACKPADPAN', 'ANY', ctrl=True)1413kmi = km.keymap_items.new('clip.view_zoom_in', 'WHEELINMOUSE', 'PRESS')1414kmi = km.keymap_items.new('clip.view_zoom_out', 'WHEELOUTMOUSE', 'PRESS')1415kmi = km.keymap_items.new('clip.view_zoom_in', 'NUMPAD_PLUS', 'PRESS')1416kmi = km.keymap_items.new('clip.view_zoom_out', 'NUMPAD_MINUS', 'PRESS')1417kmi = km.keymap_items.new('clip.view_zoom_ratio', 'NUMPAD_8', 'PRESS', ctrl=True)1418kmi.properties.ratio = 8.01419kmi = km.keymap_items.new('clip.view_zoom_ratio', 'NUMPAD_4', 'PRESS', ctrl=True)1420kmi.properties.ratio = 4.01421kmi = km.keymap_items.new('clip.view_zoom_ratio', 'NUMPAD_2', 'PRESS', ctrl=True)1422kmi.properties.ratio = 2.01423kmi = km.keymap_items.new('clip.view_zoom_ratio', 'NUMPAD_8', 'PRESS', shift=True)1424kmi.properties.ratio = 8.01425kmi = km.keymap_items.new('clip.view_zoom_ratio', 'NUMPAD_4', 'PRESS', shift=True)1426kmi.properties.ratio = 4.01427kmi = km.keymap_items.new('clip.view_zoom_ratio', 'NUMPAD_2', 'PRESS', shift=True)1428kmi.properties.ratio = 2.01429kmi = km.keymap_items.new('clip.view_zoom_ratio', 'NUMPAD_1', 'PRESS')1430kmi.properties.ratio = 1.01431kmi = km.keymap_items.new('clip.view_zoom_ratio', 'NUMPAD_2', 'PRESS')1432kmi.properties.ratio = 0.51433kmi = km.keymap_items.new('clip.view_zoom_ratio', 'NUMPAD_4', 'PRESS')1434kmi.properties.ratio = 0.251435kmi = km.keymap_items.new('clip.view_zoom_ratio', 'NUMPAD_8', 'PRESS')1436kmi.properties.ratio = 0.1251437kmi = km.keymap_items.new('clip.view_all', 'HOME', 'PRESS')1438kmi = km.keymap_items.new('clip.view_all', 'F', 'PRESS')1439kmi.properties.fit_view = True1440kmi = km.keymap_items.new('clip.view_selected', 'NUMPAD_PERIOD', 'PRESS')1441kmi = km.keymap_items.new('clip.view_all', 'NDOF_BUTTON_FIT', 'PRESS')1442kmi = km.keymap_items.new('clip.view_ndof', 'NDOF_MOTION', 'ANY')1443kmi = km.keymap_items.new('clip.frame_jump', 'LEFT_ARROW', 'PRESS', shift=True, ctrl=True)1444kmi.properties.position = 'PATHSTART'1445kmi = km.keymap_items.new('clip.frame_jump', 'RIGHT_ARROW', 'PRESS', shift=True, ctrl=True)1446kmi.properties.position = 'PATHEND'1447kmi = km.keymap_items.new('clip.frame_jump', 'LEFT_ARROW', 'PRESS', shift=True, alt=True)1448kmi.properties.position = 'FAILEDPREV'1449kmi = km.keymap_items.new('clip.frame_jump', 'RIGHT_ARROW', 'PRESS', shift=True, alt=True)1450kmi.properties.position = 'PATHSTART'1451kmi = km.keymap_items.new('clip.change_frame', 'LEFTMOUSE', 'PRESS')1452kmi = km.keymap_items.new('clip.select', 'SELECTMOUSE', 'PRESS')1453kmi.properties.extend = False1454kmi = km.keymap_items.new('clip.select', 'SELECTMOUSE', 'PRESS', shift=True)1455kmi.properties.extend = True1456kmi = km.keymap_items.new('clip.select_all', 'A', 'PRESS', ctrl=True)1457kmi.properties.action = 'TOGGLE'1458kmi = km.keymap_items.new('clip.select_all', 'I', 'PRESS', ctrl=True)1459kmi.properties.action = 'INVERT'1460kmi = km.keymap_items.new('clip.select_border', 'B', 'PRESS')1461kmi = km.keymap_items.new('clip.select_circle', 'C', 'PRESS')1462kmi = km.keymap_items.new('wm.call_menu', 'G', 'PRESS', shift=True)1463kmi.properties.name = 'CLIP_MT_select_grouped'1464kmi = km.keymap_items.new('clip.select_lasso', 'EVT_TWEAK_A', 'ANY', ctrl=True, alt=True)1465kmi.properties.deselect = False1466kmi = km.keymap_items.new('clip.select_lasso', 'EVT_TWEAK_A', 'ANY', shift=True, ctrl=True, alt=True)1467kmi.properties.deselect = True1468kmi = km.keymap_items.new('clip.add_marker_slide', 'LEFTMOUSE', 'PRESS', ctrl=True)1469kmi = km.keymap_items.new('clip.delete_marker', 'DEL', 'PRESS', shift=True)1470kmi = km.keymap_items.new('clip.delete_marker', 'X', 'PRESS', shift=True)1471kmi = km.keymap_items.new('clip.slide_marker', 'LEFTMOUSE', 'PRESS')1472kmi = km.keymap_items.new('clip.disable_markers', 'D', 'PRESS', shift=True)1473kmi.properties.action = 'TOGGLE'1474kmi = km.keymap_items.new('clip.delete_track', 'DEL', 'PRESS')1475kmi = km.keymap_items.new('clip.delete_track', 'X', 'PRESS')1476kmi = km.keymap_items.new('clip.lock_tracks', 'L', 'PRESS', ctrl=True)1477kmi.properties.action = 'LOCK'1478kmi = km.keymap_items.new('clip.lock_tracks', 'L', 'PRESS', alt=True)1479kmi.properties.action = 'UNLOCK'1480kmi = km.keymap_items.new('clip.hide_tracks', 'H', 'PRESS')1481kmi.properties.unselected = False1482kmi = km.keymap_items.new('clip.hide_tracks', 'H', 'PRESS', shift=True)1483kmi.properties.unselected = True1484kmi = km.keymap_items.new('clip.hide_tracks_clear', 'H', 'PRESS', alt=True)1485kmi = km.keymap_items.new('clip.join_tracks', 'J', 'PRESS', ctrl=True)1486kmi = km.keymap_items.new('wm.call_menu', 'W', 'PRESS')1487kmi.properties.name = 'CLIP_MT_tracking_specials'1488kmi = km.keymap_items.new('wm.context_toggle', 'L', 'PRESS')1489kmi.properties.data_path = 'space_data.lock_selection'1490kmi = km.keymap_items.new('wm.context_toggle', 'D', 'PRESS', alt=True)1491kmi.properties.data_path = 'space_data.show_disabled'1492kmi = km.keymap_items.new('wm.context_toggle', 'S', 'PRESS', alt=True)1493kmi.properties.data_path = 'space_data.show_marker_search'1494kmi = km.keymap_items.new('wm.context_toggle', 'M', 'PRESS')1495kmi.properties.data_path = 'space_data.use_mute_footage'1496kmi = km.keymap_items.new('transform.translate', 'G', 'PRESS')1497kmi = km.keymap_items.new('transform.translate', 'EVT_TWEAK_S', 'ANY')1498kmi = km.keymap_items.new('transform.resize', 'S', 'PRESS')1499kmi = km.keymap_items.new('transform.rotate', 'R', 'PRESS')1500kmi = km.keymap_items.new('clip.clear_track_path', 'T', 'PRESS', alt=True)1501kmi.properties.action = 'REMAINED'1502kmi.properties.clear_active = False1503kmi = km.keymap_items.new('clip.clear_track_path', 'T', 'PRESS', shift=True)1504kmi.properties.action = 'UPTO'1505kmi.properties.clear_active = False1506kmi = km.keymap_items.new('clip.clear_track_path', 'T', 'PRESS', shift=True, alt=True)1507kmi.properties.action = 'ALL'1508kmi.properties.clear_active = False1509# Map Clip Graph Editor1510km = kc.keymaps.new('Clip Graph Editor', space_type='CLIP_EDITOR', region_type='WINDOW', modal=False)1511kmi = km.keymap_items.new('clip.change_frame', 'ACTIONMOUSE', 'PRESS')1512kmi = km.keymap_items.new('clip.graph_select', 'SELECTMOUSE', 'PRESS')1513kmi.properties.extend = False1514kmi = km.keymap_items.new('clip.graph_select', 'SELECTMOUSE', 'PRESS', shift=True)1515kmi.properties.extend = True1516kmi = km.keymap_items.new('clip.graph_select_all_markers', 'A', 'PRESS', ctrl=True)1517kmi.properties.action = 'TOGGLE'1518kmi = km.keymap_items.new('clip.graph_select_all_markers', 'I', 'PRESS', ctrl=True)1519kmi.properties.action = 'INVERT'1520kmi = km.keymap_items.new('clip.graph_select_border', 'B', 'PRESS')1521kmi = km.keymap_items.new('clip.graph_delete_curve', 'DEL', 'PRESS')1522kmi = km.keymap_items.new('clip.graph_delete_curve', 'X', 'PRESS')1523kmi = km.keymap_items.new('clip.graph_delete_knot', 'DEL', 'PRESS', shift=True)1524kmi = km.keymap_items.new('clip.graph_delete_knot', 'X', 'PRESS', shift=True)1525kmi = km.keymap_items.new('clip.graph_view_all', 'HOME', 'PRESS')1526kmi = km.keymap_items.new('clip.graph_center_current_frame', 'NUMPAD_PERIOD', 'PRESS')1527kmi = km.keymap_items.new('wm.context_toggle', 'L', 'PRESS')1528kmi.properties.data_path = 'space_data.lock_time_cursor'1529kmi = km.keymap_items.new('clip.clear_track_path', 'T', 'PRESS', alt=True)1530kmi.properties.action = 'REMAINED'1531kmi.properties.clear_active = True1532kmi = km.keymap_items.new('clip.clear_track_path', 'T', 'PRESS', shift=True)1533kmi.properties.action = 'UPTO'1534kmi.properties.clear_active = True1535kmi = km.keymap_items.new('clip.clear_track_path', 'T', 'PRESS', shift=True, alt=True)1536kmi.properties.action = 'ALL'1537kmi.properties.clear_active = True1538kmi = km.keymap_items.new('clip.graph_disable_markers', 'D', 'PRESS', shift=True)1539kmi.properties.action = 'TOGGLE'1540kmi = km.keymap_items.new('transform.translate', 'G', 'PRESS')1541kmi = km.keymap_items.new('transform.translate', 'EVT_TWEAK_S', 'ANY')1542kmi = km.keymap_items.new('transform.resize', 'S', 'PRESS')1543kmi = km.keymap_items.new('transform.rotate', 'R', 'PRESS')1544# Map Image Paint1545km = kc.keymaps.new('Image Paint', space_type='EMPTY', region_type='WINDOW', modal=False)1546kmi = km.keymap_items.new('paint.image_paint', 'LEFTMOUSE', 'PRESS')1547kmi.properties.mode = 'NORMAL'1548kmi = km.keymap_items.new('paint.image_paint', 'LEFTMOUSE', 'PRESS', ctrl=True)1549kmi.properties.mode = 'INVERT'1550kmi = km.keymap_items.new('paint.grab_clone', 'RIGHTMOUSE', 'PRESS')1551kmi = km.keymap_items.new('paint.sample_color', 'RIGHTMOUSE', 'PRESS')1552kmi = km.keymap_items.new('brush.active_index_set', 'ONE', 'PRESS')1553kmi.properties.mode = 'image_paint'1554kmi.properties.index = 01555kmi = km.keymap_items.new('brush.active_index_set', 'TWO', 'PRESS')1556kmi.properties.mode = 'image_paint'1557kmi.properties.index = 11558kmi = km.keymap_items.new('brush.active_index_set', 'THREE', 'PRESS')1559kmi.properties.mode = 'image_paint'1560kmi.properties.index = 21561kmi = km.keymap_items.new('brush.active_index_set', 'FOUR', 'PRESS')1562kmi.properties.mode = 'image_paint'1563kmi.properties.index = 31564kmi = km.keymap_items.new('brush.active_index_set', 'FIVE', 'PRESS')1565kmi.properties.mode = 'image_paint'1566kmi.properties.index = 41567kmi = km.keymap_items.new('brush.active_index_set', 'SIX', 'PRESS')1568kmi.properties.mode = 'image_paint'1569kmi.properties.index = 51570kmi = km.keymap_items.new('brush.active_index_set', 'SEVEN', 'PRESS')1571kmi.properties.mode = 'image_paint'1572kmi.properties.index = 61573kmi = km.keymap_items.new('brush.active_index_set', 'EIGHT', 'PRESS')1574kmi.properties.mode = 'image_paint'1575kmi.properties.index = 71576kmi = km.keymap_items.new('brush.active_index_set', 'NINE', 'PRESS')1577kmi.properties.mode = 'image_paint'1578kmi.properties.index = 81579kmi = km.keymap_items.new('brush.active_index_set', 'ZERO', 'PRESS')1580kmi.properties.mode = 'image_paint'1581kmi.properties.index = 91582kmi = km.keymap_items.new('brush.active_index_set', 'ONE', 'PRESS', shift=True)1583kmi.properties.mode = 'image_paint'1584kmi.properties.index = 101585kmi = km.keymap_items.new('brush.active_index_set', 'TWO', 'PRESS', shift=True)1586kmi.properties.mode = 'image_paint'1587kmi.properties.index = 111588kmi = km.keymap_items.new('brush.active_index_set', 'THREE', 'PRESS', shift=True)1589kmi.properties.mode = 'image_paint'1590kmi.properties.index = 121591kmi = km.keymap_items.new('brush.active_index_set', 'FOUR', 'PRESS', shift=True)1592kmi.properties.mode = 'image_paint'1593kmi.properties.index = 131594kmi = km.keymap_items.new('brush.active_index_set', 'FIVE', 'PRESS', shift=True)1595kmi.properties.mode = 'image_paint'1596kmi.properties.index = 141597kmi = km.keymap_items.new('brush.active_index_set', 'SIX', 'PRESS', shift=True)1598kmi.properties.mode = 'image_paint'1599kmi.properties.index = 151600kmi = km.keymap_items.new('brush.active_index_set', 'SEVEN', 'PRESS', shift=True)1601kmi.properties.mode = 'image_paint'1602kmi.properties.index = 161603kmi = km.keymap_items.new('brush.active_index_set', 'EIGHT', 'PRESS', shift=True)1604kmi.properties.mode = 'image_paint'1605kmi.properties.index = 171606kmi = km.keymap_items.new('brush.active_index_set', 'NINE', 'PRESS', shift=True)1607kmi.properties.mode = 'image_paint'1608kmi.properties.index = 181609kmi = km.keymap_items.new('brush.active_index_set', 'ZERO', 'PRESS', shift=True)1610kmi.properties.mode = 'image_paint'1611kmi.properties.index = 191612kmi = km.keymap_items.new('brush.scale_size', 'LEFT_BRACKET', 'PRESS')1613kmi.properties.scalar = 0.89999997615814211614kmi = km.keymap_items.new('brush.scale_size', 'RIGHT_BRACKET', 'PRESS')1615kmi.properties.scalar = 1.11111116409301761616kmi = km.keymap_items.new('wm.radial_control', 'F', 'PRESS', ctrl=True)1617kmi.properties.data_path_primary = 'tool_settings.image_paint.brush.size'1618kmi.properties.data_path_secondary = 'tool_settings.unified_paint_settings.size'1619kmi.properties.use_secondary = 'tool_settings.unified_paint_settings.use_unified_size'1620kmi.properties.rotation_path = 'tool_settings.image_paint.brush.texture_slot.angle'1621kmi.properties.color_path = 'tool_settings.image_paint.brush.cursor_color_add'1622kmi.properties.fill_color_path = 'tool_settings.image_paint.brush.color'1623kmi.properties.zoom_path = 'space_data.zoom'1624kmi.properties.image_id = 'tool_settings.image_paint.brush'1625kmi = km.keymap_items.new('wm.radial_control', 'F', 'PRESS', shift=True)1626kmi.properties.data_path_primary = 'tool_settings.image_paint.brush.strength'1627kmi.properties.data_path_secondary = 'tool_settings.unified_paint_settings.strength'1628kmi.properties.use_secondary = 'tool_settings.unified_paint_settings.use_unified_strength'1629kmi.properties.rotation_path = 'tool_settings.image_paint.brush.texture_slot.angle'1630kmi.properties.color_path = 'tool_settings.image_paint.brush.cursor_color_add'1631kmi.properties.fill_color_path = 'tool_settings.image_paint.brush.color'1632kmi.properties.zoom_path = ''1633kmi.properties.image_id = 'tool_settings.image_paint.brush'1634kmi = km.keymap_items.new('wm.radial_control', 'W', 'PRESS')1635kmi.properties.data_path_primary = 'tool_settings.image_paint.brush.weight'1636kmi.properties.data_path_secondary = 'tool_settings.unified_paint_settings.weight'1637kmi.properties.use_secondary = 'tool_settings.unified_paint_settings.use_unified_weight'1638kmi.properties.rotation_path = 'tool_settings.image_paint.brush.texture_slot.angle'1639kmi.properties.color_path = 'tool_settings.image_paint.brush.cursor_color_add'1640kmi.properties.fill_color_path = 'tool_settings.image_paint.brush.color'1641kmi.properties.zoom_path = ''1642kmi.properties.image_id = 'tool_settings.image_paint.brush'1643kmi = km.keymap_items.new('wm.context_toggle', 'M', 'PRESS')1644kmi.properties.data_path = 'image_paint_object.data.use_paint_mask'1645# Map Vertex Paint1646km = kc.keymaps.new('Vertex Paint', space_type='EMPTY', region_type='WINDOW', modal=False)1647kmi = km.keymap_items.new('paint.vertex_paint', 'LEFTMOUSE', 'PRESS')1648kmi = km.keymap_items.new('paint.sample_color', 'RIGHTMOUSE', 'PRESS')1649kmi = km.keymap_items.new('paint.vertex_color_set', 'K', 'PRESS', shift=True)1650kmi = km.keymap_items.new('brush.active_index_set', 'ONE', 'PRESS')1651kmi.properties.mode = 'vertex_paint'1652kmi.properties.index = 01653kmi = km.keymap_items.new('brush.active_index_set', 'TWO', 'PRESS')1654kmi.properties.mode = 'vertex_paint'1655kmi.properties.index = 11656kmi = km.keymap_items.new('brush.active_index_set', 'THREE', 'PRESS')1657kmi.properties.mode = 'vertex_paint'1658kmi.properties.index = 21659kmi = km.keymap_items.new('brush.active_index_set', 'FOUR', 'PRESS')1660kmi.properties.mode = 'vertex_paint'1661kmi.properties.index = 31662kmi = km.keymap_items.new('brush.active_index_set', 'FIVE', 'PRESS')1663kmi.properties.mode = 'vertex_paint'1664kmi.properties.index = 41665kmi = km.keymap_items.new('brush.active_index_set', 'SIX', 'PRESS')1666kmi.properties.mode = 'vertex_paint'1667kmi.properties.index = 51668kmi = km.keymap_items.new('brush.active_index_set', 'SEVEN', 'PRESS')1669kmi.properties.mode = 'vertex_paint'1670kmi.properties.index = 61671kmi = km.keymap_items.new('brush.active_index_set', 'EIGHT', 'PRESS')1672kmi.properties.mode = 'vertex_paint'1673kmi.properties.index = 71674kmi = km.keymap_items.new('brush.active_index_set', 'NINE', 'PRESS')1675kmi.properties.mode = 'vertex_paint'1676kmi.properties.index = 81677kmi = km.keymap_items.new('brush.active_index_set', 'ZERO', 'PRESS')1678kmi.properties.mode = 'vertex_paint'1679kmi.properties.index = 91680kmi = km.keymap_items.new('brush.active_index_set', 'ONE', 'PRESS', shift=True)1681kmi.properties.mode = 'vertex_paint'1682kmi.properties.index = 101683kmi = km.keymap_items.new('brush.active_index_set', 'TWO', 'PRESS', shift=True)1684kmi.properties.mode = 'vertex_paint'1685kmi.properties.index = 111686kmi = km.keymap_items.new('brush.active_index_set', 'THREE', 'PRESS', shift=True)1687kmi.properties.mode = 'vertex_paint'1688kmi.properties.index = 121689kmi = km.keymap_items.new('brush.active_index_set', 'FOUR', 'PRESS', shift=True)1690kmi.properties.mode = 'vertex_paint'1691kmi.properties.index = 131692kmi = km.keymap_items.new('brush.active_index_set', 'FIVE', 'PRESS', shift=True)1693kmi.properties.mode = 'vertex_paint'1694kmi.properties.index = 141695kmi = km.keymap_items.new('brush.active_index_set', 'SIX', 'PRESS', shift=True)1696kmi.properties.mode = 'vertex_paint'1697kmi.properties.index = 151698kmi = km.keymap_items.new('brush.active_index_set', 'SEVEN', 'PRESS', shift=True)1699kmi.properties.mode = 'vertex_paint'1700kmi.properties.index = 161701kmi = km.keymap_items.new('brush.active_index_set', 'EIGHT', 'PRESS', shift=True)1702kmi.properties.mode = 'vertex_paint'1703kmi.properties.index = 171704kmi = km.keymap_items.new('brush.active_index_set', 'NINE', 'PRESS', shift=True)1705kmi.properties.mode = 'vertex_paint'1706kmi.properties.index = 181707kmi = km.keymap_items.new('brush.active_index_set', 'ZERO', 'PRESS', shift=True)1708kmi.properties.mode = 'vertex_paint'1709kmi.properties.index = 191710kmi = km.keymap_items.new('brush.scale_size', 'LEFT_BRACKET', 'PRESS')1711kmi.properties.scalar = 0.89999997615814211712kmi = km.keymap_items.new('brush.scale_size', 'RIGHT_BRACKET', 'PRESS')1713kmi.properties.scalar = 1.11111116409301761714kmi = km.keymap_items.new('wm.radial_control', 'F', 'PRESS', ctrl=True)1715kmi.properties.data_path_primary = 'tool_settings.vertex_paint.brush.size'1716kmi.properties.data_path_secondary = 'tool_settings.unified_paint_settings.size'1717kmi.properties.use_secondary = 'tool_settings.unified_paint_settings.use_unified_size'1718kmi.properties.rotation_path = 'tool_settings.vertex_paint.brush.texture_slot.angle'1719kmi.properties.color_path = 'tool_settings.vertex_paint.brush.cursor_color_add'1720kmi.properties.fill_color_path = 'tool_settings.vertex_paint.brush.color'1721kmi.properties.zoom_path = ''1722kmi.properties.image_id = 'tool_settings.vertex_paint.brush'1723kmi = km.keymap_items.new('wm.radial_control', 'F', 'PRESS', shift=True)1724kmi.properties.data_path_primary = 'tool_settings.vertex_paint.brush.strength'1725kmi.properties.data_path_secondary = 'tool_settings.unified_paint_settings.strength'1726kmi.properties.use_secondary = 'tool_settings.unified_paint_settings.use_unified_strength'1727kmi.properties.rotation_path = 'tool_settings.vertex_paint.brush.texture_slot.angle'1728kmi.properties.color_path = 'tool_settings.vertex_paint.brush.cursor_color_add'1729kmi.properties.fill_color_path = 'tool_settings.vertex_paint.brush.color'1730kmi.properties.zoom_path = ''1731kmi.properties.image_id = 'tool_settings.vertex_paint.brush'1732kmi = km.keymap_items.new('wm.radial_control', 'Q', 'PRESS')1733kmi.properties.data_path_primary = 'tool_settings.vertex_paint.brush.weight'1734kmi.properties.data_path_secondary = 'tool_settings.unified_paint_settings.weight'1735kmi.properties.use_secondary = 'tool_settings.unified_paint_settings.use_unified_weight'1736kmi.properties.rotation_path = 'tool_settings.vertex_paint.brush.texture_slot.angle'1737kmi.properties.color_path = 'tool_settings.vertex_paint.brush.cursor_color_add'1738kmi.properties.fill_color_path = 'tool_settings.vertex_paint.brush.color'1739kmi.properties.zoom_path = ''1740kmi.properties.image_id = 'tool_settings.vertex_paint.brush'1741kmi = km.keymap_items.new('wm.context_toggle', 'M', 'PRESS')1742kmi.properties.data_path = 'vertex_paint_object.data.use_paint_mask'1743# Map Weight Paint1744km = kc.keymaps.new('Weight Paint', space_type='EMPTY', region_type='WINDOW', modal=False)1745kmi = km.keymap_items.new('paint.weight_paint', 'LEFTMOUSE', 'PRESS')1746kmi = km.keymap_items.new('paint.weight_sample', 'ACTIONMOUSE', 'PRESS', ctrl=True)1747kmi = km.keymap_items.new('paint.weight_sample_group', 'ACTIONMOUSE', 'PRESS', shift=True)1748kmi = km.keymap_items.new('paint.weight_gradient', 'LEFTMOUSE', 'PRESS', alt=True)1749kmi.properties.type = 'LINEAR'1750kmi = km.keymap_items.new('paint.weight_gradient', 'LEFTMOUSE', 'PRESS', ctrl=True, alt=True)1751kmi.properties.type = 'RADIAL'1752kmi = km.keymap_items.new('paint.weight_set', 'K', 'PRESS', shift=True)1753kmi = km.keymap_items.new('brush.active_index_set', 'ONE', 'PRESS')1754kmi.properties.mode = 'weight_paint'1755kmi.properties.index = 01756kmi = km.keymap_items.new('brush.active_index_set', 'TWO', 'PRESS')1757kmi.properties.mode = 'weight_paint'1758kmi.properties.index = 11759kmi = km.keymap_items.new('brush.active_index_set', 'THREE', 'PRESS')1760kmi.properties.mode = 'weight_paint'1761kmi.properties.index = 21762kmi = km.keymap_items.new('brush.active_index_set', 'FOUR', 'PRESS')1763kmi.properties.mode = 'weight_paint'1764kmi.properties.index = 31765kmi = km.keymap_items.new('brush.active_index_set', 'FIVE', 'PRESS')1766kmi.properties.mode = 'weight_paint'1767kmi.properties.index = 41768kmi = km.keymap_items.new('brush.active_index_set', 'SIX', 'PRESS')1769kmi.properties.mode = 'weight_paint'1770kmi.properties.index = 51771kmi = km.keymap_items.new('brush.active_index_set', 'SEVEN', 'PRESS')1772kmi.properties.mode = 'weight_paint'1773kmi.properties.index = 61774kmi = km.keymap_items.new('brush.active_index_set', 'EIGHT', 'PRESS')1775kmi.properties.mode = 'weight_paint'1776kmi.properties.index = 71777kmi = km.keymap_items.new('brush.active_index_set', 'NINE', 'PRESS')1778kmi.properties.mode = 'weight_paint'1779kmi.properties.index = 81780kmi = km.keymap_items.new('brush.active_index_set', 'ZERO', 'PRESS')1781kmi.properties.mode = 'weight_paint'1782kmi.properties.index = 91783kmi = km.keymap_items.new('brush.active_index_set', 'ONE', 'PRESS', shift=True)1784kmi.properties.mode = 'weight_paint'1785kmi.properties.index = 101786kmi = km.keymap_items.new('brush.active_index_set', 'TWO', 'PRESS', shift=True)1787kmi.properties.mode = 'weight_paint'1788kmi.properties.index = 111789kmi = km.keymap_items.new('brush.active_index_set', 'THREE', 'PRESS', shift=True)1790kmi.properties.mode = 'weight_paint'1791kmi.properties.index = 121792kmi = km.keymap_items.new('brush.active_index_set', 'FOUR', 'PRESS', shift=True)1793kmi.properties.mode = 'weight_paint'1794kmi.properties.index = 131795kmi = km.keymap_items.new('brush.active_index_set', 'FIVE', 'PRESS', shift=True)1796kmi.properties.mode = 'weight_paint'1797kmi.properties.index = 141798kmi = km.keymap_items.new('brush.active_index_set', 'SIX', 'PRESS', shift=True)1799kmi.properties.mode = 'weight_paint'1800kmi.properties.index = 151801kmi = km.keymap_items.new('brush.active_index_set', 'SEVEN', 'PRESS', shift=True)1802kmi.properties.mode = 'weight_paint'1803kmi.properties.index = 161804kmi = km.keymap_items.new('brush.active_index_set', 'EIGHT', 'PRESS', shift=True)1805kmi.properties.mode = 'weight_paint'1806kmi.properties.index = 171807kmi = km.keymap_items.new('brush.active_index_set', 'NINE', 'PRESS', shift=True)1808kmi.properties.mode = 'weight_paint'1809kmi.properties.index = 181810kmi = km.keymap_items.new('brush.active_index_set', 'ZERO', 'PRESS', shift=True)1811kmi.properties.mode = 'weight_paint'1812kmi.properties.index = 191813kmi = km.keymap_items.new('brush.scale_size', 'LEFT_BRACKET', 'PRESS')1814kmi.properties.scalar = 0.89999997615814211815kmi = km.keymap_items.new('brush.scale_size', 'RIGHT_BRACKET', 'PRESS')1816kmi.properties.scalar = 1.11111116409301761817kmi = km.keymap_items.new('wm.radial_control', 'F', 'PRESS', ctrl=True)1818kmi.properties.data_path_primary = 'tool_settings.weight_paint.brush.size'1819kmi.properties.data_path_secondary = 'tool_settings.unified_paint_settings.size'1820kmi.properties.use_secondary = 'tool_settings.unified_paint_settings.use_unified_size'1821kmi.properties.rotation_path = 'tool_settings.weight_paint.brush.texture_slot.angle'1822kmi.properties.color_path = 'tool_settings.weight_paint.brush.cursor_color_add'1823kmi.properties.fill_color_path = ''1824kmi.properties.zoom_path = ''1825kmi.properties.image_id = 'tool_settings.weight_paint.brush'1826kmi = km.keymap_items.new('wm.radial_control', 'F', 'PRESS', shift=True)1827kmi.properties.data_path_primary = 'tool_settings.weight_paint.brush.strength'1828kmi.properties.data_path_secondary = 'tool_settings.unified_paint_settings.strength'1829kmi.properties.use_secondary = 'tool_settings.unified_paint_settings.use_unified_strength'1830kmi.properties.rotation_path = 'tool_settings.weight_paint.brush.texture_slot.angle'1831kmi.properties.color_path = 'tool_settings.weight_paint.brush.cursor_color_add'1832kmi.properties.fill_color_path = ''1833kmi.properties.zoom_path = ''1834kmi.properties.image_id = 'tool_settings.weight_paint.brush'1835kmi = km.keymap_items.new('wm.radial_control', 'Q', 'PRESS')1836kmi.properties.data_path_primary = 'tool_settings.weight_paint.brush.weight'1837kmi.properties.data_path_secondary = 'tool_settings.unified_paint_settings.weight'1838kmi.properties.use_secondary = 'tool_settings.unified_paint_settings.use_unified_weight'1839kmi.properties.rotation_path = 'tool_settings.weight_paint.brush.texture_slot.angle'1840kmi.properties.color_path = 'tool_settings.weight_paint.brush.cursor_color_add'1841kmi.properties.fill_color_path = ''1842kmi.properties.zoom_path = ''1843kmi.properties.image_id = 'tool_settings.weight_paint.brush'1844kmi = km.keymap_items.new('wm.context_toggle', 'M', 'PRESS')1845kmi.properties.data_path = 'weight_paint_object.data.use_paint_mask'1846kmi = km.keymap_items.new('wm.context_toggle', 'V', 'PRESS')1847kmi.properties.data_path = 'weight_paint_object.data.use_paint_mask_vertex'1848kmi = km.keymap_items.new('paint.weight_from_bones', 'Q', 'PRESS')1849# Map Sculpt1850km = kc.keymaps.new('Sculpt', space_type='EMPTY', region_type='WINDOW', modal=False)1851kmi = km.keymap_items.new('sculpt.brush_stroke', 'LEFTMOUSE', 'PRESS')1852kmi.properties.mode = 'NORMAL'1853kmi = km.keymap_items.new('sculpt.brush_stroke', 'LEFTMOUSE', 'PRESS', ctrl=True)1854kmi.properties.mode = 'INVERT'1855kmi = km.keymap_items.new('sculpt.brush_stroke', 'LEFTMOUSE', 'PRESS', shift=True)1856kmi.properties.mode = 'SMOOTH'1857kmi = km.keymap_items.new('paint.hide_show', 'H', 'PRESS', shift=True)1858kmi.properties.action = 'SHOW'1859kmi.properties.area = 'INSIDE'1860kmi = km.keymap_items.new('paint.hide_show', 'H', 'PRESS')1861kmi.properties.action = 'HIDE'1862kmi.properties.area = 'INSIDE'1863kmi = km.keymap_items.new('paint.hide_show', 'H', 'PRESS', alt=True)1864kmi.properties.action = 'SHOW'1865kmi.properties.area = 'ALL'1866kmi = km.keymap_items.new('object.subdivision_set', 'ZERO', 'PRESS', ctrl=True)1867kmi.properties.level = 01868kmi = km.keymap_items.new('object.subdivision_set', 'ONE', 'PRESS', ctrl=True)1869kmi.properties.level = 11870kmi = km.keymap_items.new('object.subdivision_set', 'TWO', 'PRESS', ctrl=True)1871kmi.properties.level = 21872kmi = km.keymap_items.new('object.subdivision_set', 'THREE', 'PRESS', ctrl=True)1873kmi.properties.level = 31874kmi = km.keymap_items.new('object.subdivision_set', 'FOUR', 'PRESS', ctrl=True)1875kmi.properties.level = 41876kmi = km.keymap_items.new('object.subdivision_set', 'FIVE', 'PRESS', ctrl=True)1877kmi.properties.level = 51878kmi = km.keymap_items.new('paint.mask_flood_fill', 'M', 'PRESS', alt=True)1879kmi.properties.mode = 'VALUE'1880kmi.properties.value = 0.01881kmi = km.keymap_items.new('paint.mask_flood_fill', 'I', 'PRESS', ctrl=True)1882kmi.properties.mode = 'INVERT'1883kmi = km.keymap_items.new('sculpt.dynamic_topology_toggle', 'D', 'PRESS', ctrl=True)1884kmi = km.keymap_items.new('wm.radial_control', 'D', 'PRESS', shift=True)1885kmi.properties.data_path_primary = 'tool_settings.sculpt.detail_size'1886kmi.properties.data_path_secondary = ''1887kmi.properties.use_secondary = ''1888kmi.properties.rotation_path = 'tool_settings.sculpt.brush.texture_slot.angle'1889kmi.properties.color_path = 'tool_settings.sculpt.brush.cursor_color_add'1890kmi.properties.fill_color_path = ''1891kmi.properties.zoom_path = ''1892kmi.properties.image_id = 'tool_settings.sculpt.brush'1893kmi = km.keymap_items.new('object.subdivision_set', 'PAGE_UP', 'PRESS')1894kmi.properties.level = 11895kmi.properties.relative = True1896kmi = km.keymap_items.new('object.subdivision_set', 'PAGE_DOWN', 'PRESS')1897kmi.properties.level = -11898kmi.properties.relative = True1899kmi = km.keymap_items.new('brush.active_index_set', 'ONE', 'PRESS')1900kmi.properties.mode = 'sculpt'1901kmi.properties.index = 01902kmi = km.keymap_items.new('brush.active_index_set', 'TWO', 'PRESS')1903kmi.properties.mode = 'sculpt'1904kmi.properties.index = 11905kmi = km.keymap_items.new('brush.active_index_set', 'THREE', 'PRESS')1906kmi.properties.mode = 'sculpt'1907kmi.properties.index = 21908kmi = km.keymap_items.new('brush.active_index_set', 'FOUR', 'PRESS')1909kmi.properties.mode = 'sculpt'1910kmi.properties.index = 31911kmi = km.keymap_items.new('brush.active_index_set', 'FIVE', 'PRESS')1912kmi.properties.mode = 'sculpt'1913kmi.properties.index = 41914kmi = km.keymap_items.new('brush.active_index_set', 'SIX', 'PRESS')1915kmi.properties.mode = 'sculpt'1916kmi.properties.index = 51917kmi = km.keymap_items.new('brush.active_index_set', 'SEVEN', 'PRESS')1918kmi.properties.mode = 'sculpt'1919kmi.properties.index = 61920kmi = km.keymap_items.new('brush.active_index_set', 'EIGHT', 'PRESS')1921kmi.properties.mode = 'sculpt'1922kmi.properties.index = 71923kmi = km.keymap_items.new('brush.active_index_set', 'NINE', 'PRESS')1924kmi.properties.mode = 'sculpt'1925kmi.properties.index = 81926kmi = km.keymap_items.new('brush.active_index_set', 'ZERO', 'PRESS')1927kmi.properties.mode = 'sculpt'1928kmi.properties.index = 91929kmi = km.keymap_items.new('brush.active_index_set', 'ONE', 'PRESS', shift=True)1930kmi.properties.mode = 'sculpt'1931kmi.properties.index = 101932kmi = km.keymap_items.new('brush.active_index_set', 'TWO', 'PRESS', shift=True)1933kmi.properties.mode = 'sculpt'1934kmi.properties.index = 111935kmi = km.keymap_items.new('brush.active_index_set', 'THREE', 'PRESS', shift=True)1936kmi.properties.mode = 'sculpt'1937kmi.properties.index = 121938kmi = km.keymap_items.new('brush.active_index_set', 'FOUR', 'PRESS', shift=True)1939kmi.properties.mode = 'sculpt'1940kmi.properties.index = 131941kmi = km.keymap_items.new('brush.active_index_set', 'FIVE', 'PRESS', shift=True)1942kmi.properties.mode = 'sculpt'1943kmi.properties.index = 141944kmi = km.keymap_items.new('brush.active_index_set', 'SIX', 'PRESS', shift=True)1945kmi.properties.mode = 'sculpt'1946kmi.properties.index = 151947kmi = km.keymap_items.new('brush.active_index_set', 'SEVEN', 'PRESS', shift=True)1948kmi.properties.mode = 'sculpt'1949kmi.properties.index = 161950kmi = km.keymap_items.new('brush.active_index_set', 'EIGHT', 'PRESS', shift=True)1951kmi.properties.mode = 'sculpt'1952kmi.properties.index = 171953kmi = km.keymap_items.new('brush.active_index_set', 'NINE', 'PRESS', shift=True)1954kmi.properties.mode = 'sculpt'1955kmi.properties.index = 181956kmi = km.keymap_items.new('brush.active_index_set', 'ZERO', 'PRESS', shift=True)1957kmi.properties.mode = 'sculpt'1958kmi.properties.index = 191959kmi = km.keymap_items.new('brush.scale_size', 'LEFT_BRACKET', 'PRESS')1960kmi.properties.scalar = 0.89999997615814211961kmi = km.keymap_items.new('brush.scale_size', 'RIGHT_BRACKET', 'PRESS')1962kmi.properties.scalar = 1.11111116409301761963kmi = km.keymap_items.new('wm.radial_control', 'F', 'PRESS', ctrl=True)1964kmi.properties.data_path_primary = 'tool_settings.sculpt.brush.size'1965kmi.properties.data_path_secondary = 'tool_settings.unified_paint_settings.size'1966kmi.properties.use_secondary = 'tool_settings.unified_paint_settings.use_unified_size'1967kmi.properties.rotation_path = 'tool_settings.sculpt.brush.texture_slot.angle'1968kmi.properties.color_path = 'tool_settings.sculpt.brush.cursor_color_add'1969kmi.properties.fill_color_path = ''1970kmi.properties.zoom_path = ''1971kmi.properties.image_id = 'tool_settings.sculpt.brush'1972kmi = km.keymap_items.new('wm.radial_control', 'F', 'PRESS', shift=True)1973kmi.properties.data_path_primary = 'tool_settings.sculpt.brush.strength'1974kmi.properties.data_path_secondary = 'tool_settings.unified_paint_settings.strength'1975kmi.properties.use_secondary = 'tool_settings.unified_paint_settings.use_unified_strength'1976kmi.properties.rotation_path = 'tool_settings.sculpt.brush.texture_slot.angle'1977kmi.properties.color_path = 'tool_settings.sculpt.brush.cursor_color_add'1978kmi.properties.fill_color_path = ''1979kmi.properties.zoom_path = ''1980kmi.properties.image_id = 'tool_settings.sculpt.brush'1981kmi = km.keymap_items.new('wm.radial_control', 'W', 'PRESS')1982kmi.properties.data_path_primary = 'tool_settings.sculpt.brush.weight'1983kmi.properties.data_path_secondary = 'tool_settings.unified_paint_settings.weight'1984kmi.properties.use_secondary = 'tool_settings.unified_paint_settings.use_unified_weight'1985kmi.properties.rotation_path = 'tool_settings.sculpt.brush.texture_slot.angle'1986kmi.properties.color_path = 'tool_settings.sculpt.brush.cursor_color_add'1987kmi.properties.fill_color_path = ''1988kmi.properties.zoom_path = ''1989kmi.properties.image_id = 'tool_settings.sculpt.brush'1990kmi = km.keymap_items.new('wm.radial_control', 'F', 'PRESS', ctrl=True)1991kmi.properties.data_path_primary = 'tool_settings.sculpt.brush.texture_slot.angle'1992kmi.properties.data_path_secondary = ''1993kmi.properties.use_secondary = ''1994kmi.properties.rotation_path = 'tool_settings.sculpt.brush.texture_slot.angle'1995kmi.properties.color_path = 'tool_settings.sculpt.brush.cursor_color_add'1996kmi.properties.fill_color_path = ''1997kmi.properties.zoom_path = ''1998kmi.properties.image_id = 'tool_settings.sculpt.brush'1999kmi = km.keymap_items.new('paint.brush_select', 'D', 'PRESS')2000kmi.properties.paint_mode = 'SCULPT'2001kmi.properties.sculpt_tool = 'DRAW'2002kmi = km.keymap_items.new('paint.brush_select', 'S', 'PRESS')2003kmi.properties.paint_mode = 'SCULPT'2004kmi.properties.sculpt_tool = 'SMOOTH'2005kmi = km.keymap_items.new('paint.brush_select', 'P', 'PRESS')2006kmi.properties.paint_mode = 'SCULPT'2007kmi.properties.sculpt_tool = 'PINCH'2008kmi = km.keymap_items.new('paint.brush_select', 'I', 'PRESS')2009kmi.properties.paint_mode = 'SCULPT'2010kmi.properties.sculpt_tool = 'INFLATE'2011kmi = km.keymap_items.new('paint.brush_select', 'G', 'PRESS')2012kmi.properties.paint_mode = 'SCULPT'2013kmi.properties.sculpt_tool = 'GRAB'2014kmi = km.keymap_items.new('paint.brush_select', 'L', 'PRESS')2015kmi.properties.paint_mode = 'SCULPT'2016kmi.properties.sculpt_tool = 'LAYER'2017kmi = km.keymap_items.new('paint.brush_select', 'T', 'PRESS', shift=True)2018kmi.properties.paint_mode = 'SCULPT'2019kmi.properties.sculpt_tool = 'FLATTEN'2020kmi = km.keymap_items.new('paint.brush_select', 'C', 'PRESS')2021kmi.properties.paint_mode = 'SCULPT'2022kmi.properties.sculpt_tool = 'CLAY'2023kmi = km.keymap_items.new('paint.brush_select', 'C', 'PRESS', shift=True)2024kmi.properties.paint_mode = 'SCULPT'2025kmi.properties.sculpt_tool = 'CREASE'2026kmi = km.keymap_items.new('paint.brush_select', 'K', 'PRESS')2027kmi.properties.paint_mode = 'SCULPT'2028kmi.properties.sculpt_tool = 'SNAKE_HOOK'2029kmi = km.keymap_items.new('paint.brush_select', 'M', 'PRESS')2030kmi.properties.paint_mode = 'SCULPT'2031kmi.properties.sculpt_tool = 'MASK'2032kmi.properties.toggle = True2033kmi.properties.create_missing = True2034kmi = km.keymap_items.new('wm.context_menu_enum', 'A', 'PRESS')2035kmi.properties.data_path = 'tool_settings.sculpt.brush.stroke_method'2036kmi = km.keymap_items.new('wm.context_toggle', 'S', 'PRESS', shift=True)2037kmi.properties.data_path = 'tool_settings.sculpt.brush.use_smooth_stroke'2038kmi = km.keymap_items.new('wm.context_menu_enum', 'R', 'PRESS')2039kmi.properties.data_path = 'tool_settings.sculpt.brush.texture_angle_source_random'2040# Map Mesh2041km = kc.keymaps.new('Mesh', space_type='EMPTY', region_type='WINDOW', modal=False)2042kmi = km.keymap_items.new('mesh.loopcut_slide', 'R', 'PRESS', ctrl=True)2043kmi = km.keymap_items.new('mesh.inset', 'I', 'PRESS')2044kmi = km.keymap_items.new('mesh.bevel', 'B', 'PRESS', ctrl=True)2045kmi.properties.vertex_only = False2046kmi = km.keymap_items.new('mesh.bevel', 'B', 'PRESS', shift=True, ctrl=True)2047kmi.properties.vertex_only = True2048kmi = km.keymap_items.new('mesh.loop_select', 'SELECTMOUSE', 'PRESS', alt=True)2049kmi.properties.extend = False2050kmi.properties.deselect = False2051kmi.properties.toggle = False2052kmi = km.keymap_items.new('mesh.loop_select', 'SELECTMOUSE', 'PRESS', shift=True, alt=True)2053kmi.properties.extend = False2054kmi.properties.deselect = False2055kmi.properties.toggle = True2056kmi = km.keymap_items.new('mesh.edgering_select', 'SELECTMOUSE', 'PRESS', ctrl=True, alt=True)2057kmi.properties.extend = False2058kmi.properties.deselect = False2059kmi.properties.toggle = False2060kmi = km.keymap_items.new('mesh.edgering_select', 'SELECTMOUSE', 'PRESS', shift=True, ctrl=True, alt=True)2061kmi.properties.extend = False2062kmi.properties.deselect = False2063kmi.properties.toggle = True2064kmi = km.keymap_items.new('mesh.shortest_path_pick', 'SELECTMOUSE', 'PRESS', ctrl=True)2065kmi = km.keymap_items.new('mesh.select_all', 'I', 'PRESS', ctrl=True)2066kmi.properties.action = 'INVERT'2067kmi = km.keymap_items.new('mesh.select_more', 'NUMPAD_PLUS', 'PRESS', ctrl=True)2068kmi = km.keymap_items.new('mesh.select_less', 'NUMPAD_MINUS', 'PRESS', ctrl=True)2069kmi = km.keymap_items.new('mesh.select_non_manifold', 'M', 'PRESS', shift=True, ctrl=True, alt=True)2070kmi = km.keymap_items.new('mesh.select_linked', 'L', 'PRESS', ctrl=True)2071kmi = km.keymap_items.new('mesh.select_linked_pick', 'L', 'PRESS', alt=True)2072kmi.properties.deselect = False2073kmi = km.keymap_items.new('mesh.select_linked_pick', 'L', 'PRESS', shift=True)2074kmi.properties.deselect = True2075kmi = km.keymap_items.new('mesh.faces_select_linked_flat', 'F', 'PRESS', shift=True, ctrl=True, alt=True)2076kmi = km.keymap_items.new('mesh.select_similar', 'G', 'PRESS', shift=True)2077kmi = km.keymap_items.new('wm.call_menu', 'TAB', 'PRESS', ctrl=True)2078kmi.properties.name = 'VIEW3D_MT_edit_mesh_select_mode'2079kmi = km.keymap_items.new('mesh.hide', 'H', 'PRESS')2080kmi.properties.unselected = False2081kmi = km.keymap_items.new('mesh.hide', 'H', 'PRESS', shift=True)2082kmi.properties.unselected = True2083kmi = km.keymap_items.new('mesh.reveal', 'H', 'PRESS', alt=True)2084kmi = km.keymap_items.new('mesh.normals_make_consistent', 'N', 'PRESS', ctrl=True)2085kmi.properties.inside = False2086kmi = km.keymap_items.new('mesh.normals_make_consistent', 'N', 'PRESS', shift=True, ctrl=True)2087kmi.properties.inside = True2088kmi = km.keymap_items.new('view3d.edit_mesh_extrude_move_normal', 'E', 'PRESS')2089kmi = km.keymap_items.new('wm.call_menu', 'E', 'PRESS', alt=True)2090kmi.properties.name = 'VIEW3D_MT_edit_mesh_extrude'2091kmi = km.keymap_items.new('transform.edge_crease', 'E', 'PRESS', shift=True)2092kmi = km.keymap_items.new('mesh.spin', 'R', 'PRESS', alt=True)2093kmi = km.keymap_items.new('mesh.fill', 'F', 'PRESS', alt=True)2094kmi = km.keymap_items.new('mesh.beautify_fill', 'F', 'PRESS', shift=True, alt=True)2095kmi = km.keymap_items.new('mesh.quads_convert_to_tris', 'T', 'PRESS', ctrl=True)2096kmi.properties.quad_method = 'BEAUTY'2097kmi.properties.ngon_method = 'BEAUTY'2098kmi = km.keymap_items.new('mesh.quads_convert_to_tris', 'T', 'PRESS', shift=True, ctrl=True)2099kmi.properties.quad_method = 'FIXED'2100kmi.properties.ngon_method = 'CLIP'2101kmi = km.keymap_items.new('mesh.tris_convert_to_quads', 'J', 'PRESS', alt=True)2102kmi = km.keymap_items.new('mesh.rip_move', 'V', 'PRESS')2103kmi = km.keymap_items.new('mesh.rip_move_fill', 'V', 'PRESS', alt=True)2104kmi = km.keymap_items.new('mesh.merge', 'M', 'PRESS', alt=True)2105kmi = km.keymap_items.new('transform.shrink_fatten', 'S', 'PRESS', alt=True)2106kmi = km.keymap_items.new('mesh.edge_face_add', 'F', 'PRESS', ctrl=True)2107kmi = km.keymap_items.new('mesh.duplicate_move', 'D', 'PRESS', shift=True)2108kmi = km.keymap_items.new('wm.call_menu', 'A', 'PRESS', shift=True)2109kmi.properties.name = 'INFO_MT_mesh_add'2110kmi = km.keymap_items.new('mesh.separate', 'P', 'PRESS')2111kmi = km.keymap_items.new('mesh.split', 'Y', 'PRESS')2112kmi = km.keymap_items.new('mesh.vert_connect', 'J', 'PRESS')2113kmi = km.keymap_items.new('transform.vert_slide', 'V', 'PRESS', shift=True)2114kmi = km.keymap_items.new('mesh.dupli_extrude_cursor', 'ACTIONMOUSE', 'CLICK', ctrl=True)2115kmi.properties.rotate_source = True2116kmi = km.keymap_items.new('mesh.dupli_extrude_cursor', 'ACTIONMOUSE', 'CLICK', shift=True, ctrl=True)2117kmi.properties.rotate_source = False2118kmi = km.keymap_items.new('wm.call_menu', 'X', 'PRESS')2119kmi.properties.name = 'VIEW3D_MT_edit_mesh_delete'2120kmi = km.keymap_items.new('wm.call_menu', 'DEL', 'PRESS')2121kmi.properties.name = 'VIEW3D_MT_edit_mesh_delete'2122kmi = km.keymap_items.new('mesh.knife_tool', 'K', 'PRESS')2123kmi.properties.use_occlude_geometry = True2124kmi.properties.only_selected = False2125kmi = km.keymap_items.new('mesh.knife_tool', 'K', 'PRESS', shift=True)2126kmi.properties.use_occlude_geometry = False2127kmi.properties.only_selected = True2128kmi = km.keymap_items.new('object.vertex_parent_set', 'P', 'PRESS', ctrl=True)2129kmi = km.keymap_items.new('wm.call_menu', 'Q', 'PRESS')2130kmi.properties.name = 'VIEW3D_MT_edit_mesh_specials'2131kmi = km.keymap_items.new('wm.call_menu', 'F', 'PRESS', ctrl=True)2132kmi.properties.name = 'VIEW3D_MT_edit_mesh_faces'2133kmi = km.keymap_items.new('wm.call_menu', 'E', 'PRESS', ctrl=True)2134kmi.properties.name = 'VIEW3D_MT_edit_mesh_edges'2135kmi = km.keymap_items.new('wm.call_menu', 'V', 'PRESS', ctrl=True)2136kmi.properties.name = 'VIEW3D_MT_edit_mesh_vertices'2137kmi = km.keymap_items.new('wm.call_menu', 'H', 'PRESS', ctrl=True)2138kmi.properties.name = 'VIEW3D_MT_hook'2139kmi = km.keymap_items.new('wm.call_menu', 'U', 'PRESS')2140kmi.properties.name = 'VIEW3D_MT_uv_map'2141kmi = km.keymap_items.new('wm.call_menu', 'G', 'PRESS', ctrl=True)2142kmi.properties.name = 'VIEW3D_MT_vertex_group'2143kmi = km.keymap_items.new('object.subdivision_set', 'ZERO', 'PRESS', ctrl=True)2144kmi.properties.level = 02145kmi = km.keymap_items.new('object.subdivision_set', 'ONE', 'PRESS', ctrl=True)2146kmi.properties.level = 12147kmi = km.keymap_items.new('object.subdivision_set', 'TWO', 'PRESS', ctrl=True)2148kmi.properties.level = 22149kmi = km.keymap_items.new('object.subdivision_set', 'THREE', 'PRESS', ctrl=True)2150kmi.properties.level = 32151kmi = km.keymap_items.new('object.subdivision_set', 'FOUR', 'PRESS', ctrl=True)2152kmi.properties.level = 42153kmi = km.keymap_items.new('object.subdivision_set', 'FIVE', 'PRESS', ctrl=True)2154kmi.properties.level = 52155kmi = km.keymap_items.new('wm.context_cycle_enum', 'O', 'PRESS', shift=True)2156kmi.properties.data_path = 'tool_settings.proportional_edit_falloff'2157kmi = km.keymap_items.new('wm.context_toggle_enum', 'O', 'PRESS')2158kmi.properties.data_path = 'tool_settings.proportional_edit'2159kmi.properties.value_1 = 'DISABLED'2160kmi.properties.value_2 = 'ENABLED'2161kmi = km.keymap_items.new('wm.context_toggle_enum', 'O', 'PRESS', alt=True)2162kmi.properties.data_path = 'tool_settings.proportional_edit'2163kmi.properties.value_1 = 'DISABLED'2164kmi.properties.value_2 = 'CONNECTED'2165kmi = km.keymap_items.new('wm.context_set_value', 'ONE', 'PRESS')2166kmi.properties.data_path = 'tool_settings.mesh_select_mode'2167kmi.properties.value = '(True,False,False)'2168kmi = km.keymap_items.new('wm.context_set_value', 'TWO', 'PRESS')2169kmi.properties.data_path = 'tool_settings.mesh_select_mode'2170kmi.properties.value = '(False,True,False)'2171kmi = km.keymap_items.new('wm.context_set_value', 'THREE', 'PRESS')2172kmi.properties.data_path = 'tool_settings.mesh_select_mode'2173kmi.properties.value = '(False,False,True)'2174# Map Curve2175km = kc.keymaps.new('Curve', space_type='EMPTY', region_type='WINDOW', modal=False)2176kmi = km.keymap_items.new('wm.call_menu', 'A', 'PRESS', shift=True)2177kmi.properties.name = 'INFO_MT_edit_curve_add'2178kmi = km.keymap_items.new('curve.handle_type_set', 'V', 'PRESS')2179kmi = km.keymap_items.new('curve.vertex_add', 'LEFTMOUSE', 'CLICK', ctrl=True)2180kmi = km.keymap_items.new('curve.select_all', 'LEFTMOUSE', 'CLICK')2181kmi.properties.action = 'TOGGLE'2182kmi = km.keymap_items.new('curve.select_all', 'I', 'PRESS', ctrl=True)2183kmi.properties.action = 'INVERT'2184kmi = km.keymap_items.new('curve.select_row', 'R', 'PRESS', shift=True)2185kmi = km.keymap_items.new('curve.select_more', 'NUMPAD_PLUS', 'PRESS', ctrl=True)2186kmi = km.keymap_items.new('curve.select_less', 'NUMPAD_MINUS', 'PRESS', ctrl=True)2187kmi = km.keymap_items.new('curve.select_linked', 'L', 'PRESS', ctrl=True)2188kmi = km.keymap_items.new('curve.select_linked_pick', 'L', 'PRESS')2189kmi.properties.deselect = False2190kmi = km.keymap_items.new('curve.select_linked_pick', 'L', 'PRESS', shift=True)2191kmi.properties.deselect = True2192kmi = km.keymap_items.new('curve.separate', 'P', 'PRESS')2193kmi = km.keymap_items.new('curve.extrude_move', 'E', 'PRESS')2194kmi = km.keymap_items.new('curve.duplicate_move', 'D', 'PRESS', shift=True)2195kmi = km.keymap_items.new('curve.make_segment', 'F', 'PRESS', ctrl=True)2196kmi = km.keymap_items.new('curve.cyclic_toggle', 'C', 'PRESS', alt=True)2197kmi = km.keymap_items.new('curve.delete', 'X', 'PRESS')2198kmi = km.keymap_items.new('curve.delete', 'DEL', 'PRESS')2199kmi = km.keymap_items.new('curve.tilt_clear', 'T', 'PRESS', alt=True)2200kmi = km.keymap_items.new('transform.tilt', 'T', 'PRESS', ctrl=True)2201kmi = km.keymap_items.new('transform.transform', 'S', 'PRESS', alt=True)2202kmi.properties.mode = 'CURVE_SHRINKFATTEN'2203kmi = km.keymap_items.new('curve.reveal', 'H', 'PRESS', alt=True)2204kmi = km.keymap_items.new('curve.hide', 'H', 'PRESS')2205kmi.properties.unselected = False2206kmi = km.keymap_items.new('curve.hide', 'H', 'PRESS', shift=True)2207kmi.properties.unselected = True2208kmi = km.keymap_items.new('object.vertex_parent_set', 'P', 'PRESS', ctrl=True)2209kmi = km.keymap_items.new('wm.call_menu', 'Q', 'PRESS')2210kmi.properties.name = 'VIEW3D_MT_edit_curve_specials'2211kmi = km.keymap_items.new('wm.call_menu', 'H', 'PRESS', ctrl=True)2212kmi.properties.name = 'VIEW3D_MT_hook'2213kmi = km.keymap_items.new('wm.context_cycle_enum', 'O', 'PRESS', shift=True)2214kmi.properties.data_path = 'tool_settings.proportional_edit_falloff'2215kmi = km.keymap_items.new('wm.context_toggle_enum', 'O', 'PRESS')2216kmi.properties.data_path = 'tool_settings.proportional_edit'2217kmi.properties.value_1 = 'DISABLED'2218kmi.properties.value_2 = 'ENABLED'2219kmi = km.keymap_items.new('wm.context_toggle_enum', 'O', 'PRESS', alt=True)2220kmi.properties.data_path = 'tool_settings.proportional_edit'2221kmi.properties.value_1 = 'DISABLED'2222kmi.properties.value_2 = 'CONNECTED'2223# Map Armature2224km = kc.keymaps.new('Armature', space_type='EMPTY', region_type='WINDOW', modal=False)2225kmi = km.keymap_items.new('sketch.delete', 'X', 'PRESS')2226kmi = km.keymap_items.new('sketch.delete', 'DEL', 'PRESS')2227kmi = km.keymap_items.new('sketch.finish_stroke', 'RIGHTMOUSE', 'PRESS')2228kmi = km.keymap_items.new('sketch.cancel_stroke', 'ESC', 'PRESS')2229kmi = km.keymap_items.new('sketch.gesture', 'LEFTMOUSE', 'PRESS', shift=True)2230kmi = km.keymap_items.new('sketch.draw_stroke', 'LEFTMOUSE', 'PRESS')2231kmi = km.keymap_items.new('sketch.draw_stroke', 'LEFTMOUSE', 'PRESS', ctrl=True)2232kmi.properties.snap = True2233kmi = km.keymap_items.new('sketch.draw_preview', 'MOUSEMOVE', 'ANY')2234kmi = km.keymap_items.new('sketch.draw_preview', 'MOUSEMOVE', 'ANY', ctrl=True)2235kmi.properties.snap = True2236kmi = km.keymap_items.new('armature.hide', 'H', 'PRESS')2237kmi.properties.unselected = False2238kmi = km.keymap_items.new('armature.hide', 'H', 'PRESS', shift=True)2239kmi.properties.unselected = True2240kmi = km.keymap_items.new('armature.reveal', 'H', 'PRESS', alt=True)2241kmi = km.keymap_items.new('armature.align', 'A', 'PRESS', ctrl=True, alt=True)2242kmi = km.keymap_items.new('armature.calculate_roll', 'N', 'PRESS', ctrl=True)2243kmi = km.keymap_items.new('armature.switch_direction', 'F', 'PRESS', alt=True)2244kmi = km.keymap_items.new('armature.bone_primitive_add', 'A', 'PRESS', shift=True)2245kmi = km.keymap_items.new('armature.parent_set', 'P', 'PRESS', ctrl=True)2246kmi = km.keymap_items.new('armature.parent_clear', 'P', 'PRESS', alt=True)2247kmi = km.keymap_items.new('armature.select_all', 'LEFTMOUSE', 'CLICK')2248kmi.properties.action = 'TOGGLE'2249kmi = km.keymap_items.new('armature.select_all', 'I', 'PRESS', ctrl=True)2250kmi.properties.action = 'INVERT'2251kmi = km.keymap_items.new('armature.select_hierarchy', 'LEFT_BRACKET', 'PRESS')2252kmi.properties.direction = 'PARENT'2253kmi.properties.extend = False2254kmi = km.keymap_items.new('armature.select_hierarchy', 'LEFT_BRACKET', 'PRESS', shift=True)2255kmi.properties.direction = 'PARENT'2256kmi.properties.extend = True2257kmi = km.keymap_items.new('armature.select_hierarchy', 'RIGHT_BRACKET', 'PRESS')2258kmi.properties.direction = 'CHILD'2259kmi.properties.extend = False2260kmi = km.keymap_items.new('armature.select_hierarchy', 'RIGHT_BRACKET', 'PRESS', shift=True)2261kmi.properties.direction = 'CHILD'2262kmi.properties.extend = True2263kmi = km.keymap_items.new('armature.select_similar', 'G', 'PRESS', shift=True)2264kmi = km.keymap_items.new('armature.select_linked', 'L', 'PRESS')2265kmi = km.keymap_items.new('armature.delete', 'X', 'PRESS')2266kmi = km.keymap_items.new('armature.delete', 'DEL', 'PRESS')2267kmi = km.keymap_items.new('armature.duplicate_move', 'D', 'PRESS', shift=True)2268kmi = km.keymap_items.new('armature.extrude_move', 'E', 'PRESS')2269kmi = km.keymap_items.new('armature.extrude_forked', 'E', 'PRESS', shift=True)2270kmi = km.keymap_items.new('armature.click_extrude', 'LEFTMOUSE', 'CLICK', ctrl=True)2271kmi = km.keymap_items.new('armature.fill', 'F', 'PRESS', ctrl=True)2272kmi = km.keymap_items.new('armature.merge', 'M', 'PRESS', alt=True)2273kmi = km.keymap_items.new('armature.separate', 'P', 'PRESS', ctrl=True, alt=True)2274kmi = km.keymap_items.new('wm.call_menu', 'W', 'PRESS', shift=True)2275kmi.properties.name = 'VIEW3D_MT_bone_options_toggle'2276kmi = km.keymap_items.new('wm.call_menu', 'W', 'PRESS', shift=True, ctrl=True)2277kmi.properties.name = 'VIEW3D_MT_bone_options_enable'2278kmi = km.keymap_items.new('wm.call_menu', 'W', 'PRESS', alt=True)2279kmi.properties.name = 'VIEW3D_MT_bone_options_disable'2280kmi = km.keymap_items.new('armature.layers_show_all', 'ACCENT_GRAVE', 'PRESS', ctrl=True)2281kmi = km.keymap_items.new('armature.armature_layers', 'M', 'PRESS', shift=True)2282kmi = km.keymap_items.new('armature.bone_layers', 'M', 'PRESS')2283kmi = km.keymap_items.new('transform.transform', 'S', 'PRESS', ctrl=True, alt=True)2284kmi.properties.mode = 'BONE_SIZE'2285kmi = km.keymap_items.new('transform.transform', 'R', 'PRESS', ctrl=True)2286kmi.properties.mode = 'BONE_ROLL'2287kmi = km.keymap_items.new('wm.call_menu', 'Q', 'PRESS')2288kmi.properties.name = 'VIEW3D_MT_armature_specials'2289# Map Metaball2290km = kc.keymaps.new('Metaball', space_type='EMPTY', region_type='WINDOW', modal=False)2291kmi = km.keymap_items.new('object.metaball_add', 'A', 'PRESS', shift=True)2292kmi = km.keymap_items.new('mball.reveal_metaelems', 'H', 'PRESS', alt=True)2293kmi = km.keymap_items.new('mball.hide_metaelems', 'H', 'PRESS')2294kmi.properties.unselected = False2295kmi = km.keymap_items.new('mball.hide_metaelems', 'H', 'PRESS', shift=True)2296kmi.properties.unselected = True2297kmi = km.keymap_items.new('mball.delete_metaelems', 'X', 'PRESS')2298kmi = km.keymap_items.new('mball.delete_metaelems', 'DEL', 'PRESS')2299kmi = km.keymap_items.new('mball.duplicate_metaelems', 'D', 'PRESS', shift=True)2300kmi = km.keymap_items.new('mball.select_all', 'LEFTMOUSE', 'CLICK')2301kmi.properties.action = 'TOGGLE'2302kmi = km.keymap_items.new('mball.select_all', 'I', 'PRESS', ctrl=True)2303kmi.properties.action = 'INVERT'2304kmi = km.keymap_items.new('wm.context_cycle_enum', 'O', 'PRESS', shift=True)2305kmi.properties.data_path = 'tool_settings.proportional_edit_falloff'2306kmi = km.keymap_items.new('wm.context_toggle_enum', 'O', 'PRESS')2307kmi.properties.data_path = 'tool_settings.proportional_edit'2308kmi.properties.value_1 = 'DISABLED'2309kmi.properties.value_2 = 'ENABLED'2310kmi = km.keymap_items.new('wm.context_toggle_enum', 'O', 'PRESS', alt=True)2311kmi.properties.data_path = 'tool_settings.proportional_edit'2312kmi.properties.value_1 = 'DISABLED'2313kmi.properties.value_2 = 'CONNECTED'2314# Map Lattice2315km = kc.keymaps.new('Lattice', space_type='EMPTY', region_type='WINDOW', modal=False)2316kmi = km.keymap_items.new('lattice.select_all', 'LEFTMOUSE', 'CLICK')2317kmi.properties.action = 'TOGGLE'2318kmi = km.keymap_items.new('lattice.select_all', 'I', 'PRESS', ctrl=True)2319kmi.properties.action = 'INVERT'2320kmi = km.keymap_items.new('object.vertex_parent_set', 'P', 'PRESS', ctrl=True)2321kmi = km.keymap_items.new('lattice.flip', 'F', 'PRESS', ctrl=True)2322kmi = km.keymap_items.new('wm.call_menu', 'H', 'PRESS', ctrl=True)2323kmi.properties.name = 'VIEW3D_MT_hook'2324kmi = km.keymap_items.new('wm.context_cycle_enum', 'O', 'PRESS', shift=True)2325kmi.properties.data_path = 'tool_settings.proportional_edit_falloff'2326kmi = km.keymap_items.new('wm.context_toggle_enum', 'O', 'PRESS')2327kmi.properties.data_path = 'tool_settings.proportional_edit'2328kmi.properties.value_1 = 'DISABLED'2329kmi.properties.value_2 = 'ENABLED'2330# Map Transform Modal Map2331km = kc.keymaps.new('Transform Modal Map', space_type='EMPTY', region_type='WINDOW', modal=True)2332kmi = km.keymap_items.new_modal('CANCEL', 'ESC', 'PRESS', any=True)2333kmi = km.keymap_items.new_modal('CONFIRM', 'LEFTMOUSE', 'RELEASE', any=True)2334kmi = km.keymap_items.new_modal('CONFIRM', 'RET', 'PRESS', any=True)2335kmi = km.keymap_items.new_modal('CONFIRM', 'NUMPAD_ENTER', 'PRESS', any=True)2336kmi = km.keymap_items.new_modal('TRANSLATE', 'W', 'PRESS')2337kmi = km.keymap_items.new_modal('ROTATE', 'E', 'PRESS')2338kmi = km.keymap_items.new_modal('RESIZE', 'R', 'PRESS')2339kmi = km.keymap_items.new_modal('SNAP_TOGGLE', 'TAB', 'PRESS', shift=True)2340kmi = km.keymap_items.new_modal('SNAP_INV_ON', 'LEFT_CTRL', 'PRESS', any=True)2341kmi = km.keymap_items.new_modal('SNAP_INV_OFF', 'LEFT_CTRL', 'RELEASE', any=True)2342kmi = km.keymap_items.new_modal('SNAP_INV_ON', 'RIGHT_CTRL', 'PRESS', any=True)2343kmi = km.keymap_items.new_modal('SNAP_INV_OFF', 'RIGHT_CTRL', 'RELEASE', any=True)2344kmi = km.keymap_items.new_modal('ADD_SNAP', 'A', 'PRESS')2345kmi = km.keymap_items.new_modal('REMOVE_SNAP', 'A', 'PRESS', alt=True)2346kmi = km.keymap_items.new_modal('PROPORTIONAL_SIZE_UP', 'PAGE_UP', 'PRESS')2347kmi = km.keymap_items.new_modal('PROPORTIONAL_SIZE_DOWN', 'PAGE_DOWN', 'PRESS')2348kmi = km.keymap_items.new_modal('PROPORTIONAL_SIZE_UP', 'WHEELDOWNMOUSE', 'PRESS')2349kmi = km.keymap_items.new_modal('PROPORTIONAL_SIZE_DOWN', 'WHEELUPMOUSE', 'PRESS')2350kmi = km.keymap_items.new_modal('PROPORTIONAL_SIZE', 'TRACKPADPAN', 'ANY')2351kmi = km.keymap_items.new_modal('EDGESLIDE_EDGE_NEXT', 'WHEELDOWNMOUSE', 'PRESS', alt=True)2352kmi = km.keymap_items.new_modal('EDGESLIDE_PREV_NEXT', 'WHEELUPMOUSE', 'PRESS', alt=True)2353kmi = km.keymap_items.new_modal('AUTOIK_CHAIN_LEN_UP', 'PAGE_UP', 'PRESS', shift=True)2354kmi = km.keymap_items.new_modal('AUTOIK_CHAIN_LEN_DOWN', 'PAGE_DOWN', 'PRESS', shift=True)2355kmi = km.keymap_items.new_modal('AUTOIK_CHAIN_LEN_UP', 'WHEELDOWNMOUSE', 'PRESS', shift=True)2356kmi = km.keymap_items.new_modal('AUTOIK_CHAIN_LEN_DOWN', 'WHEELUPMOUSE', 'PRESS', shift=True)2357# Map View3D Gesture Circle2358km = kc.keymaps.new('View3D Gesture Circle', space_type='EMPTY', region_type='WINDOW', modal=True)2359kmi = km.keymap_items.new_modal('CANCEL', 'ESC', 'PRESS', any=True)2360kmi = km.keymap_items.new_modal('CANCEL', 'RIGHTMOUSE', 'ANY', any=True)2361kmi = km.keymap_items.new_modal('CONFIRM', 'RET', 'PRESS', any=True)2362kmi = km.keymap_items.new_modal('CONFIRM', 'NUMPAD_ENTER', 'PRESS')2363kmi = km.keymap_items.new_modal('SELECT', 'LEFTMOUSE', 'PRESS')2364kmi = km.keymap_items.new_modal('DESELECT', 'MIDDLEMOUSE', 'PRESS')2365kmi = km.keymap_items.new_modal('NOP', 'MIDDLEMOUSE', 'RELEASE')2366kmi = km.keymap_items.new_modal('NOP', 'LEFTMOUSE', 'RELEASE')2367kmi = km.keymap_items.new_modal('SUBTRACT', 'WHEELUPMOUSE', 'PRESS')2368kmi = km.keymap_items.new_modal('SUBTRACT', 'NUMPAD_MINUS', 'PRESS')2369kmi = km.keymap_items.new_modal('ADD', 'WHEELDOWNMOUSE', 'PRESS')2370kmi = km.keymap_items.new_modal('ADD', 'NUMPAD_PLUS', 'PRESS')2371kmi = km.keymap_items.new_modal('SIZE', 'TRACKPADPAN', 'ANY')2372# Map Gesture Border2373km = kc.keymaps.new('Gesture Border', space_type='EMPTY', region_type='WINDOW', modal=True)2374kmi = km.keymap_items.new_modal('CANCEL', 'ESC', 'PRESS', any=True)2375kmi = km.keymap_items.new_modal('CANCEL', 'RIGHTMOUSE', 'PRESS', any=True)2376kmi = km.keymap_items.new_modal('BEGIN', 'LEFTMOUSE', 'PRESS')2377kmi = km.keymap_items.new_modal('SELECT', 'LEFTMOUSE', 'RELEASE', any=True)2378kmi = km.keymap_items.new_modal('SELECT', 'RIGHTMOUSE', 'RELEASE', any=True)2379kmi = km.keymap_items.new_modal('BEGIN', 'MIDDLEMOUSE', 'PRESS')...

Full Screen

Full Screen

Touchable.js

Source:Touchable.js Github

copy

Full Screen

1/**2 * Copyright (c) 2013-present, Facebook, Inc.3 *4 * This source code is licensed under the MIT license found in the5 * LICENSE file in the root directory of this source tree.6 *7 * @format8 */9'use strict';10const BoundingDimensions = require('BoundingDimensions');11const Platform = require('Platform');12const Position = require('Position');13const React = require('React');14const ReactNative = require('ReactNative');15const TVEventHandler = require('TVEventHandler');16const TouchEventUtils = require('fbjs/lib/TouchEventUtils');17const UIManager = require('UIManager');18const View = require('View');19const keyMirror = require('fbjs/lib/keyMirror');20const normalizeColor = require('normalizeColor');21/**22 * `Touchable`: Taps done right.23 *24 * You hook your `ResponderEventPlugin` events into `Touchable`. `Touchable`25 * will measure time/geometry and tells you when to give feedback to the user.26 *27 * ====================== Touchable Tutorial ===============================28 * The `Touchable` mixin helps you handle the "press" interaction. It analyzes29 * the geometry of elements, and observes when another responder (scroll view30 * etc) has stolen the touch lock. It notifies your component when it should31 * give feedback to the user. (bouncing/highlighting/unhighlighting).32 *33 * - When a touch was activated (typically you highlight)34 * - When a touch was deactivated (typically you unhighlight)35 * - When a touch was "pressed" - a touch ended while still within the geometry36 * of the element, and no other element (like scroller) has "stolen" touch37 * lock ("responder") (Typically you bounce the element).38 *39 * A good tap interaction isn't as simple as you might think. There should be a40 * slight delay before showing a highlight when starting a touch. If a41 * subsequent touch move exceeds the boundary of the element, it should42 * unhighlight, but if that same touch is brought back within the boundary, it43 * should rehighlight again. A touch can move in and out of that boundary44 * several times, each time toggling highlighting, but a "press" is only45 * triggered if that touch ends while within the element's boundary and no46 * scroller (or anything else) has stolen the lock on touches.47 *48 * To create a new type of component that handles interaction using the49 * `Touchable` mixin, do the following:50 *51 * - Initialize the `Touchable` state.52 *53 * getInitialState: function() {54 * return merge(this.touchableGetInitialState(), yourComponentState);55 * }56 *57 * - Choose the rendered component who's touches should start the interactive58 * sequence. On that rendered node, forward all `Touchable` responder59 * handlers. You can choose any rendered node you like. Choose a node whose60 * hit target you'd like to instigate the interaction sequence:61 *62 * // In render function:63 * return (64 * <View65 * onStartShouldSetResponder={this.touchableHandleStartShouldSetResponder}66 * onResponderTerminationRequest={this.touchableHandleResponderTerminationRequest}67 * onResponderGrant={this.touchableHandleResponderGrant}68 * onResponderMove={this.touchableHandleResponderMove}69 * onResponderRelease={this.touchableHandleResponderRelease}70 * onResponderTerminate={this.touchableHandleResponderTerminate}>71 * <View>72 * Even though the hit detection/interactions are triggered by the73 * wrapping (typically larger) node, we usually end up implementing74 * custom logic that highlights this inner one.75 * </View>76 * </View>77 * );78 *79 * - You may set up your own handlers for each of these events, so long as you80 * also invoke the `touchable*` handlers inside of your custom handler.81 *82 * - Implement the handlers on your component class in order to provide83 * feedback to the user. See documentation for each of these class methods84 * that you should implement.85 *86 * touchableHandlePress: function() {87 * this.performBounceAnimation(); // or whatever you want to do.88 * },89 * touchableHandleActivePressIn: function() {90 * this.beginHighlighting(...); // Whatever you like to convey activation91 * },92 * touchableHandleActivePressOut: function() {93 * this.endHighlighting(...); // Whatever you like to convey deactivation94 * },95 *96 * - There are more advanced methods you can implement (see documentation below):97 * touchableGetHighlightDelayMS: function() {98 * return 20;99 * }100 * // In practice, *always* use a predeclared constant (conserve memory).101 * touchableGetPressRectOffset: function() {102 * return {top: 20, left: 20, right: 20, bottom: 100};103 * }104 */105/**106 * Touchable states.107 */108const States = keyMirror({109 NOT_RESPONDER: null, // Not the responder110 RESPONDER_INACTIVE_PRESS_IN: null, // Responder, inactive, in the `PressRect`111 RESPONDER_INACTIVE_PRESS_OUT: null, // Responder, inactive, out of `PressRect`112 RESPONDER_ACTIVE_PRESS_IN: null, // Responder, active, in the `PressRect`113 RESPONDER_ACTIVE_PRESS_OUT: null, // Responder, active, out of `PressRect`114 RESPONDER_ACTIVE_LONG_PRESS_IN: null, // Responder, active, in the `PressRect`, after long press threshold115 RESPONDER_ACTIVE_LONG_PRESS_OUT: null, // Responder, active, out of `PressRect`, after long press threshold116 ERROR: null,117});118/**119 * Quick lookup map for states that are considered to be "active"120 */121const IsActive = {122 RESPONDER_ACTIVE_PRESS_OUT: true,123 RESPONDER_ACTIVE_PRESS_IN: true,124};125/**126 * Quick lookup for states that are considered to be "pressing" and are127 * therefore eligible to result in a "selection" if the press stops.128 */129const IsPressingIn = {130 RESPONDER_INACTIVE_PRESS_IN: true,131 RESPONDER_ACTIVE_PRESS_IN: true,132 RESPONDER_ACTIVE_LONG_PRESS_IN: true,133};134const IsLongPressingIn = {135 RESPONDER_ACTIVE_LONG_PRESS_IN: true,136};137/**138 * Inputs to the state machine.139 */140const Signals = keyMirror({141 DELAY: null,142 RESPONDER_GRANT: null,143 RESPONDER_RELEASE: null,144 RESPONDER_TERMINATED: null,145 ENTER_PRESS_RECT: null,146 LEAVE_PRESS_RECT: null,147 LONG_PRESS_DETECTED: null,148});149/**150 * Mapping from States x Signals => States151 */152const Transitions = {153 NOT_RESPONDER: {154 DELAY: States.ERROR,155 RESPONDER_GRANT: States.RESPONDER_INACTIVE_PRESS_IN,156 RESPONDER_RELEASE: States.ERROR,157 RESPONDER_TERMINATED: States.ERROR,158 ENTER_PRESS_RECT: States.ERROR,159 LEAVE_PRESS_RECT: States.ERROR,160 LONG_PRESS_DETECTED: States.ERROR,161 },162 RESPONDER_INACTIVE_PRESS_IN: {163 DELAY: States.RESPONDER_ACTIVE_PRESS_IN,164 RESPONDER_GRANT: States.ERROR,165 RESPONDER_RELEASE: States.NOT_RESPONDER,166 RESPONDER_TERMINATED: States.NOT_RESPONDER,167 ENTER_PRESS_RECT: States.RESPONDER_INACTIVE_PRESS_IN,168 LEAVE_PRESS_RECT: States.RESPONDER_INACTIVE_PRESS_OUT,169 LONG_PRESS_DETECTED: States.ERROR,170 },171 RESPONDER_INACTIVE_PRESS_OUT: {172 DELAY: States.RESPONDER_ACTIVE_PRESS_OUT,173 RESPONDER_GRANT: States.ERROR,174 RESPONDER_RELEASE: States.NOT_RESPONDER,175 RESPONDER_TERMINATED: States.NOT_RESPONDER,176 ENTER_PRESS_RECT: States.RESPONDER_INACTIVE_PRESS_IN,177 LEAVE_PRESS_RECT: States.RESPONDER_INACTIVE_PRESS_OUT,178 LONG_PRESS_DETECTED: States.ERROR,179 },180 RESPONDER_ACTIVE_PRESS_IN: {181 DELAY: States.ERROR,182 RESPONDER_GRANT: States.ERROR,183 RESPONDER_RELEASE: States.NOT_RESPONDER,184 RESPONDER_TERMINATED: States.NOT_RESPONDER,185 ENTER_PRESS_RECT: States.RESPONDER_ACTIVE_PRESS_IN,186 LEAVE_PRESS_RECT: States.RESPONDER_ACTIVE_PRESS_OUT,187 LONG_PRESS_DETECTED: States.RESPONDER_ACTIVE_LONG_PRESS_IN,188 },189 RESPONDER_ACTIVE_PRESS_OUT: {190 DELAY: States.ERROR,191 RESPONDER_GRANT: States.ERROR,192 RESPONDER_RELEASE: States.NOT_RESPONDER,193 RESPONDER_TERMINATED: States.NOT_RESPONDER,194 ENTER_PRESS_RECT: States.RESPONDER_ACTIVE_PRESS_IN,195 LEAVE_PRESS_RECT: States.RESPONDER_ACTIVE_PRESS_OUT,196 LONG_PRESS_DETECTED: States.ERROR,197 },198 RESPONDER_ACTIVE_LONG_PRESS_IN: {199 DELAY: States.ERROR,200 RESPONDER_GRANT: States.ERROR,201 RESPONDER_RELEASE: States.NOT_RESPONDER,202 RESPONDER_TERMINATED: States.NOT_RESPONDER,203 ENTER_PRESS_RECT: States.RESPONDER_ACTIVE_LONG_PRESS_IN,204 LEAVE_PRESS_RECT: States.RESPONDER_ACTIVE_LONG_PRESS_OUT,205 LONG_PRESS_DETECTED: States.RESPONDER_ACTIVE_LONG_PRESS_IN,206 },207 RESPONDER_ACTIVE_LONG_PRESS_OUT: {208 DELAY: States.ERROR,209 RESPONDER_GRANT: States.ERROR,210 RESPONDER_RELEASE: States.NOT_RESPONDER,211 RESPONDER_TERMINATED: States.NOT_RESPONDER,212 ENTER_PRESS_RECT: States.RESPONDER_ACTIVE_LONG_PRESS_IN,213 LEAVE_PRESS_RECT: States.RESPONDER_ACTIVE_LONG_PRESS_OUT,214 LONG_PRESS_DETECTED: States.ERROR,215 },216 error: {217 DELAY: States.NOT_RESPONDER,218 RESPONDER_GRANT: States.RESPONDER_INACTIVE_PRESS_IN,219 RESPONDER_RELEASE: States.NOT_RESPONDER,220 RESPONDER_TERMINATED: States.NOT_RESPONDER,221 ENTER_PRESS_RECT: States.NOT_RESPONDER,222 LEAVE_PRESS_RECT: States.NOT_RESPONDER,223 LONG_PRESS_DETECTED: States.NOT_RESPONDER,224 },225};226// ==== Typical Constants for integrating into UI components ====227// var HIT_EXPAND_PX = 20;228// var HIT_VERT_OFFSET_PX = 10;229const HIGHLIGHT_DELAY_MS = 130;230const PRESS_EXPAND_PX = 20;231const LONG_PRESS_THRESHOLD = 500;232const LONG_PRESS_DELAY_MS = LONG_PRESS_THRESHOLD - HIGHLIGHT_DELAY_MS;233const LONG_PRESS_ALLOWED_MOVEMENT = 10;234// Default amount "active" region protrudes beyond box235/**236 * By convention, methods prefixed with underscores are meant to be @private,237 * and not @protected. Mixers shouldn't access them - not even to provide them238 * as callback handlers.239 *240 *241 * ========== Geometry =========242 * `Touchable` only assumes that there exists a `HitRect` node. The `PressRect`243 * is an abstract box that is extended beyond the `HitRect`.244 *245 * +--------------------------+246 * | | - "Start" events in `HitRect` cause `HitRect`247 * | +--------------------+ | to become the responder.248 * | | +--------------+ | | - `HitRect` is typically expanded around249 * | | | | | | the `VisualRect`, but shifted downward.250 * | | | VisualRect | | | - After pressing down, after some delay,251 * | | | | | | and before letting up, the Visual React252 * | | +--------------+ | | will become "active". This makes it eligible253 * | | HitRect | | for being highlighted (so long as the254 * | +--------------------+ | press remains in the `PressRect`).255 * | PressRect o |256 * +----------------------|---+257 * Out Region |258 * +-----+ This gap between the `HitRect` and259 * `PressRect` allows a touch to move far away260 * from the original hit rect, and remain261 * highlighted, and eligible for a "Press".262 * Customize this via263 * `touchableGetPressRectOffset()`.264 *265 *266 *267 * ======= State Machine =======268 *269 * +-------------+ <---+ RESPONDER_RELEASE270 * |NOT_RESPONDER|271 * +-------------+ <---+ RESPONDER_TERMINATED272 * +273 * | RESPONDER_GRANT (HitRect)274 * v275 * +---------------------------+ DELAY +-------------------------+ T + DELAY +------------------------------+276 * |RESPONDER_INACTIVE_PRESS_IN|+-------->|RESPONDER_ACTIVE_PRESS_IN| +------------> |RESPONDER_ACTIVE_LONG_PRESS_IN|277 * +---------------------------+ +-------------------------+ +------------------------------+278 * + ^ + ^ + ^279 * |LEAVE_ |ENTER_ |LEAVE_ |ENTER_ |LEAVE_ |ENTER_280 * |PRESS_RECT |PRESS_RECT |PRESS_RECT |PRESS_RECT |PRESS_RECT |PRESS_RECT281 * | | | | | |282 * v + v + v +283 * +----------------------------+ DELAY +--------------------------+ +-------------------------------+284 * |RESPONDER_INACTIVE_PRESS_OUT|+------->|RESPONDER_ACTIVE_PRESS_OUT| |RESPONDER_ACTIVE_LONG_PRESS_OUT|285 * +----------------------------+ +--------------------------+ +-------------------------------+286 *287 * T + DELAY => LONG_PRESS_DELAY_MS + DELAY288 *289 * Not drawn are the side effects of each transition. The most important side290 * effect is the `touchableHandlePress` abstract method invocation that occurs291 * when a responder is released while in either of the "Press" states.292 *293 * The other important side effects are the highlight abstract method294 * invocations (internal callbacks) to be implemented by the mixer.295 *296 *297 * @lends Touchable.prototype298 */299const TouchableMixin = {300 componentDidMount: function() {301 if (!Platform.isTV) {302 return;303 }304 this._tvEventHandler = new TVEventHandler();305 this._tvEventHandler.enable(this, function(cmp, evt) {306 const myTag = ReactNative.findNodeHandle(cmp);307 evt.dispatchConfig = {};308 if (myTag === evt.tag) {309 if (evt.eventType === 'focus') {310 cmp.touchableHandleFocus(evt);311 } else if (evt.eventType === 'blur') {312 cmp.touchableHandleBlur(evt);313 } else if (evt.eventType === 'select') {314 cmp.touchableHandlePress &&315 !cmp.props.disabled &&316 cmp.touchableHandlePress(evt);317 }318 }319 });320 },321 /**322 * Clear all timeouts on unmount323 */324 componentWillUnmount: function() {325 if (this._tvEventHandler) {326 this._tvEventHandler.disable();327 delete this._tvEventHandler;328 }329 this.touchableDelayTimeout && clearTimeout(this.touchableDelayTimeout);330 this.longPressDelayTimeout && clearTimeout(this.longPressDelayTimeout);331 this.pressOutDelayTimeout && clearTimeout(this.pressOutDelayTimeout);332 },333 /**334 * It's prefer that mixins determine state in this way, having the class335 * explicitly mix the state in the one and only `getInitialState` method.336 *337 * @return {object} State object to be placed inside of338 * `this.state.touchable`.339 */340 touchableGetInitialState: function() {341 return {342 touchable: {touchState: undefined, responderID: null},343 };344 },345 // ==== Hooks to Gesture Responder system ====346 /**347 * Must return true if embedded in a native platform scroll view.348 */349 touchableHandleResponderTerminationRequest: function() {350 return !this.props.rejectResponderTermination;351 },352 /**353 * Must return true to start the process of `Touchable`.354 */355 touchableHandleStartShouldSetResponder: function() {356 return !this.props.disabled;357 },358 /**359 * Return true to cancel press on long press.360 */361 touchableLongPressCancelsPress: function() {362 return true;363 },364 /**365 * Place as callback for a DOM element's `onResponderGrant` event.366 * @param {SyntheticEvent} e Synthetic event from event system.367 *368 */369 touchableHandleResponderGrant: function(e) {370 const dispatchID = e.currentTarget;371 // Since e is used in a callback invoked on another event loop372 // (as in setTimeout etc), we need to call e.persist() on the373 // event to make sure it doesn't get reused in the event object pool.374 e.persist();375 this.pressOutDelayTimeout && clearTimeout(this.pressOutDelayTimeout);376 this.pressOutDelayTimeout = null;377 this.state.touchable.touchState = States.NOT_RESPONDER;378 this.state.touchable.responderID = dispatchID;379 this._receiveSignal(Signals.RESPONDER_GRANT, e);380 let delayMS =381 this.touchableGetHighlightDelayMS !== undefined382 ? Math.max(this.touchableGetHighlightDelayMS(), 0)383 : HIGHLIGHT_DELAY_MS;384 delayMS = isNaN(delayMS) ? HIGHLIGHT_DELAY_MS : delayMS;385 if (delayMS !== 0) {386 this.touchableDelayTimeout = setTimeout(387 this._handleDelay.bind(this, e),388 delayMS,389 );390 } else {391 this._handleDelay(e);392 }393 let longDelayMS =394 this.touchableGetLongPressDelayMS !== undefined395 ? Math.max(this.touchableGetLongPressDelayMS(), 10)396 : LONG_PRESS_DELAY_MS;397 longDelayMS = isNaN(longDelayMS) ? LONG_PRESS_DELAY_MS : longDelayMS;398 this.longPressDelayTimeout = setTimeout(399 this._handleLongDelay.bind(this, e),400 longDelayMS + delayMS,401 );402 },403 /**404 * Place as callback for a DOM element's `onResponderRelease` event.405 */406 touchableHandleResponderRelease: function(e) {407 this._receiveSignal(Signals.RESPONDER_RELEASE, e);408 },409 /**410 * Place as callback for a DOM element's `onResponderTerminate` event.411 */412 touchableHandleResponderTerminate: function(e) {413 this._receiveSignal(Signals.RESPONDER_TERMINATED, e);414 },415 /**416 * Place as callback for a DOM element's `onResponderMove` event.417 */418 touchableHandleResponderMove: function(e) {419 // Not enough time elapsed yet, wait for highlight -420 // this is just a perf optimization.421 if (422 this.state.touchable.touchState === States.RESPONDER_INACTIVE_PRESS_IN423 ) {424 return;425 }426 // Measurement may not have returned yet.427 if (!this.state.touchable.positionOnActivate) {428 return;429 }430 const positionOnActivate = this.state.touchable.positionOnActivate;431 const dimensionsOnActivate = this.state.touchable.dimensionsOnActivate;432 const pressRectOffset = this.touchableGetPressRectOffset433 ? this.touchableGetPressRectOffset()434 : {435 left: PRESS_EXPAND_PX,436 right: PRESS_EXPAND_PX,437 top: PRESS_EXPAND_PX,438 bottom: PRESS_EXPAND_PX,439 };440 let pressExpandLeft = pressRectOffset.left;441 let pressExpandTop = pressRectOffset.top;442 let pressExpandRight = pressRectOffset.right;443 let pressExpandBottom = pressRectOffset.bottom;444 const hitSlop = this.touchableGetHitSlop445 ? this.touchableGetHitSlop()446 : null;447 if (hitSlop) {448 pressExpandLeft += hitSlop.left;449 pressExpandTop += hitSlop.top;450 pressExpandRight += hitSlop.right;451 pressExpandBottom += hitSlop.bottom;452 }453 const touch = TouchEventUtils.extractSingleTouch(e.nativeEvent);454 const pageX = touch && touch.pageX;455 const pageY = touch && touch.pageY;456 if (this.pressInLocation) {457 const movedDistance = this._getDistanceBetweenPoints(458 pageX,459 pageY,460 this.pressInLocation.pageX,461 this.pressInLocation.pageY,462 );463 if (movedDistance > LONG_PRESS_ALLOWED_MOVEMENT) {464 this._cancelLongPressDelayTimeout();465 }466 }467 const isTouchWithinActive =468 pageX > positionOnActivate.left - pressExpandLeft &&469 pageY > positionOnActivate.top - pressExpandTop &&470 pageX <471 positionOnActivate.left +472 dimensionsOnActivate.width +473 pressExpandRight &&474 pageY <475 positionOnActivate.top +476 dimensionsOnActivate.height +477 pressExpandBottom;478 if (isTouchWithinActive) {479 this._receiveSignal(Signals.ENTER_PRESS_RECT, e);480 const curState = this.state.touchable.touchState;481 if (curState === States.RESPONDER_INACTIVE_PRESS_IN) {482 // fix for t7967420483 this._cancelLongPressDelayTimeout();484 }485 } else {486 this._cancelLongPressDelayTimeout();487 this._receiveSignal(Signals.LEAVE_PRESS_RECT, e);488 }489 },490 /**491 * Invoked when the item receives focus. Mixers might override this to492 * visually distinguish the `VisualRect` so that the user knows that it493 * currently has the focus. Most platforms only support a single element being494 * focused at a time, in which case there may have been a previously focused495 * element that was blurred just prior to this.496 */497 touchableHandleFocus: function(e: Event) {498 this.props.onFocus && this.props.onFocus(e);499 },500 /**501 * Invoked when the item loses focus. Mixers might override this to502 * visually distinguish the `VisualRect` so that the user knows that it503 * no longer has focus. Most platforms only support a single element being504 * focused at a time, in which case the focus may have moved to another.505 */506 touchableHandleBlur: function(e: Event) {507 this.props.onBlur && this.props.onBlur(e);508 },509 // ==== Abstract Application Callbacks ====510 /**511 * Invoked when the item should be highlighted. Mixers should implement this512 * to visually distinguish the `VisualRect` so that the user knows that513 * releasing a touch will result in a "selection" (analog to click).514 *515 * @abstract516 * touchableHandleActivePressIn: function,517 */518 /**519 * Invoked when the item is "active" (in that it is still eligible to become520 * a "select") but the touch has left the `PressRect`. Usually the mixer will521 * want to unhighlight the `VisualRect`. If the user (while pressing) moves522 * back into the `PressRect` `touchableHandleActivePressIn` will be invoked523 * again and the mixer should probably highlight the `VisualRect` again. This524 * event will not fire on an `touchEnd/mouseUp` event, only move events while525 * the user is depressing the mouse/touch.526 *527 * @abstract528 * touchableHandleActivePressOut: function529 */530 /**531 * Invoked when the item is "selected" - meaning the interaction ended by532 * letting up while the item was either in the state533 * `RESPONDER_ACTIVE_PRESS_IN` or `RESPONDER_INACTIVE_PRESS_IN`.534 *535 * @abstract536 * touchableHandlePress: function537 */538 /**539 * Invoked when the item is long pressed - meaning the interaction ended by540 * letting up while the item was in `RESPONDER_ACTIVE_LONG_PRESS_IN`. If541 * `touchableHandleLongPress` is *not* provided, `touchableHandlePress` will542 * be called as it normally is. If `touchableHandleLongPress` is provided, by543 * default any `touchableHandlePress` callback will not be invoked. To544 * override this default behavior, override `touchableLongPressCancelsPress`545 * to return false. As a result, `touchableHandlePress` will be called when546 * lifting up, even if `touchableHandleLongPress` has also been called.547 *548 * @abstract549 * touchableHandleLongPress: function550 */551 /**552 * Returns the number of millis to wait before triggering a highlight.553 *554 * @abstract555 * touchableGetHighlightDelayMS: function556 */557 /**558 * Returns the amount to extend the `HitRect` into the `PressRect`. Positive559 * numbers mean the size expands outwards.560 *561 * @abstract562 * touchableGetPressRectOffset: function563 */564 // ==== Internal Logic ====565 /**566 * Measures the `HitRect` node on activation. The Bounding rectangle is with567 * respect to viewport - not page, so adding the `pageXOffset/pageYOffset`568 * should result in points that are in the same coordinate system as an569 * event's `globalX/globalY` data values.570 *571 * - Consider caching this for the lifetime of the component, or possibly572 * being able to share this cache between any `ScrollMap` view.573 *574 * @sideeffects575 * @private576 */577 _remeasureMetricsOnActivation: function() {578 const tag = this.state.touchable.responderID;579 if (tag == null) {580 return;581 }582 UIManager.measure(tag, this._handleQueryLayout);583 },584 _handleQueryLayout: function(l, t, w, h, globalX, globalY) {585 //don't do anything UIManager failed to measure node586 if (!l && !t && !w && !h && !globalX && !globalY) {587 return;588 }589 this.state.touchable.positionOnActivate &&590 Position.release(this.state.touchable.positionOnActivate);591 this.state.touchable.dimensionsOnActivate &&592 BoundingDimensions.release(this.state.touchable.dimensionsOnActivate);593 this.state.touchable.positionOnActivate = Position.getPooled(594 globalX,595 globalY,596 );597 this.state.touchable.dimensionsOnActivate = BoundingDimensions.getPooled(598 w,599 h,600 );601 },602 _handleDelay: function(e) {603 this.touchableDelayTimeout = null;604 this._receiveSignal(Signals.DELAY, e);605 },606 _handleLongDelay: function(e) {607 this.longPressDelayTimeout = null;608 const curState = this.state.touchable.touchState;609 if (610 curState !== States.RESPONDER_ACTIVE_PRESS_IN &&611 curState !== States.RESPONDER_ACTIVE_LONG_PRESS_IN612 ) {613 console.error(614 'Attempted to transition from state `' +615 curState +616 '` to `' +617 States.RESPONDER_ACTIVE_LONG_PRESS_IN +618 '`, which is not supported. This is ' +619 'most likely due to `Touchable.longPressDelayTimeout` not being cancelled.',620 );621 } else {622 this._receiveSignal(Signals.LONG_PRESS_DETECTED, e);623 }624 },625 /**626 * Receives a state machine signal, performs side effects of the transition627 * and stores the new state. Validates the transition as well.628 *629 * @param {Signals} signal State machine signal.630 * @throws Error if invalid state transition or unrecognized signal.631 * @sideeffects632 */633 _receiveSignal: function(signal, e) {634 const responderID = this.state.touchable.responderID;635 const curState = this.state.touchable.touchState;636 const nextState = Transitions[curState] && Transitions[curState][signal];637 if (!responderID && signal === Signals.RESPONDER_RELEASE) {638 return;639 }640 if (!nextState) {641 throw new Error(642 'Unrecognized signal `' +643 signal +644 '` or state `' +645 curState +646 '` for Touchable responder `' +647 responderID +648 '`',649 );650 }651 if (nextState === States.ERROR) {652 throw new Error(653 'Touchable cannot transition from `' +654 curState +655 '` to `' +656 signal +657 '` for responder `' +658 responderID +659 '`',660 );661 }662 if (curState !== nextState) {663 this._performSideEffectsForTransition(curState, nextState, signal, e);664 this.state.touchable.touchState = nextState;665 }666 },667 _cancelLongPressDelayTimeout: function() {668 this.longPressDelayTimeout && clearTimeout(this.longPressDelayTimeout);669 this.longPressDelayTimeout = null;670 },671 _isHighlight: function(state) {672 return (673 state === States.RESPONDER_ACTIVE_PRESS_IN ||674 state === States.RESPONDER_ACTIVE_LONG_PRESS_IN675 );676 },677 _savePressInLocation: function(e) {678 const touch = TouchEventUtils.extractSingleTouch(e.nativeEvent);679 const pageX = touch && touch.pageX;680 const pageY = touch && touch.pageY;681 const locationX = touch && touch.locationX;682 const locationY = touch && touch.locationY;683 this.pressInLocation = {pageX, pageY, locationX, locationY};684 },685 _getDistanceBetweenPoints: function(aX, aY, bX, bY) {686 const deltaX = aX - bX;687 const deltaY = aY - bY;688 return Math.sqrt(deltaX * deltaX + deltaY * deltaY);689 },690 /**691 * Will perform a transition between touchable states, and identify any692 * highlighting or unhighlighting that must be performed for this particular693 * transition.694 *695 * @param {States} curState Current Touchable state.696 * @param {States} nextState Next Touchable state.697 * @param {Signal} signal Signal that triggered the transition.698 * @param {Event} e Native event.699 * @sideeffects700 */701 _performSideEffectsForTransition: function(curState, nextState, signal, e) {702 const curIsHighlight = this._isHighlight(curState);703 const newIsHighlight = this._isHighlight(nextState);704 const isFinalSignal =705 signal === Signals.RESPONDER_TERMINATED ||706 signal === Signals.RESPONDER_RELEASE;707 if (isFinalSignal) {708 this._cancelLongPressDelayTimeout();709 }710 if (!IsActive[curState] && IsActive[nextState]) {711 this._remeasureMetricsOnActivation();712 }713 if (IsPressingIn[curState] && signal === Signals.LONG_PRESS_DETECTED) {714 this.touchableHandleLongPress && this.touchableHandleLongPress(e);715 }716 if (newIsHighlight && !curIsHighlight) {717 this._startHighlight(e);718 } else if (!newIsHighlight && curIsHighlight) {719 this._endHighlight(e);720 }721 if (IsPressingIn[curState] && signal === Signals.RESPONDER_RELEASE) {722 const hasLongPressHandler = !!this.props.onLongPress;723 const pressIsLongButStillCallOnPress =724 IsLongPressingIn[curState] && // We *are* long pressing.. // But either has no long handler725 (!hasLongPressHandler || !this.touchableLongPressCancelsPress()); // or we're told to ignore it.726 const shouldInvokePress =727 !IsLongPressingIn[curState] || pressIsLongButStillCallOnPress;728 if (shouldInvokePress && this.touchableHandlePress) {729 if (!newIsHighlight && !curIsHighlight) {730 // we never highlighted because of delay, but we should highlight now731 this._startHighlight(e);732 this._endHighlight(e);733 }734 if (Platform.OS === 'android') {735 this._playTouchSound();736 }737 this.touchableHandlePress(e);738 }739 }740 this.touchableDelayTimeout && clearTimeout(this.touchableDelayTimeout);741 this.touchableDelayTimeout = null;742 },743 _playTouchSound: function() {744 UIManager.playTouchSound();745 },746 _startHighlight: function(e) {747 this._savePressInLocation(e);748 this.touchableHandleActivePressIn && this.touchableHandleActivePressIn(e);749 },750 _endHighlight: function(e) {751 if (this.touchableHandleActivePressOut) {752 if (753 this.touchableGetPressOutDelayMS &&754 this.touchableGetPressOutDelayMS()755 ) {756 this.pressOutDelayTimeout = setTimeout(() => {757 this.touchableHandleActivePressOut(e);758 }, this.touchableGetPressOutDelayMS());759 } else {760 this.touchableHandleActivePressOut(e);761 }762 }763 },764};765const Touchable = {766 Mixin: TouchableMixin,767 TOUCH_TARGET_DEBUG: false, // Highlights all touchable targets. Toggle with Inspector.768 /**769 * Renders a debugging overlay to visualize touch target with hitSlop (might not work on Android).770 */771 renderDebugView: ({color, hitSlop}) => {772 if (!Touchable.TOUCH_TARGET_DEBUG) {773 return null;774 }775 if (!__DEV__) {776 throw Error(777 'Touchable.TOUCH_TARGET_DEBUG should not be enabled in prod!',778 );779 }780 const debugHitSlopStyle = {};781 hitSlop = hitSlop || {top: 0, bottom: 0, left: 0, right: 0};782 for (const key in hitSlop) {783 debugHitSlopStyle[key] = -hitSlop[key];784 }785 const hexColor =786 '#' + ('00000000' + normalizeColor(color).toString(16)).substr(-8);787 return (788 <View789 pointerEvents="none"790 style={{791 position: 'absolute',792 borderColor: hexColor.slice(0, -2) + '55', // More opaque793 borderWidth: 1,794 borderStyle: 'dashed',795 backgroundColor: hexColor.slice(0, -2) + '0F', // Less opaque796 ...debugHitSlopStyle,797 }}798 />799 );800 },801};...

Full Screen

Full Screen

maya.py

Source:maya.py Github

copy

Full Screen

1# Configuration Maya2import bpy3wm = bpy.context.window_manager4kc = wm.keyconfigs.new('maya')5# Map 3D View6km = kc.keymaps.new('3D View', space_type='VIEW_3D', region_type='WINDOW', modal=False)7kmi = km.keymap_items.new('view3d.manipulator', 'LEFTMOUSE', 'PRESS', any=True)8kmi.properties.release_confirm = True9kmi = km.keymap_items.new('view3d.cursor3d', 'ACTIONMOUSE', 'PRESS')10kmi = km.keymap_items.new('view3d.rotate', 'LEFTMOUSE', 'PRESS', alt=True)11kmi = km.keymap_items.new('view3d.move', 'MIDDLEMOUSE', 'PRESS', alt=True)12kmi = km.keymap_items.new('view3d.zoom', 'RIGHTMOUSE', 'PRESS', alt=True)13kmi = km.keymap_items.new('view3d.view_selected', 'NUMPAD_PERIOD', 'PRESS')14kmi = km.keymap_items.new('view3d.view_center_cursor', 'NUMPAD_PERIOD', 'PRESS', ctrl=True)15kmi = km.keymap_items.new('view3d.fly', 'F', 'PRESS', shift=True)16kmi = km.keymap_items.new('view3d.smoothview', 'TIMER1', 'ANY', any=True)17kmi = km.keymap_items.new('view3d.rotate', 'TRACKPADPAN', 'ANY', alt=True)18kmi = km.keymap_items.new('view3d.rotate', 'MOUSEROTATE', 'ANY')19kmi = km.keymap_items.new('view3d.move', 'TRACKPADPAN', 'ANY')20kmi = km.keymap_items.new('view3d.zoom', 'TRACKPADZOOM', 'ANY')21kmi = km.keymap_items.new('view3d.zoom', 'NUMPAD_PLUS', 'PRESS')22kmi.properties.delta = 123kmi = km.keymap_items.new('view3d.zoom', 'NUMPAD_MINUS', 'PRESS')24kmi.properties.delta = -125kmi = km.keymap_items.new('view3d.zoom', 'EQUAL', 'PRESS', ctrl=True)26kmi.properties.delta = 127kmi = km.keymap_items.new('view3d.zoom', 'MINUS', 'PRESS', ctrl=True)28kmi.properties.delta = -129kmi = km.keymap_items.new('view3d.zoom', 'WHEELINMOUSE', 'PRESS')30kmi.properties.delta = 131kmi = km.keymap_items.new('view3d.zoom', 'WHEELOUTMOUSE', 'PRESS')32kmi.properties.delta = -133kmi = km.keymap_items.new('view3d.view_all', 'HOME', 'PRESS')34kmi.properties.center = False35kmi = km.keymap_items.new('view3d.view_all', 'C', 'PRESS', shift=True)36kmi.properties.center = True37kmi = km.keymap_items.new('view3d.viewnumpad', 'NUMPAD_0', 'PRESS')38kmi.properties.type = 'CAMERA'39kmi = km.keymap_items.new('view3d.viewnumpad', 'NUMPAD_1', 'PRESS')40kmi.properties.type = 'FRONT'41kmi = km.keymap_items.new('view3d.view_orbit', 'NUMPAD_2', 'PRESS')42kmi.properties.type = 'ORBITDOWN'43kmi = km.keymap_items.new('view3d.viewnumpad', 'NUMPAD_3', 'PRESS')44kmi.properties.type = 'RIGHT'45kmi = km.keymap_items.new('view3d.view_orbit', 'NUMPAD_4', 'PRESS')46kmi.properties.type = 'ORBITLEFT'47kmi = km.keymap_items.new('view3d.view_persportho', 'NUMPAD_5', 'PRESS')48kmi = km.keymap_items.new('view3d.view_orbit', 'NUMPAD_6', 'PRESS')49kmi.properties.type = 'ORBITRIGHT'50kmi = km.keymap_items.new('view3d.viewnumpad', 'NUMPAD_7', 'PRESS')51kmi.properties.type = 'TOP'52kmi = km.keymap_items.new('view3d.view_orbit', 'NUMPAD_8', 'PRESS')53kmi.properties.type = 'ORBITUP'54kmi = km.keymap_items.new('view3d.viewnumpad', 'NUMPAD_1', 'PRESS', ctrl=True)55kmi.properties.type = 'BACK'56kmi = km.keymap_items.new('view3d.viewnumpad', 'NUMPAD_3', 'PRESS', ctrl=True)57kmi.properties.type = 'LEFT'58kmi = km.keymap_items.new('view3d.viewnumpad', 'NUMPAD_7', 'PRESS', ctrl=True)59kmi.properties.type = 'BOTTOM'60kmi = km.keymap_items.new('view3d.view_pan', 'NUMPAD_2', 'PRESS', ctrl=True)61kmi.properties.type = 'PANDOWN'62kmi = km.keymap_items.new('view3d.view_pan', 'NUMPAD_4', 'PRESS', ctrl=True)63kmi.properties.type = 'PANLEFT'64kmi = km.keymap_items.new('view3d.view_pan', 'NUMPAD_6', 'PRESS', ctrl=True)65kmi.properties.type = 'PANRIGHT'66kmi = km.keymap_items.new('view3d.view_pan', 'NUMPAD_8', 'PRESS', ctrl=True)67kmi.properties.type = 'PANUP'68kmi = km.keymap_items.new('view3d.view_pan', 'WHEELUPMOUSE', 'PRESS', ctrl=True)69kmi.properties.type = 'PANRIGHT'70kmi = km.keymap_items.new('view3d.view_pan', 'WHEELDOWNMOUSE', 'PRESS', ctrl=True)71kmi.properties.type = 'PANLEFT'72kmi = km.keymap_items.new('view3d.view_pan', 'WHEELUPMOUSE', 'PRESS', shift=True)73kmi.properties.type = 'PANUP'74kmi = km.keymap_items.new('view3d.view_pan', 'WHEELDOWNMOUSE', 'PRESS', shift=True)75kmi.properties.type = 'PANDOWN'76kmi = km.keymap_items.new('view3d.view_orbit', 'WHEELUPMOUSE', 'PRESS', ctrl=True, alt=True)77kmi.properties.type = 'ORBITLEFT'78kmi = km.keymap_items.new('view3d.view_orbit', 'WHEELDOWNMOUSE', 'PRESS', ctrl=True, alt=True)79kmi.properties.type = 'ORBITRIGHT'80kmi = km.keymap_items.new('view3d.view_orbit', 'WHEELUPMOUSE', 'PRESS', shift=True, alt=True)81kmi.properties.type = 'ORBITUP'82kmi = km.keymap_items.new('view3d.view_orbit', 'WHEELDOWNMOUSE', 'PRESS', shift=True, alt=True)83kmi.properties.type = 'ORBITDOWN'84kmi = km.keymap_items.new('view3d.viewnumpad', 'NUMPAD_1', 'PRESS', shift=True)85kmi.properties.align_active = True86kmi.properties.type = 'FRONT'87kmi = km.keymap_items.new('view3d.viewnumpad', 'NUMPAD_3', 'PRESS', shift=True)88kmi.properties.align_active = True89kmi.properties.type = 'RIGHT'90kmi = km.keymap_items.new('view3d.viewnumpad', 'NUMPAD_7', 'PRESS', shift=True)91kmi.properties.align_active = True92kmi.properties.type = 'TOP'93kmi = km.keymap_items.new('view3d.viewnumpad', 'NUMPAD_1', 'PRESS', shift=True, ctrl=True)94kmi.properties.align_active = True95kmi.properties.type = 'BACK'96kmi = km.keymap_items.new('view3d.viewnumpad', 'NUMPAD_3', 'PRESS', shift=True, ctrl=True)97kmi.properties.align_active = True98kmi.properties.type = 'LEFT'99kmi = km.keymap_items.new('view3d.viewnumpad', 'NUMPAD_7', 'PRESS', shift=True, ctrl=True)100kmi.properties.align_active = True101kmi.properties.type = 'BOTTOM'102kmi = km.keymap_items.new('view3d.localview', 'NUMPAD_SLASH', 'PRESS')103kmi = km.keymap_items.new('view3d.layers', 'ACCENT_GRAVE', 'PRESS')104kmi.properties.nr = 0105kmi = km.keymap_items.new('view3d.layers', 'ONE', 'PRESS', any=True)106kmi.properties.nr = 1107kmi = km.keymap_items.new('view3d.layers', 'TWO', 'PRESS', any=True)108kmi.properties.nr = 2109kmi = km.keymap_items.new('view3d.layers', 'THREE', 'PRESS', any=True)110kmi.properties.nr = 3111kmi = km.keymap_items.new('view3d.layers', 'FOUR', 'PRESS', any=True)112kmi.properties.nr = 4113kmi = km.keymap_items.new('view3d.layers', 'FIVE', 'PRESS', any=True)114kmi.properties.nr = 5115kmi = km.keymap_items.new('view3d.layers', 'SIX', 'PRESS', any=True)116kmi.properties.nr = 6117kmi = km.keymap_items.new('view3d.layers', 'SEVEN', 'PRESS', any=True)118kmi.properties.nr = 7119kmi = km.keymap_items.new('view3d.layers', 'EIGHT', 'PRESS', any=True)120kmi.properties.nr = 8121kmi = km.keymap_items.new('view3d.layers', 'NINE', 'PRESS', any=True)122kmi.properties.nr = 9123kmi = km.keymap_items.new('view3d.layers', 'ZERO', 'PRESS', any=True)124kmi.properties.nr = 10125kmi = km.keymap_items.new('wm.context_toggle_enum', 'Z', 'PRESS')126kmi.properties.data_path = 'space_data.viewport_shade'127kmi.properties.value_1 = 'SOLID'128kmi.properties.value_2 = 'WIREFRAME'129kmi = km.keymap_items.new('wm.context_toggle_enum', 'Z', 'PRESS', alt=True)130kmi.properties.data_path = 'space_data.viewport_shade'131kmi.properties.value_1 = 'TEXTURED'132kmi.properties.value_2 = 'SOLID'133kmi = km.keymap_items.new('view3d.select', 'SELECTMOUSE', 'PRESS')134kmi = km.keymap_items.new('view3d.select', 'SELECTMOUSE', 'PRESS', shift=True)135kmi.properties.extend = True136kmi = km.keymap_items.new('view3d.select', 'SELECTMOUSE', 'PRESS', ctrl=True)137kmi.properties.center = True138kmi = km.keymap_items.new('view3d.select', 'SELECTMOUSE', 'PRESS', alt=True)139kmi.properties.enumerate = True140kmi = km.keymap_items.new('view3d.select', 'SELECTMOUSE', 'PRESS', shift=True, ctrl=True)141kmi.properties.center = True142kmi.properties.extend = True143kmi = km.keymap_items.new('view3d.select', 'SELECTMOUSE', 'PRESS', ctrl=True, alt=True)144kmi.properties.center = True145kmi.properties.enumerate = True146kmi = km.keymap_items.new('view3d.select', 'SELECTMOUSE', 'PRESS', shift=True, alt=True)147kmi.properties.enumerate = True148kmi.properties.extend = True149kmi = km.keymap_items.new('view3d.select', 'SELECTMOUSE', 'PRESS', shift=True, ctrl=True, alt=True)150kmi.properties.center = True151kmi.properties.enumerate = True152kmi.properties.extend = True153kmi = km.keymap_items.new('view3d.select_border', 'EVT_TWEAK_S', 'ANY')154kmi.properties.extend = False155kmi = km.keymap_items.new('view3d.select_lasso', 'EVT_TWEAK_A', 'ANY', ctrl=True)156kmi = km.keymap_items.new('view3d.select_lasso', 'EVT_TWEAK_A', 'ANY', shift=True, ctrl=True)157kmi.properties.deselect = True158kmi = km.keymap_items.new('view3d.select_circle', 'C', 'PRESS')159kmi = km.keymap_items.new('view3d.clip_border', 'B', 'PRESS', alt=True)160kmi = km.keymap_items.new('view3d.zoom_border', 'B', 'PRESS', shift=True)161kmi = km.keymap_items.new('view3d.render_border', 'B', 'PRESS', shift=True)162kmi = km.keymap_items.new('view3d.camera_to_view', 'NUMPAD_0', 'PRESS', ctrl=True, alt=True)163kmi = km.keymap_items.new('view3d.object_as_camera', 'NUMPAD_0', 'PRESS', ctrl=True)164kmi = km.keymap_items.new('wm.call_menu', 'S', 'PRESS', shift=True)165kmi.properties.name = 'VIEW3D_MT_snap'166kmi = km.keymap_items.new('wm.context_set_enum', 'COMMA', 'PRESS')167kmi.properties.data_path = 'space_data.pivot_point'168kmi.properties.value = 'BOUNDING_BOX_CENTER'169kmi = km.keymap_items.new('wm.context_set_enum', 'COMMA', 'PRESS', ctrl=True)170kmi.properties.data_path = 'space_data.pivot_point'171kmi.properties.value = 'MEDIAN_POINT'172kmi = km.keymap_items.new('wm.context_toggle', 'COMMA', 'PRESS', alt=True)173kmi.properties.data_path = 'space_data.use_pivot_point'174kmi = km.keymap_items.new('wm.context_toggle', 'Q', 'PRESS')175kmi.properties.data_path = 'space_data.show_manipulator'176kmi = km.keymap_items.new('wm.context_set_enum', 'PERIOD', 'PRESS')177kmi.properties.data_path = 'space_data.pivot_point'178kmi.properties.value = 'CURSOR'179kmi = km.keymap_items.new('wm.context_set_enum', 'PERIOD', 'PRESS', ctrl=True)180kmi.properties.data_path = 'space_data.pivot_point'181kmi.properties.value = 'INDIVIDUAL_ORIGINS'182kmi = km.keymap_items.new('wm.context_set_enum', 'PERIOD', 'PRESS', alt=True)183kmi.properties.data_path = 'space_data.pivot_point'184kmi.properties.value = 'ACTIVE_ELEMENT'185kmi = km.keymap_items.new('transform.translate', 'G', 'PRESS', shift=True)186kmi = km.keymap_items.new('transform.translate', 'EVT_TWEAK_S', 'ANY')187kmi = km.keymap_items.new('transform.rotate', 'R', 'PRESS', shift=True)188kmi = km.keymap_items.new('transform.resize', 'S', 'PRESS', shift=True)189kmi = km.keymap_items.new('transform.warp', 'W', 'PRESS', shift=True)190kmi = km.keymap_items.new('transform.tosphere', 'S', 'PRESS', shift=True, alt=True)191kmi = km.keymap_items.new('transform.shear', 'S', 'PRESS', shift=True, ctrl=True, alt=True)192kmi = km.keymap_items.new('transform.select_orientation', 'SPACE', 'PRESS', alt=True)193kmi = km.keymap_items.new('transform.create_orientation', 'SPACE', 'PRESS', ctrl=True, alt=True)194kmi.properties.use = True195kmi = km.keymap_items.new('transform.mirror', 'M', 'PRESS', ctrl=True)196kmi = km.keymap_items.new('wm.context_toggle', 'TAB', 'PRESS', shift=True)197kmi.properties.data_path = 'tool_settings.use_snap'198kmi = km.keymap_items.new('transform.snap_type', 'TAB', 'PRESS', shift=True, ctrl=True)199kmi = km.keymap_items.new('view3d.enable_manipulator', 'W', 'PRESS')200kmi.properties.translate = True201kmi = km.keymap_items.new('view3d.enable_manipulator', 'E', 'PRESS')202kmi.properties.rotate = True203kmi = km.keymap_items.new('view3d.enable_manipulator', 'R', 'PRESS')204kmi.properties.scale = True205kmi = km.keymap_items.new('view3d.select_border', 'EVT_TWEAK_S', 'ANY', shift=True)206kmi.properties.extend = True207# Map Object Mode208km = kc.keymaps.new('Object Mode', space_type='EMPTY', region_type='WINDOW', modal=False)209kmi = km.keymap_items.new('wm.context_cycle_enum', 'O', 'PRESS', shift=True)210kmi.properties.data_path = 'tool_settings.proportional_edit_falloff'211kmi = km.keymap_items.new('wm.context_toggle_enum', 'O', 'PRESS')212kmi.properties.data_path = 'tool_settings.proportional_edit'213kmi.properties.value_1 = 'DISABLED'214kmi.properties.value_2 = 'ENABLED'215kmi = km.keymap_items.new('view3d.game_start', 'P', 'PRESS')216kmi = km.keymap_items.new('object.select_all', 'A', 'PRESS')217kmi = km.keymap_items.new('object.select_inverse', 'I', 'PRESS', ctrl=True)218kmi = km.keymap_items.new('object.select_linked', 'L', 'PRESS', shift=True)219kmi = km.keymap_items.new('object.select_grouped', 'G', 'PRESS', shift=True)220kmi = km.keymap_items.new('object.select_mirror', 'M', 'PRESS', shift=True, ctrl=True)221kmi = km.keymap_items.new('object.select_hierarchy', 'LEFT_BRACKET', 'PRESS')222kmi.properties.direction = 'PARENT'223kmi = km.keymap_items.new('object.select_hierarchy', 'LEFT_BRACKET', 'PRESS', shift=True)224kmi.properties.direction = 'PARENT'225kmi.properties.extend = True226kmi = km.keymap_items.new('object.select_hierarchy', 'RIGHT_BRACKET', 'PRESS')227kmi.properties.direction = 'CHILD'228kmi = km.keymap_items.new('object.select_hierarchy', 'RIGHT_BRACKET', 'PRESS', shift=True)229kmi.properties.direction = 'CHILD'230kmi.properties.extend = True231kmi = km.keymap_items.new('object.parent_set', 'P', 'PRESS', ctrl=True)232kmi = km.keymap_items.new('object.parent_no_inverse_set', 'P', 'PRESS', shift=True, ctrl=True)233kmi = km.keymap_items.new('object.parent_clear', 'P', 'PRESS', alt=True)234kmi = km.keymap_items.new('object.track_set', 'T', 'PRESS', ctrl=True)235kmi = km.keymap_items.new('object.track_clear', 'T', 'PRESS', alt=True)236kmi = km.keymap_items.new('object.constraint_add_with_targets', 'C', 'PRESS', shift=True, ctrl=True)237kmi = km.keymap_items.new('object.constraints_clear', 'C', 'PRESS', ctrl=True, alt=True)238kmi = km.keymap_items.new('object.location_clear', 'G', 'PRESS', alt=True)239kmi = km.keymap_items.new('object.rotation_clear', 'R', 'PRESS', alt=True)240kmi = km.keymap_items.new('object.scale_clear', 'S', 'PRESS', alt=True)241kmi = km.keymap_items.new('object.origin_clear', 'O', 'PRESS', alt=True)242kmi = km.keymap_items.new('object.hide_view_clear', 'H', 'PRESS', alt=True)243kmi = km.keymap_items.new('object.hide_view_set', 'H', 'PRESS')244kmi = km.keymap_items.new('object.hide_view_set', 'H', 'PRESS', shift=True)245kmi.properties.unselected = True246kmi = km.keymap_items.new('object.move_to_layer', 'M', 'PRESS')247kmi = km.keymap_items.new('object.delete', 'X', 'PRESS')248kmi = km.keymap_items.new('object.delete', 'DEL', 'PRESS')249kmi = km.keymap_items.new('wm.call_menu', 'A', 'PRESS', shift=True)250kmi.properties.name = 'INFO_MT_add'251kmi = km.keymap_items.new('object.duplicates_make_real', 'A', 'PRESS', shift=True, ctrl=True)252kmi = km.keymap_items.new('wm.call_menu', 'A', 'PRESS', ctrl=True)253kmi.properties.name = 'VIEW3D_MT_object_apply'254kmi = km.keymap_items.new('wm.call_menu', 'U', 'PRESS')255kmi.properties.name = 'VIEW3D_MT_make_single_user'256kmi = km.keymap_items.new('wm.call_menu', 'L', 'PRESS', ctrl=True)257kmi.properties.name = 'VIEW3D_MT_make_links'258kmi = km.keymap_items.new('object.duplicate_move', 'D', 'PRESS', shift=True)259kmi = km.keymap_items.new('object.duplicate_move_linked', 'D', 'PRESS', alt=True)260kmi = km.keymap_items.new('object.join', 'J', 'PRESS', ctrl=True)261kmi = km.keymap_items.new('object.convert', 'C', 'PRESS', alt=True)262kmi = km.keymap_items.new('object.proxy_make', 'P', 'PRESS', ctrl=True, alt=True)263kmi = km.keymap_items.new('object.make_local', 'L', 'PRESS')264kmi = km.keymap_items.new('anim.keyframe_insert_menu', 'I', 'PRESS')265kmi = km.keymap_items.new('anim.keyframe_delete_v3d', 'I', 'PRESS', alt=True)266kmi = km.keymap_items.new('anim.keying_set_active_set', 'I', 'PRESS', shift=True, ctrl=True, alt=True)267kmi = km.keymap_items.new('group.create', 'G', 'PRESS', ctrl=True)268kmi = km.keymap_items.new('group.objects_remove', 'G', 'PRESS', ctrl=True, alt=True)269kmi = km.keymap_items.new('group.objects_add_active', 'G', 'PRESS', shift=True, ctrl=True)270kmi = km.keymap_items.new('group.objects_remove_active', 'G', 'PRESS', shift=True, alt=True)271kmi = km.keymap_items.new('wm.call_menu', 'W', 'PRESS', ctrl=True)272kmi.properties.name = 'VIEW3D_MT_object_specials'273kmi = km.keymap_items.new('object.subdivision_set', 'ZERO', 'PRESS', ctrl=True)274kmi.properties.level = 0275kmi = km.keymap_items.new('object.subdivision_set', 'ONE', 'PRESS', ctrl=True)276kmi.properties.level = 1277kmi = km.keymap_items.new('object.subdivision_set', 'TWO', 'PRESS', ctrl=True)278kmi.properties.level = 2279kmi = km.keymap_items.new('object.subdivision_set', 'THREE', 'PRESS', ctrl=True)280kmi.properties.level = 3281kmi = km.keymap_items.new('object.subdivision_set', 'FOUR', 'PRESS', ctrl=True)282kmi.properties.level = 4283kmi = km.keymap_items.new('object.subdivision_set', 'FIVE', 'PRESS', ctrl=True)284kmi.properties.level = 5285kmi = km.keymap_items.new('object.select_all', 'SELECTMOUSE', 'CLICK')286kmi.properties.action = 'DESELECT'287# Map Mesh288km = kc.keymaps.new('Mesh', space_type='EMPTY', region_type='WINDOW', modal=False)289kmi = km.keymap_items.new('mesh.loopcut_slide', 'R', 'PRESS', ctrl=True)290kmi = km.keymap_items.new('mesh.loop_select', 'SELECTMOUSE', 'PRESS', ctrl=True, alt=True)291kmi = km.keymap_items.new('mesh.loop_select', 'SELECTMOUSE', 'PRESS', shift=True, alt=True)292kmi.properties.extend = True293kmi = km.keymap_items.new('mesh.edgering_select', 'SELECTMOUSE', 'PRESS', ctrl=True, alt=True)294kmi = km.keymap_items.new('mesh.edgering_select', 'SELECTMOUSE', 'PRESS', shift=True, ctrl=True, alt=True)295kmi.properties.extend = True296kmi = km.keymap_items.new('mesh.select_shortest_path', 'SELECTMOUSE', 'PRESS', ctrl=True)297kmi = km.keymap_items.new('mesh.select_all', 'A', 'PRESS')298kmi = km.keymap_items.new('mesh.select_more', 'NUMPAD_PLUS', 'PRESS', ctrl=True)299kmi = km.keymap_items.new('mesh.select_less', 'NUMPAD_MINUS', 'PRESS', ctrl=True)300kmi = km.keymap_items.new('mesh.select_inverse', 'I', 'PRESS', ctrl=True)301kmi = km.keymap_items.new('mesh.select_non_manifold', 'M', 'PRESS', shift=True, ctrl=True, alt=True)302kmi = km.keymap_items.new('mesh.select_linked', 'L', 'PRESS', ctrl=True)303kmi = km.keymap_items.new('mesh.select_linked_pick', 'L', 'PRESS')304kmi = km.keymap_items.new('mesh.select_linked_pick', 'L', 'PRESS', shift=True)305kmi.properties.deselect = True306kmi = km.keymap_items.new('mesh.faces_select_linked_flat', 'F', 'PRESS', shift=True, ctrl=True, alt=True)307kmi.properties.sharpness = 135.0308kmi = km.keymap_items.new('mesh.select_similar', 'G', 'PRESS', shift=True)309kmi = km.keymap_items.new('wm.call_menu', 'TAB', 'PRESS', ctrl=True)310kmi.properties.name = 'VIEW3D_MT_edit_mesh_select_mode'311kmi = km.keymap_items.new('mesh.hide', 'H', 'PRESS')312kmi = km.keymap_items.new('mesh.hide', 'H', 'PRESS', shift=True)313kmi.properties.unselected = True314kmi = km.keymap_items.new('mesh.reveal', 'H', 'PRESS', alt=True)315kmi = km.keymap_items.new('mesh.normals_make_consistent', 'N', 'PRESS', ctrl=True)316kmi = km.keymap_items.new('mesh.normals_make_consistent', 'N', 'PRESS', shift=True, ctrl=True)317kmi.properties.inside = True318kmi = km.keymap_items.new('view3d.edit_mesh_extrude_move_normal', 'E', 'PRESS', ctrl=True)319kmi = km.keymap_items.new('view3d.edit_mesh_extrude_individual_move', 'E', 'PRESS', shift=True)320kmi = km.keymap_items.new('wm.call_menu', 'E', 'PRESS', alt=True)321kmi.properties.name = 'VIEW3D_MT_edit_mesh_extrude'322kmi = km.keymap_items.new('mesh.spin', 'R', 'PRESS', alt=True)323kmi = km.keymap_items.new('mesh.fill', 'F', 'PRESS', alt=True)324kmi = km.keymap_items.new('mesh.beautify_fill', 'F', 'PRESS', shift=True, alt=True)325kmi = km.keymap_items.new('mesh.quads_convert_to_tris', 'T', 'PRESS', ctrl=True)326kmi = km.keymap_items.new('mesh.tris_convert_to_quads', 'J', 'PRESS', alt=True)327kmi = km.keymap_items.new('mesh.edge_flip', 'F', 'PRESS', shift=True, ctrl=True)328kmi = km.keymap_items.new('mesh.rip_move', 'V', 'PRESS')329kmi = km.keymap_items.new('mesh.merge', 'M', 'PRESS', alt=True)330kmi = km.keymap_items.new('transform.shrink_fatten', 'S', 'PRESS', ctrl=True, alt=True)331kmi = km.keymap_items.new('mesh.edge_face_add', 'F', 'PRESS')332kmi = km.keymap_items.new('mesh.duplicate_move', 'D', 'PRESS', shift=True)333kmi = km.keymap_items.new('wm.call_menu', 'A', 'PRESS', shift=True)334kmi.properties.name = 'INFO_MT_mesh_add'335kmi = km.keymap_items.new('mesh.separate', 'P', 'PRESS')336kmi = km.keymap_items.new('mesh.split', 'Y', 'PRESS')337kmi = km.keymap_items.new('mesh.dupli_extrude_cursor', 'ACTIONMOUSE', 'CLICK', ctrl=True)338kmi = km.keymap_items.new('mesh.delete', 'X', 'PRESS')339kmi = km.keymap_items.new('mesh.delete', 'DEL', 'PRESS')340kmi = km.keymap_items.new('mesh.knife_cut', 'LEFTMOUSE', 'PRESS', key_modifier='K')341kmi = km.keymap_items.new('mesh.knife_cut', 'LEFTMOUSE', 'PRESS', shift=True, key_modifier='K')342kmi.properties.type = 'MIDPOINTS'343kmi = km.keymap_items.new('object.vertex_parent_set', 'P', 'PRESS', ctrl=True)344kmi = km.keymap_items.new('wm.call_menu', 'W', 'PRESS', ctrl=True)345kmi.properties.name = 'VIEW3D_MT_edit_mesh_specials'346kmi = km.keymap_items.new('wm.call_menu', 'F', 'PRESS', ctrl=True)347kmi.properties.name = 'VIEW3D_MT_edit_mesh_faces'348kmi = km.keymap_items.new('wm.call_menu', 'E', 'PRESS', ctrl=True)349kmi.properties.name = 'VIEW3D_MT_edit_mesh_edges'350kmi = km.keymap_items.new('wm.call_menu', 'V', 'PRESS', ctrl=True)351kmi.properties.name = 'VIEW3D_MT_edit_mesh_vertices'352kmi = km.keymap_items.new('wm.call_menu', 'H', 'PRESS', ctrl=True)353kmi.properties.name = 'VIEW3D_MT_hook'354kmi = km.keymap_items.new('wm.call_menu', 'U', 'PRESS')355kmi.properties.name = 'VIEW3D_MT_uv_map'356kmi = km.keymap_items.new('wm.call_menu', 'G', 'PRESS', ctrl=True)357kmi.properties.name = 'VIEW3D_MT_vertex_group'358kmi = km.keymap_items.new('wm.context_cycle_enum', 'O', 'PRESS', shift=True)359kmi.properties.data_path = 'tool_settings.proportional_edit_falloff'360kmi = km.keymap_items.new('wm.context_toggle_enum', 'O', 'PRESS')361kmi.properties.data_path = 'tool_settings.proportional_edit'362kmi.properties.value_1 = 'DISABLED'363kmi.properties.value_2 = 'ENABLED'364kmi = km.keymap_items.new('wm.context_toggle_enum', 'O', 'PRESS', alt=True)365kmi.properties.data_path = 'tool_settings.proportional_edit'366kmi.properties.value_1 = 'DISABLED'367kmi.properties.value_2 = 'CONNECTED'368kmi = km.keymap_items.new('mesh.select_all', 'SELECTMOUSE', 'CLICK')369kmi.properties.action = 'DESELECT'...

Full Screen

Full Screen

ProgressionTests.py

Source:ProgressionTests.py Github

copy

Full Screen

...5from video_store import Asset, VideoStore6from dialogs import UnableToPlayDialog7import stbt8def test_press_the_key():9 stbt.press('KEY_MENU')10def settings_launch():11 menu_launch()12 stbt.press('KEY_CHANNELDOWN')13 stbt.press('KEY_ENTER')14 assert stbt.wait_until(lambda: stbt.match("images/menu/settings_logo.png")), \15 "Settings not launched"16def enter_pin():17 for _ in " " * 4: stbt.press('KEY_0')18 stbt.press('KEY_ENTER')19def test_DVR_after_changing_settings():20 for _ in " " * 3: stbt.press('KEY_EXIT')21 sleep(1)22 count1 = 123 for _ in " " * 10:24 count1 += 125 settings_launch()26 for _ in " " * 3: stbt.press('KEY_DOWN')27 for _ in " " * 2: stbt.press('KEY_ENTER')28 sleep(1)29 for _ in " " * 2: stbt.press('KEY_RIGHT')30 stbt.press('KEY_ENTER')31 sleep(2)32 enter_pin()33 if count1 % 2 == 0:34 stbt.press('KEY_UP')35 stbt.press('KEY_ENTER')36 for _ in " " * 2: stbt.press('KEY_DOWN')37 stbt.press('KEY_ENTER')38 else:39 stbt.press('KEY_UP')40 stbt.press('KEY_DOWN')41 stbt.press('KEY_ENTER')42 stbt.press('KEY_DOWN')43 stbt.press('KEY_ENTER')44 stbt.press('KEY_RIGHT')45 stbt.press('KEY_ENTER')46 sleep(2)47 enter_pin()48 for _ in " " * 2: stbt.press('KEY_RIGHT')49 stbt.press('KEY_DOWN')50 stbt.press('KEY_ENTER')51 stbt.press('KEY_LEFT')52 stbt.press('KEY_ENTER')53 stbt.press('KEY_RIGHT')54 stbt.press('KEY_ENTER')55 stbt.press('KEY_RIGHT')56 stbt.press('KEY_ENTER')57 sleep(2)58 enter_pin()59 stbt.press('KEY_RIGHT')60 stbt.press('KEY_DOWN')61 stbt.press('KEY_ENTER')62 stbt.press('KEY_LEFT')63 stbt.press('KEY_DOWN')64 stbt.press('KEY_ENTER')65 stbt.press('KEY_RIGHT')66 stbt.press('KEY_ENTER')67 mydvr_launch()68 count = 069 while True:70 stbt.press('KEY_ENTER')71 sleep(1)72 if stbt.match('images/cta/watch.png') or stbt.match('images/cta/resume.png'): break73 count += 174 assert count < 16, \75 "Could not find recording to play in DVR page"76 sleep(2)77 stbt.press('KEY_ENTER')78 sleep(3)79 assert stbt.wait_for_motion(timeout_secs=30)80def mydvr_launch():81 for _ in " " * 3: stbt.press('KEY_EXIT')82 sleep(1)83 stbt.press('KEY_MYDVR')84 assert stbt.wait_until(lambda: stbt.match("images/dvr/my_dvr.png")), \85 "MyDVR not launched"86def test_modify_DVR_options_10plus_times():87 counter = 188 for _ in " " * 3: stbt.press('KEY_EXIT')89 sleep(5)90 stbt.press('KEY_RECORD')91 sleep(2)92 for _ in range(10):93 for _ in " " * 2: stbt.press('KEY_EXIT')94 sleep(2)95 stbt.press('KEY_RECORD')96 if not stbt.wait_until(lambda: stbt.match("images/dvr/edit_ep_rec.png")) and not stbt.wait_until(97 lambda: stbt.match("images/dvr/edit_ep_deleted.png")):98 for _ in " " * 2: stbt.press('KEY_EXIT')99 sleep(2)100 stbt.press('KEY_RECORD')101 if counter == 1 and stbt.wait_until(lambda: stbt.match("images/dvr/edit_ep_deleted.png")):102 stbt.press('KEY_RIGHT')103 stbt.press('KEY_UP')104 for _ in " " * 3: stbt.press('KEY_LEFT')105 stbt.press('KEY_ENTER')106 sleep(2)107 counter += 1108 if counter % 2 == 0:109 stbt.press('KEY_RIGHT')110 assert stbt.wait_until(lambda: stbt.match("images/dvr/edit_ep_deleted.png")), \111 "Cannot edit recording setting"112 stbt.press('KEY_UP')113 for _ in " " * 3: stbt.press('KEY_LEFT')114 stbt.press('KEY_ENTER')115 else:116 stbt.press('KEY_RIGHT')117 assert stbt.wait_until(lambda: stbt.match("images/dvr/edit_ep_rec.png")), \118 "Cannot edit recording setting"119 stbt.press('KEY_UP')120 for _ in " " * 3: stbt.press('KEY_LEFT')121 stbt.press('KEY_ENTER')122def test_modify_DVR_from_miniG_50plus_times():123 counter = 1124 for _ in " " * 3: stbt.press('KEY_EXIT')125 sleep(5)126 stbt.press('KEY_RECORD')127 sleep(2)128 for _ in range(50):129 for _ in " " * 2: stbt.press('KEY_EXIT')130 sleep(3)131 for _ in " " * 2: stbt.press('KEY_ENTER')132 sleep(1)133 stbt.press('KEY_RECORD')134 if not stbt.wait_until(lambda: stbt.match("images/dvr/edit_ep_rec.png")) and not stbt.wait_until(135 lambda: stbt.match("images/dvr/edit_ep_deleted.png")):136 stbt.press('KEY_RECORD')137 if counter == 1 and stbt.wait_until(lambda: stbt.match("images/dvr/edit_ep_deleted.png")):138 stbt.press('KEY_RIGHT')139 stbt.press('KEY_UP')140 for _ in " " * 3: stbt.press('KEY_LEFT')141 stbt.press('KEY_ENTER')142 sleep(2)143 counter += 1144 if counter % 2 == 0:145 stbt.press('KEY_RIGHT')146 assert stbt.wait_until(lambda: stbt.match("images/dvr/edit_ep_deleted.png")), \147 "Cannot edit recording setting"148 stbt.press('KEY_UP')149 for _ in " " * 3: stbt.press('KEY_LEFT')150 stbt.press('KEY_ENTER')151 else:152 stbt.press('KEY_RIGHT')153 assert stbt.wait_until(lambda: stbt.match("images/dvr/edit_ep_rec.png")), \154 "Cannot edit recording setting"155 stbt.press('KEY_UP')156 for _ in " " * 3: stbt.press('KEY_LEFT')157 stbt.press('KEY_ENTER')158def test_tuning_channels_5_times():159 for _ in " " * 3: stbt.press('KEY_EXIT')160 if not stbt.wait_until(lambda: stbt.match("images/env/do_you_want_to_upgrade.png")) and not stbt.wait_until(161 lambda: stbt.match("images/env/channel_unavailable.png")) and not stbt.wait_until(162 lambda: stbt.match("images/env/title_blocked.png")):163 assert stbt.wait_until(lambda: stbt.wait_for_motion()), \164 "Live TV not reached at test start"165 channels = [25, 31, 27, 29, 30]166 t = 0167 for ch in channels:168 t += 1169 for x in list(str(ch)):170 stbt.press("KEY_" + x)171 sleep(0.6)172 sleep(4)173 if stbt.match('images/dvr/continue_to_miniguide.png') and t == 1:174 for _ in " " * 2: stbt.press('KEY_RIGHT')175 for _ in " " * 2: stbt.press('KEY_ENTER')176 stbt.press('KEY_RIGHT')177 stbt.press('KEY_ENTER')178 print (t)179 sleep(20)180 if not stbt.wait_until(lambda: stbt.match("images/env/do_you_want_to_upgrade.png")) and not stbt.wait_until(181 lambda: stbt.match("images/env/channel_unavailable.png")) and not stbt.wait_until(182 lambda: stbt.match("images/env/title_blocked.png")):183 assert stbt.wait_until(lambda: stbt.wait_for_motion()), \184 "New channel " + str(ch) + " not reached on channel change number " + t185def test_tuning_channels_20plus_times():186 for _ in " " * 3: stbt.press('KEY_EXIT')187 if not stbt.wait_until(lambda: stbt.match("images/env/do_you_want_to_upgrade.png")) and not stbt.wait_until(188 lambda: stbt.match("images/env/channel_unavailable.png")):189 assert stbt.wait_until(lambda: stbt.wait_for_motion()), \190 "Live TV not reached at test start"191 channels = [21, 24, 27, 29]192 t = 0193 for _ in range(5):194 for ch in channels:195 t += 1196 for x in list(str(ch)):197 stbt.press("KEY_" + x)198 sleep(0.6)199 sleep(4)200 if stbt.match('images/dvr/continue_to_miniguide.png') and t == 1:201 for _ in " " * 2: stbt.press('KEY_RIGHT')202 for _ in " " * 2: stbt.press('KEY_ENTER')203 stbt.press('KEY_RIGHT')204 stbt.press('KEY_ENTER')205 print (t)206 if not stbt.wait_until(lambda: stbt.match("images/env/do_you_want_to_upgrade.png")) and not stbt.wait_until(207 lambda: stbt.match("images/env/channel_unavailable.png")):208 assert stbt.wait_until(lambda: stbt.wait_for_motion()), \209 "New channel " + str(ch) + " not reached on channel change number " + t210def test_play_VOD_50plus_times():211 for _ in " " * 3: stbt.press('KEY_EXIT')212 VideoStore.open()213 # Find an asset that hasn't been rented yet.214 for _ in range(20): # Try 20 assets215 # Wait for asset title to stabilise -- it loads slightly after the216 # Video Store logo appears.217 title = wait_until(lambda: VideoStore().selection, stable_secs=1)218 print "Checking asset to see if we can rent it: %s" % title219 stbt.press("KEY_ENTER")220 asset = wait_until(Asset, timeout_secs=20)221 if asset.rentable:222 print "Asset is rentable; trying to rent it"223 asset.rent()224 try:225 stbt.wait_for_motion(timeout_secs=30,226 mask="images/vod/mask-out-playbar.png")227 print "Successfully rented: %s" % title228 break229 except stbt.MotionTimeout:230 if UnableToPlayDialog():231 UnableToPlayDialog().dismiss()232 else:233 assert False, "Didn't detect video playback *nor* " \234 "the 'Unable to Play' dialog."235 stbt.press("KEY_LAST")236 assert wait_until(VideoStore), \237 "Didn't detect VideoStore main carousel after pressing back"238 stbt.press("KEY_RIGHT")239 assert wait_until(240 # pylint:disable=cell-var-from-loop241 lambda: VideoStore().selection != title), \242 "Carousel selection didn't change after pressing right"243 else:244 assert False, "Didn't find rentable playable asset after 20 attempts"245 for _ in range(50):246 stbt.press('KEY_EXIT')247 MyLibrary.open().navigate_to("Expiring Soon", title)248 # MyLibrary.open().navigate_to("Expiring Soon")249 stbt.press('KEY_ENTER')250 assert wait_until(lambda: Asset().title == title)251 assert Asset().selected_button.text == "RESTART"252 stbt.press('KEY_ENTER')253 assert stbt.wait_for_motion(timeout_sec=20)254def test_DVR_playback_10plus_times_yes_TTS():255 # Turn on TTS256 for _ in " " * 3: stbt.press('KEY_EXIT')257 GNarration_setting("On")258 for _ in range(10):259 count = 0260 for _ in " " * 3: stbt.press('KEY_EXIT')261 sleep(2)262 if stbt.match('images/env/exit_overlay.png'):263 stbt.press('KEY_ENTER')264 sleep(2)265 sleep(3)266 stbt.press('KEY_MYDVR')267 sleep(3)268 if stbt.match('images/dvr/cancel_a_recording.png'):269 for _ in " " * 2: stbt.press('KEY_RIGHT')270 for _ in " " * 2: stbt.press('KEY_ENTER')271 stbt.press('KEY_RIGHT')272 stbt.press('KEY_ENTER')273 assert stbt.wait_until(lambda: stbt.match("images/dvr/my_dvr.png")), \274 "MyDVR not launched"275 while True:276 stbt.press('KEY_ENTER')277 sleep(1)278 if stbt.match('images/cta/watch.png') or stbt.match('images/cta/resume.png'): break279 count += 1280 assert count < 16, \281 "Could not find recording to play in DVR page"282 sleep(2)283 stbt.press('KEY_ENTER')284 sleep(3)285 assert stbt.wait_for_motion(timeout_secs=20)286def test_DVR_playback_50plus_times_no_TTS():287 # Turn off TTS288 for _ in " " * 3: stbt.press('KEY_EXIT')289 count = 0290 # GNarration_setting("Off")291 for _ in range(51):292 count = 0293 for _ in " " * 3: stbt.press('KEY_EXIT')294 sleep(3)295 stbt.press('KEY_MYDVR')296 sleep(3)297 if stbt.match('images/dvr/cancel_a_recording.png'):298 for _ in " " * 2: stbt.press('KEY_RIGHT')299 for _ in " " * 2: stbt.press('KEY_ENTER')300 stbt.press('KEY_RIGHT')301 stbt.press('KEY_ENTER')302 assert stbt.wait_until(lambda: stbt.match("images/dvr/my_dvr.png")), \303 "MyDVR not launched"304 while True:305 stbt.press('KEY_ENTER')306 sleep(1)307 if stbt.match('images/cta/watch.png') or stbt.match('images/cta/resume.png'): break308 count += 1309 assert count < 20, \310 "Could not find recording to play in DVR page"311 sleep(2)312 stbt.press('KEY_ENTER')313 sleep(3)314 assert stbt.wait_for_motion(timeout_secs=20)315def guide_launch():316 stbt.press('KEY_GUIDE')317 assert stbt.wait_until(lambda: stbt.match("images/guide/guide_options.png")), \318 "Guide not launched"319def menu_launch():320 for _ in " " * 2: stbt.press('KEY_EXIT')321 stbt.press('KEY_MENU')322 assert stbt.wait_until(lambda: stbt.match("images/menu/menu_logo.png")), \323 "Menu not launched"324def test_random_presses_multiple_session():325 for _ in " " * 3: stbt.press('KEY_EXIT')326 for _ in " " * 10:327 guide_launch()328 for _ in " " * 3: stbt.press('KEY_DOWN')329 for _ in " " * 3: stbt.press('KEY_RIGHT')330 for _ in " " * 3: stbt.press('KEY_LEFT')331 menu_launch()332 stbt.press('KEY_UP')333 stbt.press('KEY_ENTER')334 sleep(1)335 stbt.press('KEY_INFO')336 sleep(2)337 stbt.press('KEY_LAST')338 for _ in " " * 2: stbt.press('KEY_OPTIONS')339 sleep(1)340 for _ in " " * 3: stbt.press('KEY_EXIT')341 count = 0342 while True:343 if not stbt.wait_until(lambda: stbt.wait_for_motion(timeout_secs=10)):344 stbt.press('KEY_CHANNELUP')345 else:346 break347 count += 1348 assert count < 4, \349 "No motion found on Live after 4 channel changes"350 menu_launch()351 for _ in " " * 5: stbt.press('KEY_UP')352 for _ in " " * 2: stbt.press('KEY_DOWN')353 stbt.press('KEY_ENTER')354 for _ in " " * 5: stbt.press('KEY_DOWN')355 for _ in " " * 5: stbt.press('KEY_UP')356 stbt.press('KEY_LEFT')357 stbt.press('KEY_RIGHT')358 stbt.press('KEY_LEFT')359 stbt.press('KEY_RIGHT')360 stbt.press('KEY_LEFT')361 stbt.press('KEY_RIGHT')362 stbt.press('KEY_ENTER')363 for _ in " " * 3: stbt.press('KEY_EXIT')364 assert stbt.wait_for_motion(timeout_secs=20)365def test_20_trickplay_buttons_on_TSB():366 for _ in " " * 3: stbt.press('KEY_EXIT')367 if stbt.wait_until(lambda: stbt.match("images/dvr/pause.png")):368 stbt.press('KEY_PLAYPAUSE')369 count = 0370 while True:371 if not stbt.wait_until(lambda: stbt.wait_for_motion(timeout_secs=10)):372 stbt.press('KEY_CHANNELUP')373 else:374 break375 count += 1376 assert count < 4, \377 "No motion found on Live after 4 channel changes"378 sleep(2)379 stbt.press('KEY_PLAYPAUSE')380 assert stbt.wait_until(lambda: stbt.match("images/dvr/pause.png")), \381 "Unable to pause Live"382 sleep(50)383 for _ in range(5):384 stbt.press('KEY_PLAYPAUSE')385 assert stbt.wait_until(lambda: stbt.match("images/dvr/play.png")), \386 "Unable to play Live after pause"387 stbt.press('KEY_LEFT')388 assert stbt.wait_until(lambda: stbt.match("images/dvr/rewind.png")), \389 "Unable to rewind Live"390 for _ in " " * 2: stbt.press('KEY_RIGHT')391 assert stbt.wait_until(lambda: stbt.match("images/dvr/fastforward.png")), \392 "Unable to fastforward Live"393 stbt.press('KEY_PLAYPAUSE')394 assert stbt.wait_until(lambda: stbt.match("images/dvr/play.png")), \395 "Unable to play Live"396 stbt.press('KEY_PLAYPAUSE')397 assert stbt.wait_until(lambda: stbt.match("images/dvr/pause.png")), \398 "Unable to pause Live"399def test_20_trickplay_buttons_on_TSB_iguide():400 if stbt.wait_until(lambda: stbt.match("images/dvr/i_pause.png")):401 stbt.press('KEY_PLAY')402 count = 0403 while True:404 if not stbt.wait_until(lambda: stbt.wait_for_motion(timeout_secs=10)):405 stbt.press('KEY_CHANNELUP')406 else:407 break408 count += 1409 assert count < 4, \410 "No motion found on Live after 4 channel changes"411 sleep(2)412 stbt.press('KEY_PAUSE')413 assert stbt.wait_until(lambda: stbt.match("images/dvr/i_pause.png")), \414 "Unable to pause Live"415 sleep(80)416 for _ in range(10):417 stbt.press('KEY_PLAY')418 assert stbt.wait_until(lambda: stbt.match("images/dvr/i_play.png")), \419 "Unable to play Live after pause"420 stbt.press('KEY_REWIND')421 assert stbt.wait_until(lambda: stbt.match("images/dvr/i_rewind.png")), \422 "Unable to rewind Live"423 for _ in " " * 2: stbt.press('KEY_FASTFORWARD')424 assert stbt.wait_until(lambda: stbt.match("images/dvr/i_fastforward.png")), \425 "Unable to fastforward Live"426 stbt.press('KEY_PLAY')427 assert stbt.wait_until(lambda: stbt.match("images/dvr/i_play.png")), \428 "Unable to play Live"429 stbt.press('KEY_PAUSE')430 assert stbt.wait_until(lambda: stbt.match("images/dvr/i_pause.png")), \...

Full Screen

Full Screen

Automation Testing Tutorials

Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.

LambdaTest Learning Hubs:

YouTube

You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.

Run Airtest automation tests on LambdaTest cloud grid

Perform automation testing on 3000+ real desktop and mobile devices online.

Try LambdaTest Now !!

Get 100 minutes of automation test minutes FREE!!

Next-Gen App & Browser Testing Cloud

Was this article helpful?

Helpful

NotHelpful