"""SE Paletteのプロパティ定義。""" import bpy from bpy.props import ( BoolProperty, CollectionProperty, FloatProperty, IntProperty, StringProperty, ) class SEPaletteItem(bpy.types.PropertyGroup): filename: StringProperty(name="Filename") label: StringProperty(name="Label") filepath: StringProperty(name="Audio File", subtype="FILE_PATH") icon: StringProperty(name="Icon", default="PLAY_SOUND") icon_path: StringProperty(name="Custom Icon", subtype="FILE_PATH") class SEPaletteProperties(bpy.types.PropertyGroup): folder: StringProperty( name="SE Folder", description="効果音ファイルが入っているフォルダ", default="/home/hare/Assets/SE/", subtype="DIR_PATH", ) search: StringProperty( name="Search", description="表示名またはファイル名で絞り込み", default="", ) channel: IntProperty( name="Channel", description="SEを配置する優先チャンネル。重なる場合は上の空きチャンネルを使用", default=3, min=1, max=128, ) volume: FloatProperty( name="Volume", description="挿入するSEストリップの音量", default=1.0, min=0.0, max=4.0, ) advance_playhead: BoolProperty( name="Advance Playhead", description="挿入後にシークバーをSEの末尾へ移動", default=False, ) compact: BoolProperty( name="Compact", description="ボタンをコンパクト表示", default=False, ) grid_columns: IntProperty( name="Columns", description="SEカードを並べる列数", default=4, min=1, max=10, ) items: CollectionProperty(type=SEPaletteItem)