"""Preferences for AMZN Character Tools.""" import bpy from bpy.types import AddonPreferences from bpy.props import StringProperty class AMZN_AddonPreferences(AddonPreferences): """Addon preferences for AMZN Character Tools.""" # bl_idname will be set in __init__.py during registration # This ensures it uses the correct root package name bl_idname = "" # Set dynamically amzn_bsdf_materials_path: StringProperty( name="BSDF Materials Library", description="Path to MATERIALS_BSDF_pallette_v1.0.blend", subtype='FILE_PATH', default=r"A:\1 Amazon_Active_Projects\1 BlenderAssets\Amazon\MATERIALS_BSDF_pallette_v1.0.blend", ) amzn_device_path: StringProperty( name="Device Library", description="Path to device_v2.blend", subtype='FILE_PATH', default=r"A:\1 Amazon_Active_Projects\1 BlenderAssets\Amazon\device_v2.blend", ) amzn_scanner_assets_path: StringProperty( name="Scanner Assets Library", description="Path to amazon-3Dworld-assets_v4.0.blend", subtype='FILE_PATH', default=r"A:\1 Amazon_Active_Projects\1 BlenderAssets\Amazon\amazon-3Dworld-assets_v4.0.blend", ) amzn_hardhat_asset_path: StringProperty( name="Hard Hat Asset Library", description="Path to amazon-asset_Hard-Hat_v1.1.blend", subtype='FILE_PATH', default=r"A:\1 Amazon_Active_Projects\1 BlenderAssets\Amazon\amazon-asset_Hard-Hat_v1.1.blend", ) def draw(self, context): """Draw the preferences UI.""" layout = self.layout layout.label(text="Blend File Paths:") layout.separator() # BSDF Materials path row = layout.row() row.prop(self, "amzn_bsdf_materials_path") # Device path row = layout.row() row.prop(self, "amzn_device_path") # Scanner assets path row = layout.row() row.prop(self, "amzn_scanner_assets_path") # Hard hat asset path row = layout.row() row.prop(self, "amzn_hardhat_asset_path")