65 lines
1.7 KiB
Python
65 lines
1.7 KiB
Python
import bpy
|
|
from . import gui, operators, common, keymaps
|
|
bl_info = \
|
|
{
|
|
"name": "Damn Simple Pose Library",
|
|
"author": "breakingspell",
|
|
"version": (0, 1, 0),
|
|
"blender": (3, 6, 0),
|
|
"description": "Re-implement Pose Library",
|
|
"category": "Object Data",
|
|
}
|
|
|
|
|
|
_need_reload = "operators" in locals()
|
|
|
|
if _need_reload:
|
|
import importlib
|
|
|
|
gui = importlib.reload(gui)
|
|
common = importlib.reload(common)
|
|
keymaps = importlib.reload(keymaps)
|
|
operators = importlib.reload(operators)
|
|
|
|
|
|
class dsplSettings(bpy.types.PropertyGroup):
|
|
new_menu: bpy.props.BoolProperty(
|
|
name="New Menu", description="Toggle New Menu", default=True)
|
|
edit_mode: bpy.props.BoolProperty(
|
|
name="Edit Mode", description="Toggle Edit Mode", default=False)
|
|
|
|
classes = dsplSettings
|
|
|
|
def pose_libraries_poll(self, action):
|
|
if getattr(action, "pose_markers", None):
|
|
return True
|
|
|
|
def register():
|
|
from bpy.utils import register_class
|
|
register_class(dsplSettings)
|
|
|
|
bpy.types.Object.pose_library = bpy.props.PointerProperty(
|
|
name="Active Pose Library", description="",
|
|
type=bpy.types.Action, override={'LIBRARY_OVERRIDABLE'},
|
|
poll=pose_libraries_poll)
|
|
|
|
bpy.types.Scene.dsplSettings = bpy.props.PointerProperty(
|
|
type=dsplSettings, override={'LIBRARY_OVERRIDABLE'})
|
|
|
|
gui.register()
|
|
operators.register()
|
|
keymaps.register()
|
|
|
|
def unregister():
|
|
from bpy.utils import unregister_class
|
|
unregister_class(dsplSettings)
|
|
|
|
del bpy.types.Scene.dsplSettings
|
|
del bpy.types.Object.pose_library
|
|
|
|
keymaps.unregister()
|
|
operators.unregister()
|
|
gui.unregister()
|
|
|
|
if __name__ == "__main__":
|
|
register() |