Skip to content
Snippets Groups Projects
scene_amaranth_toolset.py 116 KiB
Newer Older
  • Learn to ignore specific revisions
  • Pablo Vazquez's avatar
    Pablo Vazquez committed
               AMTH_MESH_OT_make_symmetric,
               AMTH_NODE_OT_AddTemplateVignette,
    
    Pablo Vazquez's avatar
    Pablo Vazquez committed
               AMTH_NODE_OT_AddTemplateVectorBlur,
    
    Pablo Vazquez's avatar
    Pablo Vazquez committed
               AMTH_NODE_MT_amaranth_templates,
               AMTH_FILE_OT_directory_current_blend,
               AMTH_FILE_OT_directory_go_to,
               AMTH_NODE_PT_indices,
               AMTH_NODE_PT_simplify,
               AMTH_NODE_OT_toggle_mute,
               AMTH_NODE_OT_show_active_node_image,
               AMTH_VIEW3D_OT_render_border_camera,
               AMTH_VIEW3D_OT_show_only_render,
               AMTH_OBJECT_OT_select_meshlights,
               AMTH_OBJECT_OT_id_dupligroup,
               AMTH_OBJECT_OT_id_dupligroup_clear,
               AMTH_OBJECT_OT_material_remove_unassigned,
    
    Pablo Vazquez's avatar
    Pablo Vazquez committed
               AMTH_OBJECT_OT_wire_toggle,
               AMTH_OBJECT_OT_meshlight_add,
    
    Pablo Vazquez's avatar
    Pablo Vazquez committed
               AMTH_POSE_OT_paths_clear_all,
               AMTH_POSE_OT_paths_frame_match,
               AMTH_RENDER_OT_cycles_samples_percentage,
               AMTH_RENDER_OT_cycles_samples_percentage_set,
    
    Pablo Vazquez's avatar
    Pablo Vazquez committed
               AMTH_FILE_PT_libraries,
    
    Pablo Vazquez's avatar
    Pablo Vazquez committed
               AMTH_SCREEN_OT_frame_jump,
               AMTH_SCREEN_OT_keyframe_jump_inbetween)
    
    
    addon_keymaps = []
    
    def register():
    
        bpy.utils.register_class(AmaranthToolsetPreferences)
    
        # UI: Register the panel
        init_properties()
        for c in classes:
            bpy.utils.register_class(c)
    
        bpy.types.VIEW3D_MT_object_specials.append(button_refresh)
        bpy.types.VIEW3D_MT_object_specials.append(button_render_border_camera)
        bpy.types.VIEW3D_MT_object_specials.append(button_camera_passepartout)
    
    Pablo Vazquez's avatar
    Pablo Vazquez committed
        bpy.types.VIEW3D_MT_object_specials.append(button_frame_current)
        bpy.types.VIEW3D_MT_pose_specials.append(button_frame_current)
        bpy.types.VIEW3D_MT_select_object.append(button_select_meshlights)
        bpy.types.VIEW3D_HT_header.append(ui_layers_for_render_header)
    
    
        bpy.types.INFO_MT_file.append(button_save_reload)
        bpy.types.INFO_HT_header.append(stats_scene)
    
    
    Pablo Vazquez's avatar
    Pablo Vazquez committed
        bpy.types.TIME_HT_header.append(label_timeline_extra_info)
    
    
        bpy.types.NODE_HT_header.append(node_templates_pulldown)
        bpy.types.NODE_HT_header.append(node_stats)
    
        bpy.types.NODE_HT_header.append(node_shader_extra)
    
    Pablo Vazquez's avatar
    Pablo Vazquez committed
        bpy.types.NODE_PT_active_node_properties.append(ui_node_normal_values)
    
    Pablo Vazquez's avatar
    Pablo Vazquez committed
        if cycles_exists:
            bpy.types.CyclesRender_PT_sampling.append(render_cycles_scene_samples)
            bpy.types.CyclesScene_PT_simplify.append(unsimplify_ui)
    
    
        bpy.types.FILEBROWSER_HT_header.append(button_directory_current_blend)
    
        bpy.types.SCENE_PT_simplify.append(unsimplify_ui)
    
    
        bpy.types.DATA_PT_display.append(pose_motion_paths_ui)
    
        bpy.types.RENDER_PT_dimensions.append(render_final_resolution_ui)
    
    Pablo Vazquez's avatar
    Pablo Vazquez committed
        bpy.types.RENDER_PT_output.append(ui_render_output_z)
    
    
        bpy.types.SCENE_PT_color_management.prepend(ui_color_management_presets)
    
    Pablo Vazquez's avatar
    Pablo Vazquez committed
        bpy.types.SEQUENCER_HT_header.append(ui_sequencer_extra_info)
    
        bpy.types.OBJECT_PT_duplication.append(ui_dupli_group_library_path)
    
    
    Pablo Vazquez's avatar
    Pablo Vazquez committed
        bpy.types.OBJECT_PT_relations.append(ui_object_id_duplis)
    
        bpy.types.MATERIAL_MT_specials.append(ui_material_remove_unassigned)
    
    
    Pablo Vazquez's avatar
    Pablo Vazquez committed
        bpy.types.USERPREF_PT_edit.append(ui_userpreferences_edit)
    
    
    Pablo Vazquez's avatar
    Pablo Vazquez committed
        bpy.types.RENDERLAYER_PT_layers.append(ui_layers_for_render)
    
    
    Pablo Vazquez's avatar
    Pablo Vazquez committed
        bpy.types.VIEW3D_PT_view3d_display.append(ui_object_wire_toggle)
    
        bpy.types.INFO_MT_mesh_add.append(ui_menu_lamps_add)
    
    
        bpy.app.handlers.render_pre.append(unsimplify_render_pre)
        bpy.app.handlers.render_post.append(unsimplify_render_post)
    
        wm = bpy.context.window_manager
        kc = wm.keyconfigs.addon
        if kc:
    
    Pablo Vazquez's avatar
    Pablo Vazquez committed
            km = kc.keymaps.new(name='Node Editor', space_type='NODE_EDITOR')
    
    Pablo Vazquez's avatar
    Pablo Vazquez committed
            km.keymap_items.new("node.show_active_node_image", 'ACTIONMOUSE', 'DOUBLE_CLICK')
    
    Pablo Vazquez's avatar
    Pablo Vazquez committed
    
            km = kc.keymaps.new(name='Node Editor', space_type='NODE_EDITOR')
            kmi = km.keymap_items.new('wm.call_menu', 'W', 'PRESS')
    
    Pablo Vazquez's avatar
    Pablo Vazquez committed
            kmi.properties.name = "AMTH_NODE_MT_amaranth_templates"
    
            km = kc.keymaps.new(name='Window')
            kmi = km.keymap_items.new('scene.refresh', 'F5', 'PRESS', shift=False, ctrl=False)
            kmi = km.keymap_items.new('wm.save_reload', 'W', 'PRESS', shift=True, ctrl=True)
    
    
    Pablo Vazquez's avatar
    Pablo Vazquez committed
            km = kc.keymaps.new(name='Frames')
            kmi = km.keymap_items.new('screen.amaranth_frame_jump', 'UP_ARROW', 'PRESS', shift=True)
            kmi.properties.forward = True
            kmi = km.keymap_items.new('screen.amaranth_frame_jump', 'DOWN_ARROW', 'PRESS', shift=True)
            kmi.properties.forward = False
    
    
    Pablo Vazquez's avatar
    Pablo Vazquez committed
            km = kc.keymaps.new(name='Frames')
            kmi = km.keymap_items.new('screen.amth_keyframe_jump_inbetween', 'UP_ARROW', 'PRESS', shift=True, ctrl=True)
            kmi.properties.backwards = False
            kmi = km.keymap_items.new('screen.amth_keyframe_jump_inbetween', 'DOWN_ARROW', 'PRESS', shift=True, ctrl=True)
            kmi.properties.backwards = True
    
    
            km = kc.keymaps.new(name='3D View', space_type='VIEW_3D')
            kmi = km.keymap_items.new('view3d.show_only_render', 'Z', 'PRESS', shift=True, alt=True)
    
    
    Pablo Vazquez's avatar
    Pablo Vazquez committed
            km = kc.keymaps.new(name='Graph Editor', space_type='GRAPH_EDITOR')
            kmi = km.keymap_items.new('wm.context_set_enum', 'TAB', 'PRESS', ctrl=True)
            kmi.properties.data_path = 'area.type'
            kmi.properties.value = 'DOPESHEET_EDITOR'
    
            km = kc.keymaps.new(name='Dopesheet', space_type='DOPESHEET_EDITOR')
            kmi = km.keymap_items.new('wm.context_set_enum', 'TAB', 'PRESS', ctrl=True)
            kmi.properties.data_path = 'area.type'
            kmi.properties.value = 'GRAPH_EDITOR'
    
            km = kc.keymaps.new(name='Dopesheet', space_type='DOPESHEET_EDITOR')
            kmi = km.keymap_items.new('wm.context_toggle_enum', 'TAB', 'PRESS', shift=True)
            kmi.properties.data_path = 'space_data.mode'
            kmi.properties.value_1 = 'ACTION'
            kmi.properties.value_2 = 'DOPESHEET'
    
    
            addon_keymaps.append((km, kmi))
    
    def unregister():
    
        bpy.utils.unregister_class(AmaranthToolsetPreferences)
    
        for c in classes:
            bpy.utils.unregister_class(c)
    
        bpy.types.VIEW3D_MT_object_specials.remove(button_refresh)
        bpy.types.VIEW3D_MT_object_specials.remove(button_render_border_camera)
        bpy.types.VIEW3D_MT_object_specials.remove(button_camera_passepartout)
        bpy.types.VIEW3D_MT_object_specials.remove(button_frame_current)
        bpy.types.VIEW3D_MT_pose_specials.remove(button_frame_current)
        bpy.types.VIEW3D_MT_select_object.remove(button_select_meshlights)
    
    Pablo Vazquez's avatar
    Pablo Vazquez committed
        bpy.types.VIEW3D_HT_header.remove(ui_layers_for_render_header)
    
        bpy.types.INFO_MT_file.remove(button_save_reload)
        bpy.types.INFO_HT_header.remove(stats_scene)
    
    
        bpy.types.TIME_HT_header.remove(label_timeline_extra_info)
    
        bpy.types.NODE_HT_header.remove(node_templates_pulldown)
        bpy.types.NODE_HT_header.remove(node_stats)
    
        bpy.types.NODE_HT_header.remove(node_shader_extra)
    
    Pablo Vazquez's avatar
    Pablo Vazquez committed
        bpy.types.NODE_PT_active_node_properties.remove(ui_node_normal_values)
    
    Pablo Vazquez's avatar
    Pablo Vazquez committed
        if cycles_exists:
            bpy.types.CyclesRender_PT_sampling.remove(render_cycles_scene_samples)
            bpy.types.CyclesScene_PT_simplify.remove(unsimplify_ui)
    
    
        bpy.types.FILEBROWSER_HT_header.remove(button_directory_current_blend)
    
        bpy.types.SCENE_PT_simplify.remove(unsimplify_ui)
    
    
        bpy.types.DATA_PT_display.remove(pose_motion_paths_ui)
    
        bpy.types.RENDER_PT_dimensions.remove(render_final_resolution_ui)
    
    Pablo Vazquez's avatar
    Pablo Vazquez committed
        bpy.types.RENDER_PT_output.remove(ui_render_output_z)
    
    
        bpy.types.SCENE_PT_color_management.remove(ui_color_management_presets)
    
    Pablo Vazquez's avatar
    Pablo Vazquez committed
        bpy.types.SEQUENCER_HT_header.remove(ui_sequencer_extra_info)
    
        bpy.types.OBJECT_PT_duplication.remove(ui_dupli_group_library_path)
    
    
    Pablo Vazquez's avatar
    Pablo Vazquez committed
        bpy.types.OBJECT_PT_relations.remove(ui_object_id_duplis)
    
        bpy.types.MATERIAL_MT_specials.remove(ui_material_remove_unassigned)
    
    
    Pablo Vazquez's avatar
    Pablo Vazquez committed
        bpy.types.USERPREF_PT_edit.remove(ui_userpreferences_edit)
    
    
    Pablo Vazquez's avatar
    Pablo Vazquez committed
        bpy.types.RENDERLAYER_PT_layers.remove(ui_layers_for_render)
    
    
    Pablo Vazquez's avatar
    Pablo Vazquez committed
        bpy.types.VIEW3D_PT_view3d_display.remove(ui_object_wire_toggle)
    
        bpy.types.INFO_MT_mesh_add.remove(ui_menu_lamps_add)
    
    
        bpy.app.handlers.render_pre.remove(unsimplify_render_pre)
        bpy.app.handlers.render_post.remove(unsimplify_render_post)
    
        for km, kmi in addon_keymaps:
            km.keymap_items.remove(kmi)
        addon_keymaps.clear()
    
        clear_properties()
    
    if __name__ == "__main__":
        register()