class MayaSettings(BaseSettingsModel):
"""Maya Project Settings."""
use_cbid_workflow: bool = SettingsField(
True, title="Use cbId workflow",
description=(
"When enabled, a per node `cbId` identifier will be created and "
"validated for many product types. This is then used for look "
"publishing and many others. By disabling this, the `cbId` "
"attribute will still be created on scene save but it will not "
"be validated."))
open_workfile_post_initialization: bool = SettingsField(
True, title="Open Workfile Post Initialization")
explicit_plugins_loading: ExplicitPluginsLoadingModel = SettingsField(
default_factory=ExplicitPluginsLoadingModel,
title="Explicit Plugins Loading")
imageio: ImageIOSettings = SettingsField(
default_factory=ImageIOSettings, title="Color Management (imageio)")
mel_workspace: str = SettingsField(
title="Maya MEL Workspace", widget="textarea"
)
ext_mapping: list[ExtMappingItemModel] = SettingsField(
default_factory=list, title="Extension Mapping")
dirmap: DirmapModel = SettingsField(
default_factory=DirmapModel, title="Maya dirmap Settings")
include_handles: IncludeHandlesModel = SettingsField(
default_factory=IncludeHandlesModel,
title="Include/Exclude Handles in default playback & render range"
)
scriptsmenu: ScriptsmenuModel = SettingsField(
default_factory=ScriptsmenuModel,
title="Scriptsmenu Settings"
)
render_settings: RenderSettingsModel = SettingsField(
default_factory=RenderSettingsModel, title="Render Settings")
create: CreatorsModel = SettingsField(
default_factory=CreatorsModel, title="Creators")
publish: PublishersModel = SettingsField(
default_factory=PublishersModel, title="Publishers")
load: LoadersModel = SettingsField(
default_factory=LoadersModel, title="Loaders")
workfile_build: ProfilesModel = SettingsField(
default_factory=ProfilesModel, title="Workfile Build Settings")
templated_workfile_build: TemplatedProfilesModel = SettingsField(
default_factory=TemplatedProfilesModel,
title="Templated Workfile Build Settings")
@validator("ext_mapping")
def validate_unique_outputs(cls, value):
ensure_unique_names(value)
return value