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 dsplObj(bpy.types.PropertyGroup): pose_library: bpy.props.PointerProperty( name="Active Pose Library", description="", override={'LIBRARY_OVERRIDABLE'}, type=bpy.types.Action) # update = common.poselib_update) # , update = anim_layers.layer_name_update 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 = (dsplObj, dsplSettings) def register(): from bpy.utils import register_class for cls in classes: register_class(cls) # bpy.types.Armature.pose_library = bpy.props.PointerProperty( # type=dsplObj, override={'LIBRARY_OVERRIDABLE'}) # bpy.types.Object.pose_library = bpy.props.PointerProperty( # type=bpy.types.Action, options={'LIBRARY_EDITABLE'}, override={'LIBRARY_OVERRIDABLE'}) bpy.types.Object.dspl = bpy.props.PointerProperty( type=dsplObj, override={'LIBRARY_OVERRIDABLE'}) bpy.types.Scene.dsplSettings = bpy.props.PointerProperty( type=dsplSettings, override={'LIBRARY_OVERRIDABLE'}) gui.register() operators.register() keymaps.register() def unregister() -> None: from bpy.utils import unregister_class for cls in classes: unregister_class(cls) del bpy.types.Object.dspl del bpy.types.Scene.dsplSettings keymaps.unregister() operators.unregister() gui.unregister() if __name__ == "__main__": register()