Merge branch 'blender-v4.0-release'
[blender-addons.git] / pose_library / __init__.py
blobb8e40e8f7294d3ec6466855e42b31dc08ffd45bf
1 # SPDX-FileCopyrightText: 2021-2023 Blender Foundation
3 # SPDX-License-Identifier: GPL-2.0-or-later
5 """
6 Pose Library based on the Asset Browser.
7 """
9 bl_info = {
10 "name": "Pose Library",
11 "description": "Pose Library based on the asset system.",
12 "author": "Sybren A. Stüvel, Julian Eisel",
13 "version": (2, 0),
14 "blender": (3, 0, 0),
15 "location": "Asset Browser -> Animations, and 3D Viewport -> Animation panel",
16 "doc_url": "{BLENDER_MANUAL_URL}/animation/armatures/posing/editing/pose_library.html",
17 "support": "OFFICIAL",
18 "category": "Animation",
21 from typing import List, Tuple
23 _need_reload = "operators" in locals()
24 from . import gui, keymaps, operators, conversion
26 if _need_reload:
27 import importlib
29 gui = importlib.reload(gui)
30 keymaps = importlib.reload(keymaps)
31 operators = importlib.reload(operators)
32 conversion = importlib.reload(conversion)
34 import bpy
36 addon_keymaps: List[Tuple[bpy.types.KeyMap, bpy.types.KeyMapItem]] = []
39 def register() -> None:
40 bpy.types.WindowManager.poselib_previous_action = bpy.props.PointerProperty(type=bpy.types.Action)
42 operators.register()
43 keymaps.register()
44 gui.register()
47 def unregister() -> None:
48 gui.unregister()
49 keymaps.unregister()
50 operators.unregister()
52 try:
53 del bpy.types.WindowManager.poselib_previous_action
54 except AttributeError:
55 pass