# SPDX-License-Identifier: GPL-2.0-or-later """ Pose Library based on the Asset Browser. """ bl_info = { "name": "Pose Library", "description": "Pose Library based on the Asset Browser.", "author": "Sybren A. Stüvel", "version": (2, 0), "blender": (3, 0, 0), "location": "Asset Browser -> Animations, and 3D Viewport -> Animation panel", "doc_url": "{BLENDER_MANUAL_URL}/animation/armatures/posing/editing/pose_library.html", "support": "OFFICIAL", "category": "Animation", } from typing import List, Tuple _need_reload = "operators" in locals() from . import gui, keymaps, operators, conversion if _need_reload: import importlib gui = importlib.reload(gui) keymaps = importlib.reload(keymaps) operators = importlib.reload(operators) conversion = importlib.reload(conversion) import bpy addon_keymaps: List[Tuple[bpy.types.KeyMap, bpy.types.KeyMapItem]] = [] def register() -> None: bpy.types.WindowManager.poselib_flipped = bpy.props.BoolProperty( name="Flip Pose", default=False, ) bpy.types.WindowManager.poselib_previous_action = bpy.props.PointerProperty(type=bpy.types.Action) operators.register() keymaps.register() gui.register() def unregister() -> None: gui.unregister() keymaps.unregister() operators.unregister() try: del bpy.types.WindowManager.poselib_flipped except AttributeError: pass try: del bpy.types.WindowManager.poselib_previous_action except AttributeError: pass