bl_info = { 'name': 'Package Manager', 'description': 'Testing package management', 'category': 'System', 'support': 'TESTING', } import bpy class PackageSettings(bpy.types.PropertyGroup): url = bpy.props.StringProperty(name="URL") # class PackageManager: # # For some reason accessing 'settings' PointerProperty via wm.package_manager.settings gives a value error # # but accessing it when not stored in this class (wm.package_manager_settings) is fine? # # settings = bpy.props.PointerProperty(type=PackageSettings) # pipes = [] def register(): from . import (pkg_ops, pkg_ui) bpy.utils.register_class(PackageSettings) # bpy.types.WindowManager.package_manager = PackageManager() bpy.types.WindowManager.package_manager_settings = bpy.props.PointerProperty(type=PackageSettings) pkg_ops.register() pkg_ui.register() def unregister(): from . import (pkg_ops, pkg_ui) pkg_ops.unregister() pkg_ui.unregister(); bpy.utils.unregister_class(PackageSettings) del bpy.types.WindowManager.package_manager