mirror of
https://github.com/ynput/ayon-core.git
synced 2025-12-25 05:14:40 +01:00
* Substance Painter Addons for Ayon * hound * make sure the class name is SubstancePainterAddon * use AYON as tab menu name when it is launched with AYON --------- Co-authored-by: Jakub Trllo <43494761+iLLiCiTiT@users.noreply.github.com>
61 lines
1.6 KiB
Python
61 lines
1.6 KiB
Python
from pydantic import Field, validator
|
|
from ayon_server.settings import BaseSettingsModel
|
|
from ayon_server.settings.validators import ensure_unique_names
|
|
|
|
|
|
class ImageIOConfigModel(BaseSettingsModel):
|
|
override_global_config: bool = Field(
|
|
False,
|
|
title="Override global OCIO config"
|
|
)
|
|
filepath: list[str] = Field(
|
|
default_factory=list,
|
|
title="Config path"
|
|
)
|
|
|
|
|
|
class ImageIOFileRuleModel(BaseSettingsModel):
|
|
name: str = Field("", title="Rule name")
|
|
pattern: str = Field("", title="Regex pattern")
|
|
colorspace: str = Field("", title="Colorspace name")
|
|
ext: str = Field("", title="File extension")
|
|
|
|
|
|
class ImageIOFileRulesModel(BaseSettingsModel):
|
|
activate_host_rules: bool = Field(False)
|
|
rules: list[ImageIOFileRuleModel] = Field(
|
|
default_factory=list,
|
|
title="Rules"
|
|
)
|
|
|
|
@validator("rules")
|
|
def validate_unique_outputs(cls, value):
|
|
ensure_unique_names(value)
|
|
return value
|
|
|
|
|
|
class ImageIOSettings(BaseSettingsModel):
|
|
activate_host_color_management: bool = Field(
|
|
True, title="Enable Color Management"
|
|
)
|
|
ocio_config: ImageIOConfigModel = Field(
|
|
default_factory=ImageIOConfigModel,
|
|
title="OCIO config"
|
|
)
|
|
file_rules: ImageIOFileRulesModel = Field(
|
|
default_factory=ImageIOFileRulesModel,
|
|
title="File Rules"
|
|
)
|
|
|
|
|
|
DEFAULT_IMAGEIO_SETTINGS = {
|
|
"activate_host_color_management": True,
|
|
"ocio_config": {
|
|
"override_global_config": False,
|
|
"filepath": []
|
|
},
|
|
"file_rules": {
|
|
"activate_host_rules": False,
|
|
"rules": []
|
|
}
|
|
}
|