add generic templates

This commit is contained in:
ChristopheSeux
2024-04-16 14:28:02 +02:00
parent 2960bab63d
commit 0055e0f39e
11 changed files with 343 additions and 116 deletions
+28 -15
View File
@@ -159,6 +159,10 @@ class Episode(PropertyGroup):
return self.get(settings.project_name)
class Template(PropertyGroup):
value : StringProperty()
class SpreadsheetExportCell(PropertyGroup):
export_name : StringProperty()
enabled : BoolProperty(default=True)
@@ -241,19 +245,21 @@ def get_task_type_items(self, context):
class ImportShots(PropertyGroup):
import_source: EnumProperty(items=[(i, i.title(), '') for i in ('DISK', 'TRACKER')])
import_task: EnumProperty(items=[(i, i.title().replace('_', ' '), '')
for i in ('LAST', 'FROM_LIST', 'ALL')], default='FROM_LIST')
for i in ('FROM_LIST',)], default='FROM_LIST') #('LAST', 'FROM_LIST', 'ALL')
#sequence_dir_template: StringProperty(
# name="Sequence Template", default="$PROJECT_ROOT/sequences/{sequence}")
shot_folder_template: StringProperty(
name="Shot Template", default="$PROJECT_ROOT/sequences/sq{sequence}/sh{shot}")
#shot_folder_template: StringProperty(
# name="Shot Template", default="$PROJECT_ROOT/sequences/sq{sequence}/sh{shot}")
import_video_template : StringProperty(
name="Video Path", default="./{task}/render/{version}.{ext}")
video_template : StringProperty(
name="Video Path", default="//sources/{sequence}_{shot}_{task}.{ext}")
video_templates : CollectionProperty(type=PropertyGroup)
import_sequence: EnumProperty(items=[(i, i.title().replace('_', ' '), '')
for i in ('SELECTED_STRIPS', 'FROM_LIST', 'ALL')], default='FROM_LIST')
for i in ('FROM_LIST',)], default='FROM_LIST') #('SELECTED_STRIPS', 'FROM_LIST', 'ALL')
previews_folder: StringProperty(
name="Previews Folder", default="//sources", subtype='DIR_PATH')
@@ -262,7 +268,7 @@ class ImportShots(PropertyGroup):
class UploadToTracker(PropertyGroup):
render_strips: BoolProperty(default=False)
render_strip_template : StringProperty(
name="Movie Path", default="//render/{project_basename}.{ext}")
name="Movie Path", default="//render/{strip}.{ext}")
task : EnumProperty(items=get_task_type_items)
status : EnumProperty(items=get_task_status_items)
@@ -297,6 +303,9 @@ def on_episode_updated(self, context):
class Project(PropertyGroup):
id : StringProperty(default='')
show_settings : BoolProperty()
templates : CollectionProperty(type=Template)
shot_start_number : IntProperty(name="Shot Start Number", default=10, min=0)
shot_padding : IntProperty(name="Shot Padding", default=4, min=0, max=10)
@@ -316,28 +325,28 @@ class Project(PropertyGroup):
name="Shot Increment", default=10, min=0, step=10)
sequence_template : StringProperty(
name="Sequence Name", default="sq{sequence}")
name="Sequence Name", default="{sequence}")
episode_template : StringProperty(
name="Episode Name", default="ep{episode}")
name="Episode Name", default="{episode}")
shot_template : StringProperty(
name="Shot Name", default="sq{sequence}_sh{shot}")
name="Shot Name", default="{sequence}_{shot}")
render_video_template : StringProperty(
name="Movie Path", default="//render/{project_basename}.{ext}")
name="Movie Path", default="//render/{project}.mov")
render_audio_template : StringProperty(
name="Audio Path", default="//render/{project_basename}.wav")
name="Audio Path", default="//render/{project}.wav")
render_video_strip_template : StringProperty(
name="Strip Path", default="//render/shots/{strip}.{ext}")
name="Strip Path", default="//render/shots/{strip}.mov")
render_audio_strip_template: StringProperty(
name="Sound Path", default="//render/sounds/{strip}.wav")
render_video_sequence_template : StringProperty(
name="Sequence Path", default="//render/sequences/{sequence}.{ext}")
name="Sequence Path", default="//render/sequences/{sequence}.mov")
render_audio_sequence_template: StringProperty(
name="Sound Path", default="//render/sounds/{sequence}.wav")
@@ -359,7 +368,7 @@ class Project(PropertyGroup):
#render_sound_format: EnumProperty(items=[(e, e, '') for e in ('mp3', 'wav')])
export_edl_template : StringProperty(
name="Edl Path", default="//render/{project_basename}.edl")
name="Edl Path", default="//render/{project}.edl")
episode_name : EnumProperty(items=get_episodes_items, update=on_episode_updated)
episodes : CollectionProperty(type=Episode)
@@ -394,6 +403,9 @@ class Project(PropertyGroup):
data['episode'] = norm_str(self.episode_name)
data['project_basename'] = f"{data['project']}_{data['episode']}"
#for template in self.templates:
# data[template.name] = template.value
return data
def get_cell_types(self):
@@ -745,6 +757,7 @@ classes = (
AssetType,
TaskStatus,
Episode,
Template,
Metadata,
MetadataType,
Sequence,