From 100dec2c7a9e4295caf980322825845f7b0e9ee7 Mon Sep 17 00:00:00 2001 From: Jakub Jezek Date: Wed, 25 Nov 2020 13:24:51 +0100 Subject: [PATCH 01/10] feat(imageio): adding default schema --- .../defaults/project_anatomy/{colorspace.json => imageio.json} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename pype/settings/defaults/project_anatomy/{colorspace.json => imageio.json} (100%) diff --git a/pype/settings/defaults/project_anatomy/colorspace.json b/pype/settings/defaults/project_anatomy/imageio.json similarity index 100% rename from pype/settings/defaults/project_anatomy/colorspace.json rename to pype/settings/defaults/project_anatomy/imageio.json From 7df18a6b417c2897bb7d651a1d33c1b51f8e349e Mon Sep 17 00:00:00 2001 From: iLLiCiTiT Date: Wed, 25 Nov 2020 13:44:24 +0100 Subject: [PATCH 02/10] added imageio key to anatomy --- .../projects_schema/0_project_gui_schema.json | 3 ++ .../schema_anatomy_imageio.json | 8 +++++ .../settings/widgets/anatomy_types.py | 33 +++++++++++++++++-- 3 files changed, 42 insertions(+), 2 deletions(-) create mode 100644 pype/tools/settings/settings/gui_schemas/projects_schema/schema_anatomy_imageio.json diff --git a/pype/tools/settings/settings/gui_schemas/projects_schema/0_project_gui_schema.json b/pype/tools/settings/settings/gui_schemas/projects_schema/0_project_gui_schema.json index cf95bf4c45..6f69340560 100644 --- a/pype/tools/settings/settings/gui_schemas/projects_schema/0_project_gui_schema.json +++ b/pype/tools/settings/settings/gui_schemas/projects_schema/0_project_gui_schema.json @@ -14,6 +14,9 @@ "type": "anatomy_templates", "key": "templates", "is_file": true + }, { + "type": "schema", + "name": "schema_anatomy_imageio" } ] }, { diff --git a/pype/tools/settings/settings/gui_schemas/projects_schema/schema_anatomy_imageio.json b/pype/tools/settings/settings/gui_schemas/projects_schema/schema_anatomy_imageio.json new file mode 100644 index 0000000000..3fdbd3f7f9 --- /dev/null +++ b/pype/tools/settings/settings/gui_schemas/projects_schema/schema_anatomy_imageio.json @@ -0,0 +1,8 @@ +{ + "type": "dict", + "key": "imageio", + "label": "< ENTER LABEL HERE >", + "is_file": true, + "children": [ + ] +} diff --git a/pype/tools/settings/settings/widgets/anatomy_types.py b/pype/tools/settings/settings/widgets/anatomy_types.py index e1a726187c..ef89a802bc 100644 --- a/pype/tools/settings/settings/widgets/anatomy_types.py +++ b/pype/tools/settings/settings/widgets/anatomy_types.py @@ -1,7 +1,11 @@ from Qt import QtWidgets, QtCore from .widgets import ExpandingWidget from .item_types import ( - SettingObject, ModifiableDict, PathWidget, RawJsonWidget + SettingObject, + ModifiableDict, + PathWidget, + RawJsonWidget, + DictWidget ) from .lib import NOT_SET, TypeToKlass, CHILD_OFFSET, METADATA_KEY @@ -50,14 +54,18 @@ class AnatomyWidget(QtWidgets.QWidget, SettingObject): children_data = input_data["children"] roots_input_data = {} templates_input_data = {} + imageio_input_data = {} for child in children_data: if child["type"] == "anatomy_roots": roots_input_data = child elif child["type"] == "anatomy_templates": templates_input_data = child + elif child["key"] == "imageio": + imageio_input_data = child self.root_widget = RootsWidget(roots_input_data, self) self.templates_widget = TemplatesWidget(templates_input_data, self) + self.imageio_widget = DictWidget(imageio_input_data, self) self.setAttribute(QtCore.Qt.WA_StyledBackground) @@ -75,6 +83,7 @@ class AnatomyWidget(QtWidgets.QWidget, SettingObject): content_layout.addWidget(self.root_widget) content_layout.addWidget(self.templates_widget) + content_layout.addWidget(self.imageio_widget) body_widget.set_content_widget(content_widget) @@ -83,6 +92,7 @@ class AnatomyWidget(QtWidgets.QWidget, SettingObject): self.root_widget.value_changed.connect(self._on_value_change) self.templates_widget.value_changed.connect(self._on_value_change) + self.imageio_widget.value_changed.connect(self._on_value_change) def update_default_values(self, parent_values): self._state = None @@ -95,6 +105,7 @@ class AnatomyWidget(QtWidgets.QWidget, SettingObject): self.root_widget.update_default_values(value) self.templates_widget.update_default_values(value) + self.imageio_widget.update_default_values(value) def update_studio_values(self, parent_values): self._state = None @@ -107,6 +118,7 @@ class AnatomyWidget(QtWidgets.QWidget, SettingObject): self.root_widget.update_studio_values(value) self.templates_widget.update_studio_values(value) + self.imageio_widget.update_studio_values(value) def apply_overrides(self, parent_values): # Make sure this is set to False @@ -119,6 +131,7 @@ class AnatomyWidget(QtWidgets.QWidget, SettingObject): self.root_widget.apply_overrides(value) self.templates_widget.apply_overrides(value) + self.imageio_widget.apply_overrides(value) def set_value(self, value): raise TypeError("AnatomyWidget does not allow to use `set_value`") @@ -154,6 +167,7 @@ class AnatomyWidget(QtWidgets.QWidget, SettingObject): def hierarchical_style_update(self): self.root_widget.hierarchical_style_update() self.templates_widget.hierarchical_style_update() + self.imageio_widget.hierarchical_style_update() self.update_style() @property @@ -161,6 +175,7 @@ class AnatomyWidget(QtWidgets.QWidget, SettingObject): return ( self.root_widget.child_has_studio_override or self.templates_widget.child_has_studio_override + or self.imageio_widget.child_has_studio_override ) @property @@ -168,6 +183,7 @@ class AnatomyWidget(QtWidgets.QWidget, SettingObject): return ( self.root_widget.child_modified or self.templates_widget.child_modified + or self.imageio_widget.child_modified ) @property @@ -175,6 +191,7 @@ class AnatomyWidget(QtWidgets.QWidget, SettingObject): return ( self.root_widget.child_overriden or self.templates_widget.child_overriden + or self.imageio_widget.child_overriden ) @property @@ -182,27 +199,33 @@ class AnatomyWidget(QtWidgets.QWidget, SettingObject): return ( self.root_widget.child_invalid or self.templates_widget.child_invalid + or self.imageio_widget.child_invalid ) def set_as_overriden(self): self.root_widget.set_as_overriden() self.templates_widget.set_as_overriden() + self.imageio_widget.set_as_overriden() def remove_overrides(self): self.root_widget.remove_overrides() self.templates_widget.remove_overrides() + self.imageio_widget.remove_overrides() def reset_to_pype_default(self): self.root_widget.reset_to_pype_default() self.templates_widget.reset_to_pype_default() + self.imageio_widget.reset_to_pype_default() def set_studio_default(self): self.root_widget.set_studio_default() self.templates_widget.set_studio_default() + self.imageio_widget.set_studio_default() def discard_changes(self): self.root_widget.discard_changes() self.templates_widget.discard_changes() + self.imageio_widget.discard_changes() def overrides(self): if self.child_overriden: @@ -213,14 +236,20 @@ class AnatomyWidget(QtWidgets.QWidget, SettingObject): output = {} output.update(self.root_widget.config_value()) output.update(self.templates_widget.config_value()) + output.update(self.imageio_widget.config_value()) return output def studio_overrides(self): if ( self.root_widget.child_has_studio_override or self.templates_widget.child_has_studio_override + or self.imageio_widget.child_has_studio_override ): - groups = [self.root_widget.key, self.templates_widget.key] + groups = [ + self.root_widget.key, + self.templates_widget.key, + self.imageio_widget.key + ] value = self.config_value() value[self.key][METADATA_KEY] = {"groups": groups} return value, True From da1a6ab320b687210c347048a6d1d45e9eb2b812 Mon Sep 17 00:00:00 2001 From: iLLiCiTiT Date: Wed, 25 Nov 2020 14:24:32 +0100 Subject: [PATCH 03/10] changed env groups in example to not match system env groups --- .../gui_schemas/system_schema/example_schema.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pype/tools/settings/settings/gui_schemas/system_schema/example_schema.json b/pype/tools/settings/settings/gui_schemas/system_schema/example_schema.json index 7612e54116..f09ad86a65 100644 --- a/pype/tools/settings/settings/gui_schemas/system_schema/example_schema.json +++ b/pype/tools/settings/settings/gui_schemas/system_schema/example_schema.json @@ -13,16 +13,16 @@ "type": "schema_template", "name": "example_template", "template_data": { - "host_label": "Maya 2019", - "host_name": "maya_2019", + "host_label": "Application 1", + "host_name": "app_1", "multipath_executables": false } }, { "type": "schema_template", "name": "example_template", "template_data": { - "host_label": "Maya 2020", - "host_name": "maya_2020" + "host_label": "Application 2", + "host_name": "app_2" } } ] From fc248c5eebe350924cd4d0ce29e14248dfb3e975 Mon Sep 17 00:00:00 2001 From: Jakub Jezek Date: Wed, 25 Nov 2020 14:27:27 +0100 Subject: [PATCH 04/10] test example schemas --- .../settings/gui_schemas/system_schema/schema_main.json | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pype/tools/settings/settings/gui_schemas/system_schema/schema_main.json b/pype/tools/settings/settings/gui_schemas/system_schema/schema_main.json index 8e8798149c..3ec652c302 100644 --- a/pype/tools/settings/settings/gui_schemas/system_schema/schema_main.json +++ b/pype/tools/settings/settings/gui_schemas/system_schema/schema_main.json @@ -17,6 +17,9 @@ }, { "type": "schema", "name": "schema_tools" + }, { + "type": "schema", + "name": "example_schema" }] } ] From 4c990a7527d14e6f2dfdb4eae3b95a3189060496 Mon Sep 17 00:00:00 2001 From: iLLiCiTiT Date: Wed, 25 Nov 2020 14:42:04 +0100 Subject: [PATCH 05/10] fixed validation of ListStrictWidget --- pype/tools/settings/settings/widgets/base.py | 2 +- pype/tools/settings/settings/widgets/item_types.py | 2 -- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/pype/tools/settings/settings/widgets/base.py b/pype/tools/settings/settings/widgets/base.py index 3f842602ca..692de617df 100644 --- a/pype/tools/settings/settings/widgets/base.py +++ b/pype/tools/settings/settings/widgets/base.py @@ -795,7 +795,7 @@ class ProjectWidget(QtWidgets.QWidget): def _update_values(self): self.ignore_value_changes = True - default_values = default_values = lib.convert_data_to_gui_data( + default_values = lib.convert_data_to_gui_data( {"project": default_settings()} ) for input_field in self.input_fields: diff --git a/pype/tools/settings/settings/widgets/item_types.py b/pype/tools/settings/settings/widgets/item_types.py index fd5364ea17..10fd757d3e 100644 --- a/pype/tools/settings/settings/widgets/item_types.py +++ b/pype/tools/settings/settings/widgets/item_types.py @@ -1897,8 +1897,6 @@ class ListStrictWidget(QtWidgets.QWidget, InputObject): return self._default_input_value def set_value(self, value): - self.validate_value(value) - if self._is_overriden: method_name = "apply_overrides" elif not self._has_studio_override: From 0cda87bd6351f16eea1c6e6e431f8b24738f1ec5 Mon Sep 17 00:00:00 2001 From: Jakub Jezek Date: Thu, 26 Nov 2020 13:34:09 +0100 Subject: [PATCH 06/10] feat(imageio): wip schema --- .../schema_anatomy_imageio.json | 274 +++++++++++++++++- 1 file changed, 273 insertions(+), 1 deletion(-) diff --git a/pype/tools/settings/settings/gui_schemas/projects_schema/schema_anatomy_imageio.json b/pype/tools/settings/settings/gui_schemas/projects_schema/schema_anatomy_imageio.json index 3fdbd3f7f9..d1a286b883 100644 --- a/pype/tools/settings/settings/gui_schemas/projects_schema/schema_anatomy_imageio.json +++ b/pype/tools/settings/settings/gui_schemas/projects_schema/schema_anatomy_imageio.json @@ -1,8 +1,280 @@ { "type": "dict", "key": "imageio", - "label": "< ENTER LABEL HERE >", + "label": "Color Management (Image i/o)", "is_file": true, "children": [ + { + "key": "hosts", + "type": "dict", + "label": "Hosts", + "collapsed": false, + "collapsable": true, + "children": [ + { + "key": "hiero", + "type": "dict", + "label": "Hiero", + "children": [ + { + "key": "workfile", + "type": "dict", + "label": "Workfile", + "collapsable": false, + "children": [ + { + "type": "form", + "children": [ + { + "type": "enum", + "key": "ocioConfigName", + "label": "OpenColorIO Config", + "enum_items": [ + {"nuke-default": "nuke-default"}, + {"aces_1.0.3": "aces_1.0.3"}, + {"aces_1.1": "aces_1.1"}, + {"custom": "custom"} + ] + }, { + "type": "path-widget", + "key": "ocioconfigpath", + "label": "Custom OCIO path", + "multiplatform": true, + "multipath": true + }, { + "type": "text", + "key": "workingSpace", + "label": "Working Space" + }, { + "type": "text", + "key": "sixteenBitLut", + "label": "16 Bit Files" + }, { + "type": "text", + "key": "eightBitLut", + "label": "8 Bit Files" + }, { + "type": "text", + "key": "floatLut", + "label": "Floating Point Files" + }, { + "type": "text", + "key": "logLut", + "label": "Log Files" + }, { + "type": "text", + "key": "viewerLut", + "label": "Viewer" + }, { + "type": "text", + "key": "thumbnailLut", + "label": "Thumbnails" + } + ] + } + ] + }, { + "key": "regexInputs", + "type": "dict", + "label": "Colorspace on Inputs by regex detection", + "collapsable": false, + "children": [ + { + "type": "list", + "key": "inputs", + "label": "", + "object_type": { + "type": "dict", + "children": [ + { + "type": "text", + "key": "regex", + "label": "Regex" + }, { + "type": "text", + "key": "colorspace", + "label": "Colorspace" + } + ] + } + } + ] + } + ] + }, { + "key": "nuke", + "type": "dict", + "label": "Nuke", + "children": [ + { + "key": "workfile", + "type": "dict", + "label": "Workfile", + "collapsable": false, + "is_group": true, + "children": [ + { + "type": "form", + "children": [ + { + "type": "enum", + "key": "colorManagement", + "label": "color management", + "enum_items": [ + {"Nuke": "Nuke"}, + {"OCIO": "OCIO"} + ] + }, { + "type": "enum", + "key": "OCIO_config", + "label": "OpenColorIO Config", + "enum_items": [ + {"nuke-default": "nuke-default"}, + {"spi-vfx": "spi-vfx"}, + {"spi-anim": "spi-anim"}, + {"aces_1.0.3": "aces_0.1.1"}, + {"aces_1.0.3": "aces_0.7.1"}, + {"aces_1.0.3": "aces_1.0.1"}, + {"aces_1.0.3": "aces_1.0.3"}, + {"aces_1.1": "aces_1.1"}, + {"custom": "custom"} + ] + }, { + "type": "path-widget", + "key": "customOCIOConfigPath", + "label": "Custom OCIO config path", + "multiplatform": true, + "multipath": true + }, { + "type": "text", + "key": "workingSpaceLUT", + "label": "Working Space" + }, { + "type": "text", + "key": "monitorLut", + "label": "monitor" + }, { + "type": "text", + "key": "int8Lut", + "label": "8-bit files" + }, { + "type": "text", + "key": "int16Lut", + "label": "16-bit files" + }, { + "type": "text", + "key": "logLut", + "label": "log files" + }, { + "type": "text", + "key": "floatLut", + "label": "float files" + } + ] + } + ] + }, { + "key": "nodes", + "type": "dict", + "label": "Nodes", + "collapsable": false, + "is_group": true, + "children": [ + { + "key": "CreateWriteRender", + "label": "CreateWriteRender", + "type": "dict", + "children": [ + { + "type": "text", + "key": "nukeNodeClass", + "label": "Nuke Node Class" + }, { + "type": "splitter" + }, + { + "key": "knobs", + "label": "Knobs", + "type": "list", + "object_type": { + "type": "dict-item", + "children": [ + { + "type": "text", + "key": "name", + "label": "Name" + }, { + "type": "text", + "key": "value", + "label": "Value" + } + ] + } + } + ] + }, { + "type": "list", + "key": "custom-items", + "label": "Custom Nodes", + "object_type": { + "type": "dict", + "children": [ + { + "key": "nodeCreateFamily", + "label": "Creator Family", + "type": "text" + }, { + "type": "text", + "key": "nodeClass", + "label": "Node Class" + }, { + "type": "splitter" + }, + { + "type": "dict-modifiable", + "key": "nodeKnobs", + "label": "Node Knobs", + "highlight_content": true, + "object_type": { + "type": "text", + "key": "nodeKnobValue" + } + } + ] + } + } + ] + }, { + "key": "regexInputs", + "type": "dict", + "label": "Colorspace on Inputs by regex detection", + "collapsable": false, + "children": [ + { + "type": "list", + "key": "inputs", + "label": "", + "object_type": { + "type": "dict", + "children": [ + { + "type": "text", + "key": "regex", + "label": "Regex" + }, { + "type": "text", + "key": "colorspace", + "label": "Colorspace" + } + ] + } + } + ] + } + ] + } + + ] + } ] } From b304eef0f58cf727ff28bee678195a59564ec501 Mon Sep 17 00:00:00 2001 From: Jakub Jezek Date: Thu, 26 Nov 2020 15:07:27 +0100 Subject: [PATCH 07/10] feat(imageio): final schema and default setting for hiero and nuke --- .../defaults/project_anatomy/imageio.json | 161 +++-- .../schema_anatomy_imageio.json | 568 +++++++++--------- 2 files changed, 418 insertions(+), 311 deletions(-) diff --git a/pype/settings/defaults/project_anatomy/imageio.json b/pype/settings/defaults/project_anatomy/imageio.json index 8b934f810d..1adab0fc2b 100644 --- a/pype/settings/defaults/project_anatomy/imageio.json +++ b/pype/settings/defaults/project_anatomy/imageio.json @@ -1,42 +1,131 @@ { - "nuke": { - "root": { - "colorManagement": "Nuke", - "OCIO_config": "nuke-default", - "defaultViewerLUT": "Nuke Root LUTs", - "monitorLut": "sRGB", - "int8Lut": "sRGB", - "int16Lut": "sRGB", - "logLut": "Cineon", - "floatLut": "linear" - }, - "viewer": { - "viewerProcess": "sRGB" - }, - "write": { - "render": { - "colorspace": "linear" + "hosts": { + "hiero": { + "workfile": { + "ocioConfigName": "nuke-default", + "ocioconfigpath": { + "windows": [], + "darwin": [], + "linux": [] + }, + "workingSpace": "linear", + "sixteenBitLut": "sRGB", + "eightBitLut": "sRGB", + "floatLut": "linear", + "logLut": "Cineon", + "viewerLut": "sRGB", + "thumbnailLut": "sRGB" }, - "prerender": { - "colorspace": "linear" - }, - "still": { - "colorspace": "sRGB" + "regexInputs": { + "inputs": [ + { + "regex": "[^-a-zA-Z0-9](plateRef).*(?=mp4)", + "colorspace": "sRGB" + } + ] } }, - "read": { - "[^-a-zA-Z0-9]beauty[^-a-zA-Z0-9]": "linear", - "[^-a-zA-Z0-9](P|N|Z|crypto)[^-a-zA-Z0-9]": "linear", - "[^-a-zA-Z0-9](plateRef)[^-a-zA-Z0-9]": "sRGB" + "nuke": { + "workfile": { + "colorManagement": "Nuke", + "OCIO_config": "nuke-default", + "customOCIOConfigPath": { + "windows": [], + "darwin": [], + "linux": [] + }, + "workingSpaceLUT": "linear", + "monitorLut": "sRGB", + "int8Lut": "sRGB", + "int16Lut": "sRGB", + "logLut": "Cineon", + "floatLut": "linear" + }, + "nodes": { + "requiredNodes": [ + { + "plugins": [ + "CreateWriteRender" + ], + "nukeNodeClass": "Write", + "knobs": [ + { + "name": "file_type", + "value": "exr" + }, + { + "name": "datatype", + "value": "16 bit half" + }, + { + "name": "compression", + "value": "Zip (1 scanline)" + }, + { + "name": "autocrop", + "value": "True" + }, + { + "name": "tile_color", + "value": "0xff0000ff" + }, + { + "name": "channels", + "value": "rgb" + }, + { + "name": "colorspace", + "value": "linear" + } + ] + }, + { + "plugins": [ + "CreateWritePrerender" + ], + "nukeNodeClass": "Write", + "knobs": [ + { + "name": "file_type", + "value": "exr" + }, + { + "name": "datatype", + "value": "16 bit half" + }, + { + "name": "compression", + "value": "Zip (1 scanline)" + }, + { + "name": "autocrop", + "value": "False" + }, + { + "name": "tile_color", + "value": "0xff0000ff" + }, + { + "name": "channels", + "value": "rgb" + }, + { + "name": "colorspace", + "value": "linear" + } + ] + } + ], + "customNodes": [] + }, + "regexInputs": { + "inputs": [ + { + "regex": "[^-a-zA-Z0-9]beauty[^-a-zA-Z0-9]", + "colorspace": "linear" + } + ] + } } - }, - "maya": { - - }, - "houdini": { - - }, - "resolve": { - } -} +} \ No newline at end of file diff --git a/pype/tools/settings/settings/gui_schemas/projects_schema/schema_anatomy_imageio.json b/pype/tools/settings/settings/gui_schemas/projects_schema/schema_anatomy_imageio.json index d1a286b883..b7de6c5091 100644 --- a/pype/tools/settings/settings/gui_schemas/projects_schema/schema_anatomy_imageio.json +++ b/pype/tools/settings/settings/gui_schemas/projects_schema/schema_anatomy_imageio.json @@ -1,280 +1,298 @@ { + "type": "dict", + "key": "imageio", + "label": "Color Management (Image i/o)", + "is_file": true, + "children": [{ + "key": "hosts", "type": "dict", - "key": "imageio", - "label": "Color Management (Image i/o)", - "is_file": true, - "children": [ - { - "key": "hosts", - "type": "dict", - "label": "Hosts", - "collapsed": false, - "collapsable": true, - "children": [ + "label": "Hosts", + "collapsed": false, + "collapsable": true, + "children": [{ + "key": "hiero", + "type": "dict", + "label": "Hiero", + "children": [{ + "key": "workfile", + "type": "dict", + "label": "Workfile", + "collapsable": false, + "children": [{ + "type": "form", + "children": [{ + "type": "enum", + "key": "ocioConfigName", + "label": "OpenColorIO Config", + "enum_items": [{ + "nuke-default": "nuke-default" + }, { - "key": "hiero", - "type": "dict", - "label": "Hiero", - "children": [ - { - "key": "workfile", - "type": "dict", - "label": "Workfile", - "collapsable": false, - "children": [ - { - "type": "form", - "children": [ - { - "type": "enum", - "key": "ocioConfigName", - "label": "OpenColorIO Config", - "enum_items": [ - {"nuke-default": "nuke-default"}, - {"aces_1.0.3": "aces_1.0.3"}, - {"aces_1.1": "aces_1.1"}, - {"custom": "custom"} - ] - }, { - "type": "path-widget", - "key": "ocioconfigpath", - "label": "Custom OCIO path", - "multiplatform": true, - "multipath": true - }, { - "type": "text", - "key": "workingSpace", - "label": "Working Space" - }, { - "type": "text", - "key": "sixteenBitLut", - "label": "16 Bit Files" - }, { - "type": "text", - "key": "eightBitLut", - "label": "8 Bit Files" - }, { - "type": "text", - "key": "floatLut", - "label": "Floating Point Files" - }, { - "type": "text", - "key": "logLut", - "label": "Log Files" - }, { - "type": "text", - "key": "viewerLut", - "label": "Viewer" - }, { - "type": "text", - "key": "thumbnailLut", - "label": "Thumbnails" - } - ] - } - ] - }, { - "key": "regexInputs", - "type": "dict", - "label": "Colorspace on Inputs by regex detection", - "collapsable": false, - "children": [ - { - "type": "list", - "key": "inputs", - "label": "", - "object_type": { - "type": "dict", - "children": [ - { - "type": "text", - "key": "regex", - "label": "Regex" - }, { - "type": "text", - "key": "colorspace", - "label": "Colorspace" - } - ] - } - } - ] - } - ] - }, { - "key": "nuke", - "type": "dict", - "label": "Nuke", - "children": [ - { - "key": "workfile", - "type": "dict", - "label": "Workfile", - "collapsable": false, - "is_group": true, - "children": [ - { - "type": "form", - "children": [ - { - "type": "enum", - "key": "colorManagement", - "label": "color management", - "enum_items": [ - {"Nuke": "Nuke"}, - {"OCIO": "OCIO"} - ] - }, { - "type": "enum", - "key": "OCIO_config", - "label": "OpenColorIO Config", - "enum_items": [ - {"nuke-default": "nuke-default"}, - {"spi-vfx": "spi-vfx"}, - {"spi-anim": "spi-anim"}, - {"aces_1.0.3": "aces_0.1.1"}, - {"aces_1.0.3": "aces_0.7.1"}, - {"aces_1.0.3": "aces_1.0.1"}, - {"aces_1.0.3": "aces_1.0.3"}, - {"aces_1.1": "aces_1.1"}, - {"custom": "custom"} - ] - }, { - "type": "path-widget", - "key": "customOCIOConfigPath", - "label": "Custom OCIO config path", - "multiplatform": true, - "multipath": true - }, { - "type": "text", - "key": "workingSpaceLUT", - "label": "Working Space" - }, { - "type": "text", - "key": "monitorLut", - "label": "monitor" - }, { - "type": "text", - "key": "int8Lut", - "label": "8-bit files" - }, { - "type": "text", - "key": "int16Lut", - "label": "16-bit files" - }, { - "type": "text", - "key": "logLut", - "label": "log files" - }, { - "type": "text", - "key": "floatLut", - "label": "float files" - } - ] - } - ] - }, { - "key": "nodes", - "type": "dict", - "label": "Nodes", - "collapsable": false, - "is_group": true, - "children": [ - { - "key": "CreateWriteRender", - "label": "CreateWriteRender", - "type": "dict", - "children": [ - { - "type": "text", - "key": "nukeNodeClass", - "label": "Nuke Node Class" - }, { - "type": "splitter" - }, - { - "key": "knobs", - "label": "Knobs", - "type": "list", - "object_type": { - "type": "dict-item", - "children": [ - { - "type": "text", - "key": "name", - "label": "Name" - }, { - "type": "text", - "key": "value", - "label": "Value" - } - ] - } - } - ] - }, { - "type": "list", - "key": "custom-items", - "label": "Custom Nodes", - "object_type": { - "type": "dict", - "children": [ - { - "key": "nodeCreateFamily", - "label": "Creator Family", - "type": "text" - }, { - "type": "text", - "key": "nodeClass", - "label": "Node Class" - }, { - "type": "splitter" - }, - { - "type": "dict-modifiable", - "key": "nodeKnobs", - "label": "Node Knobs", - "highlight_content": true, - "object_type": { - "type": "text", - "key": "nodeKnobValue" - } - } - ] - } - } - ] - }, { - "key": "regexInputs", - "type": "dict", - "label": "Colorspace on Inputs by regex detection", - "collapsable": false, - "children": [ - { - "type": "list", - "key": "inputs", - "label": "", - "object_type": { - "type": "dict", - "children": [ - { - "type": "text", - "key": "regex", - "label": "Regex" - }, { - "type": "text", - "key": "colorspace", - "label": "Colorspace" - } - ] - } - } - ] - } - ] + "aces_1.0.3": "aces_1.0.3" + }, + { + "aces_1.1": "aces_1.1" + }, + { + "custom": "custom" } - - ] - } - ] + ] + }, { + "type": "path-widget", + "key": "ocioconfigpath", + "label": "Custom OCIO path", + "multiplatform": true, + "multipath": true + }, { + "type": "text", + "key": "workingSpace", + "label": "Working Space" + }, { + "type": "text", + "key": "sixteenBitLut", + "label": "16 Bit Files" + }, { + "type": "text", + "key": "eightBitLut", + "label": "8 Bit Files" + }, { + "type": "text", + "key": "floatLut", + "label": "Floating Point Files" + }, { + "type": "text", + "key": "logLut", + "label": "Log Files" + }, { + "type": "text", + "key": "viewerLut", + "label": "Viewer" + }, { + "type": "text", + "key": "thumbnailLut", + "label": "Thumbnails" + }] + }] + }, { + "key": "regexInputs", + "type": "dict", + "label": "Colorspace on Inputs by regex detection", + "collapsable": true, + "children": [{ + "type": "list", + "key": "inputs", + "label": "", + "object_type": { + "type": "dict", + "children": [{ + "type": "text", + "key": "regex", + "label": "Regex" + }, { + "type": "text", + "key": "colorspace", + "label": "Colorspace" + }] + } + }] + }] + }, { + "key": "nuke", + "type": "dict", + "label": "Nuke", + "children": [{ + "key": "workfile", + "type": "dict", + "label": "Workfile", + "collapsable": false, + "is_group": true, + "children": [{ + "type": "form", + "children": [{ + "type": "enum", + "key": "colorManagement", + "label": "color management", + "enum_items": [{ + "Nuke": "Nuke" + }, + { + "OCIO": "OCIO" + } + ] + }, { + "type": "enum", + "key": "OCIO_config", + "label": "OpenColorIO Config", + "enum_items": [{ + "nuke-default": "nuke-default" + }, + { + "spi-vfx": "spi-vfx" + }, + { + "spi-anim": "spi-anim" + }, + { + "aces_1.0.3": "aces_0.1.1" + }, + { + "aces_1.0.3": "aces_0.7.1" + }, + { + "aces_1.0.3": "aces_1.0.1" + }, + { + "aces_1.0.3": "aces_1.0.3" + }, + { + "aces_1.1": "aces_1.1" + }, + { + "custom": "custom" + } + ] + }, { + "type": "path-widget", + "key": "customOCIOConfigPath", + "label": "Custom OCIO config path", + "multiplatform": true, + "multipath": true + }, { + "type": "text", + "key": "workingSpaceLUT", + "label": "Working Space" + }, { + "type": "text", + "key": "monitorLut", + "label": "monitor" + }, { + "type": "text", + "key": "int8Lut", + "label": "8-bit files" + }, { + "type": "text", + "key": "int16Lut", + "label": "16-bit files" + }, { + "type": "text", + "key": "logLut", + "label": "log files" + }, { + "type": "text", + "key": "floatLut", + "label": "float files" + }] + }] + }, { + "key": "nodes", + "type": "dict", + "label": "Nodes", + "collapsable": true, + "is_group": true, + "children": [ + { + "key": "requiredNodes", + "type": "list", + "label": "Required Nodes", + "object_type": { + "type": "dict", + "children": [{ + "type": "list", + "key": "plugins", + "label": "Used in plugins", + "object_type": { + "type": "text", + "key": "pluginClass", + "label": "Plugin Class" + } + }, { + "type": "text", + "key": "nukeNodeClass", + "label": "Nuke Node Class" + }, { + "type": "splitter" + }, { + "key": "knobs", + "label": "Knobs", + "type": "list", + "object_type": { + "type": "dict", + "children": [{ + "type": "text", + "key": "name", + "label": "Name" + }, { + "type": "text", + "key": "value", + "label": "Value" + }] + } + }] + } + }, { + "type": "list", + "key": "customNodes", + "label": "Custom Nodes", + "object_type": { + "type": "dict", + "children": [{ + "type": "list", + "key": "plugins", + "label": "Used in plugins", + "object_type": { + "type": "text", + "key": "pluginClass", + "label": "Plugin Class" + } + }, { + "type": "text", + "key": "nukeNodeClass", + "label": "Nuke Node Class" + }, { + "type": "splitter" + }, { + "key": "knobs", + "label": "Knobs", + "type": "list", + "object_type": { + "type": "dict", + "children": [{ + "type": "text", + "key": "name", + "label": "Name" + }, { + "type": "text", + "key": "value", + "label": "Value" + }] + } + }] + } + } + ] + }, { + "key": "regexInputs", + "type": "dict", + "label": "Colorspace on Inputs by regex detection", + "collapsable": true, + "children": [{ + "type": "list", + "key": "inputs", + "label": "", + "object_type": { + "type": "dict", + "children": [{ + "type": "text", + "key": "regex", + "label": "Regex" + }, { + "type": "text", + "key": "colorspace", + "label": "Colorspace" + }] + } + }] + }] + }] + }] } From 038945374962b6e08bbb9315a39aa66bd6673dcd Mon Sep 17 00:00:00 2001 From: Jakub Jezek Date: Thu, 26 Nov 2020 15:10:48 +0100 Subject: [PATCH 08/10] fix(settings): removing examples --- .../settings/gui_schemas/system_schema/schema_main.json | 3 --- 1 file changed, 3 deletions(-) diff --git a/pype/tools/settings/settings/gui_schemas/system_schema/schema_main.json b/pype/tools/settings/settings/gui_schemas/system_schema/schema_main.json index 3ec652c302..8e8798149c 100644 --- a/pype/tools/settings/settings/gui_schemas/system_schema/schema_main.json +++ b/pype/tools/settings/settings/gui_schemas/system_schema/schema_main.json @@ -17,9 +17,6 @@ }, { "type": "schema", "name": "schema_tools" - }, { - "type": "schema", - "name": "example_schema" }] } ] From 5d66a25b78e87b94c1c11caea0c6eb2ff552c903 Mon Sep 17 00:00:00 2001 From: Milan Kolar Date: Fri, 27 Nov 2020 12:05:21 +0100 Subject: [PATCH 09/10] change name of category --- .../gui_schemas/projects_schema/schema_anatomy_imageio.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pype/tools/settings/settings/gui_schemas/projects_schema/schema_anatomy_imageio.json b/pype/tools/settings/settings/gui_schemas/projects_schema/schema_anatomy_imageio.json index b7de6c5091..58852ba821 100644 --- a/pype/tools/settings/settings/gui_schemas/projects_schema/schema_anatomy_imageio.json +++ b/pype/tools/settings/settings/gui_schemas/projects_schema/schema_anatomy_imageio.json @@ -1,7 +1,7 @@ { "type": "dict", "key": "imageio", - "label": "Color Management (Image i/o)", + "label": "Color Management and Output Formats", "is_file": true, "children": [{ "key": "hosts", From 7b1acfd60ddbf0fefdaa581ec614ece18fe3ade9 Mon Sep 17 00:00:00 2001 From: Jakub Jezek Date: Fri, 27 Nov 2020 12:07:50 +0100 Subject: [PATCH 10/10] feat(imageio): dropping `host` parent as it is redundant --- .../defaults/project_anatomy/imageio.json | 249 +++++---- .../schema_anatomy_imageio.json | 509 +++++++++--------- 2 files changed, 370 insertions(+), 388 deletions(-) diff --git a/pype/settings/defaults/project_anatomy/imageio.json b/pype/settings/defaults/project_anatomy/imageio.json index 1adab0fc2b..98ded33370 100644 --- a/pype/settings/defaults/project_anatomy/imageio.json +++ b/pype/settings/defaults/project_anatomy/imageio.json @@ -1,131 +1,122 @@ { - "hosts": { - "hiero": { - "workfile": { - "ocioConfigName": "nuke-default", - "ocioconfigpath": { - "windows": [], - "darwin": [], - "linux": [] - }, - "workingSpace": "linear", - "sixteenBitLut": "sRGB", - "eightBitLut": "sRGB", - "floatLut": "linear", - "logLut": "Cineon", - "viewerLut": "sRGB", - "thumbnailLut": "sRGB" - }, - "regexInputs": { - "inputs": [ - { - "regex": "[^-a-zA-Z0-9](plateRef).*(?=mp4)", - "colorspace": "sRGB" - } - ] - } - }, - "nuke": { - "workfile": { - "colorManagement": "Nuke", - "OCIO_config": "nuke-default", - "customOCIOConfigPath": { - "windows": [], - "darwin": [], - "linux": [] - }, - "workingSpaceLUT": "linear", - "monitorLut": "sRGB", - "int8Lut": "sRGB", - "int16Lut": "sRGB", - "logLut": "Cineon", - "floatLut": "linear" - }, - "nodes": { - "requiredNodes": [ - { - "plugins": [ - "CreateWriteRender" - ], - "nukeNodeClass": "Write", - "knobs": [ - { - "name": "file_type", - "value": "exr" - }, - { - "name": "datatype", - "value": "16 bit half" - }, - { - "name": "compression", - "value": "Zip (1 scanline)" - }, - { - "name": "autocrop", - "value": "True" - }, - { - "name": "tile_color", - "value": "0xff0000ff" - }, - { - "name": "channels", - "value": "rgb" - }, - { - "name": "colorspace", - "value": "linear" - } - ] - }, - { - "plugins": [ - "CreateWritePrerender" - ], - "nukeNodeClass": "Write", - "knobs": [ - { - "name": "file_type", - "value": "exr" - }, - { - "name": "datatype", - "value": "16 bit half" - }, - { - "name": "compression", - "value": "Zip (1 scanline)" - }, - { - "name": "autocrop", - "value": "False" - }, - { - "name": "tile_color", - "value": "0xff0000ff" - }, - { - "name": "channels", - "value": "rgb" - }, - { - "name": "colorspace", - "value": "linear" - } - ] - } - ], - "customNodes": [] - }, - "regexInputs": { - "inputs": [ - { - "regex": "[^-a-zA-Z0-9]beauty[^-a-zA-Z0-9]", - "colorspace": "linear" - } - ] - } - } + "hiero": { + "workfile": { + "ocioConfigName": "nuke-default", + "ocioconfigpath": { + "windows": [], + "darwin": [], + "linux": [] + }, + "workingSpace": "linear", + "sixteenBitLut": "sRGB", + "eightBitLut": "sRGB", + "floatLut": "linear", + "logLut": "Cineon", + "viewerLut": "sRGB", + "thumbnailLut": "sRGB" + }, + "regexInputs": { + "inputs": [{ + "regex": "[^-a-zA-Z0-9](plateRef).*(?=mp4)", + "colorspace": "sRGB" + }] } -} \ No newline at end of file + }, + "nuke": { + "workfile": { + "colorManagement": "Nuke", + "OCIO_config": "nuke-default", + "customOCIOConfigPath": { + "windows": [], + "darwin": [], + "linux": [] + }, + "workingSpaceLUT": "linear", + "monitorLut": "sRGB", + "int8Lut": "sRGB", + "int16Lut": "sRGB", + "logLut": "Cineon", + "floatLut": "linear" + }, + "nodes": { + "requiredNodes": [{ + "plugins": [ + "CreateWriteRender" + ], + "nukeNodeClass": "Write", + "knobs": [{ + "name": "file_type", + "value": "exr" + }, + { + "name": "datatype", + "value": "16 bit half" + }, + { + "name": "compression", + "value": "Zip (1 scanline)" + }, + { + "name": "autocrop", + "value": "True" + }, + { + "name": "tile_color", + "value": "0xff0000ff" + }, + { + "name": "channels", + "value": "rgb" + }, + { + "name": "colorspace", + "value": "linear" + } + ] + }, + { + "plugins": [ + "CreateWritePrerender" + ], + "nukeNodeClass": "Write", + "knobs": [{ + "name": "file_type", + "value": "exr" + }, + { + "name": "datatype", + "value": "16 bit half" + }, + { + "name": "compression", + "value": "Zip (1 scanline)" + }, + { + "name": "autocrop", + "value": "False" + }, + { + "name": "tile_color", + "value": "0xff0000ff" + }, + { + "name": "channels", + "value": "rgb" + }, + { + "name": "colorspace", + "value": "linear" + } + ] + } + ], + "customNodes": [] + }, + "regexInputs": { + "inputs": [{ + "regex": "[^-a-zA-Z0-9]beauty[^-a-zA-Z0-9]", + "colorspace": "linear" + }] + } + } +} diff --git a/pype/tools/settings/settings/gui_schemas/projects_schema/schema_anatomy_imageio.json b/pype/tools/settings/settings/gui_schemas/projects_schema/schema_anatomy_imageio.json index b7de6c5091..2057adfbbc 100644 --- a/pype/tools/settings/settings/gui_schemas/projects_schema/schema_anatomy_imageio.json +++ b/pype/tools/settings/settings/gui_schemas/projects_schema/schema_anatomy_imageio.json @@ -4,294 +4,285 @@ "label": "Color Management (Image i/o)", "is_file": true, "children": [{ - "key": "hosts", + "key": "hiero", "type": "dict", - "label": "Hosts", - "collapsed": false, - "collapsable": true, + "label": "Hiero", "children": [{ - "key": "hiero", + "key": "workfile", "type": "dict", - "label": "Hiero", + "label": "Workfile", + "collapsable": false, "children": [{ - "key": "workfile", - "type": "dict", - "label": "Workfile", - "collapsable": false, + "type": "form", "children": [{ - "type": "form", - "children": [{ - "type": "enum", - "key": "ocioConfigName", - "label": "OpenColorIO Config", - "enum_items": [{ - "nuke-default": "nuke-default" - }, - { - "aces_1.0.3": "aces_1.0.3" - }, - { - "aces_1.1": "aces_1.1" - }, - { - "custom": "custom" - } - ] - }, { - "type": "path-widget", - "key": "ocioconfigpath", - "label": "Custom OCIO path", - "multiplatform": true, - "multipath": true - }, { - "type": "text", - "key": "workingSpace", - "label": "Working Space" - }, { - "type": "text", - "key": "sixteenBitLut", - "label": "16 Bit Files" - }, { - "type": "text", - "key": "eightBitLut", - "label": "8 Bit Files" - }, { - "type": "text", - "key": "floatLut", - "label": "Floating Point Files" - }, { - "type": "text", - "key": "logLut", - "label": "Log Files" - }, { - "type": "text", - "key": "viewerLut", - "label": "Viewer" - }, { - "type": "text", - "key": "thumbnailLut", - "label": "Thumbnails" - }] - }] - }, { - "key": "regexInputs", - "type": "dict", - "label": "Colorspace on Inputs by regex detection", - "collapsable": true, - "children": [{ - "type": "list", - "key": "inputs", - "label": "", - "object_type": { - "type": "dict", - "children": [{ - "type": "text", - "key": "regex", - "label": "Regex" - }, { - "type": "text", - "key": "colorspace", - "label": "Colorspace" - }] - } + "type": "enum", + "key": "ocioConfigName", + "label": "OpenColorIO Config", + "enum_items": [{ + "nuke-default": "nuke-default" + }, + { + "aces_1.0.3": "aces_1.0.3" + }, + { + "aces_1.1": "aces_1.1" + }, + { + "custom": "custom" + } + ] + }, { + "type": "path-widget", + "key": "ocioconfigpath", + "label": "Custom OCIO path", + "multiplatform": true, + "multipath": true + }, { + "type": "text", + "key": "workingSpace", + "label": "Working Space" + }, { + "type": "text", + "key": "sixteenBitLut", + "label": "16 Bit Files" + }, { + "type": "text", + "key": "eightBitLut", + "label": "8 Bit Files" + }, { + "type": "text", + "key": "floatLut", + "label": "Floating Point Files" + }, { + "type": "text", + "key": "logLut", + "label": "Log Files" + }, { + "type": "text", + "key": "viewerLut", + "label": "Viewer" + }, { + "type": "text", + "key": "thumbnailLut", + "label": "Thumbnails" }] }] }, { - "key": "nuke", + "key": "regexInputs", "type": "dict", - "label": "Nuke", + "label": "Colorspace on Inputs by regex detection", + "collapsable": true, "children": [{ - "key": "workfile", - "type": "dict", - "label": "Workfile", - "collapsable": false, - "is_group": true, - "children": [{ - "type": "form", + "type": "list", + "key": "inputs", + "label": "", + "object_type": { + "type": "dict", "children": [{ - "type": "enum", - "key": "colorManagement", - "label": "color management", - "enum_items": [{ - "Nuke": "Nuke" - }, - { - "OCIO": "OCIO" - } - ] - }, { - "type": "enum", - "key": "OCIO_config", - "label": "OpenColorIO Config", - "enum_items": [{ - "nuke-default": "nuke-default" - }, - { - "spi-vfx": "spi-vfx" - }, - { - "spi-anim": "spi-anim" - }, - { - "aces_1.0.3": "aces_0.1.1" - }, - { - "aces_1.0.3": "aces_0.7.1" - }, - { - "aces_1.0.3": "aces_1.0.1" - }, - { - "aces_1.0.3": "aces_1.0.3" - }, - { - "aces_1.1": "aces_1.1" - }, - { - "custom": "custom" - } - ] - }, { - "type": "path-widget", - "key": "customOCIOConfigPath", - "label": "Custom OCIO config path", - "multiplatform": true, - "multipath": true + "type": "text", + "key": "regex", + "label": "Regex" }, { "type": "text", - "key": "workingSpaceLUT", - "label": "Working Space" - }, { - "type": "text", - "key": "monitorLut", - "label": "monitor" - }, { - "type": "text", - "key": "int8Lut", - "label": "8-bit files" - }, { - "type": "text", - "key": "int16Lut", - "label": "16-bit files" - }, { - "type": "text", - "key": "logLut", - "label": "log files" - }, { - "type": "text", - "key": "floatLut", - "label": "float files" + "key": "colorspace", + "label": "Colorspace" }] + } + }] + }] + }, { + "key": "nuke", + "type": "dict", + "label": "Nuke", + "children": [{ + "key": "workfile", + "type": "dict", + "label": "Workfile", + "collapsable": false, + "is_group": true, + "children": [{ + "type": "form", + "children": [{ + "type": "enum", + "key": "colorManagement", + "label": "color management", + "enum_items": [{ + "Nuke": "Nuke" + }, + { + "OCIO": "OCIO" + } + ] + }, { + "type": "enum", + "key": "OCIO_config", + "label": "OpenColorIO Config", + "enum_items": [{ + "nuke-default": "nuke-default" + }, + { + "spi-vfx": "spi-vfx" + }, + { + "spi-anim": "spi-anim" + }, + { + "aces_1.0.3": "aces_0.1.1" + }, + { + "aces_1.0.3": "aces_0.7.1" + }, + { + "aces_1.0.3": "aces_1.0.1" + }, + { + "aces_1.0.3": "aces_1.0.3" + }, + { + "aces_1.1": "aces_1.1" + }, + { + "custom": "custom" + } + ] + }, { + "type": "path-widget", + "key": "customOCIOConfigPath", + "label": "Custom OCIO config path", + "multiplatform": true, + "multipath": true + }, { + "type": "text", + "key": "workingSpaceLUT", + "label": "Working Space" + }, { + "type": "text", + "key": "monitorLut", + "label": "monitor" + }, { + "type": "text", + "key": "int8Lut", + "label": "8-bit files" + }, { + "type": "text", + "key": "int16Lut", + "label": "16-bit files" + }, { + "type": "text", + "key": "logLut", + "label": "log files" + }, { + "type": "text", + "key": "floatLut", + "label": "float files" }] - }, { - "key": "nodes", - "type": "dict", - "label": "Nodes", - "collapsable": true, - "is_group": true, - "children": [ - { - "key": "requiredNodes", + }] + }, { + "key": "nodes", + "type": "dict", + "label": "Nodes", + "collapsable": true, + "is_group": true, + "children": [{ + "key": "requiredNodes", + "type": "list", + "label": "Required Nodes", + "object_type": { + "type": "dict", + "children": [{ "type": "list", - "label": "Required Nodes", + "key": "plugins", + "label": "Used in plugins", "object_type": { - "type": "dict", - "children": [{ - "type": "list", - "key": "plugins", - "label": "Used in plugins", - "object_type": { - "type": "text", - "key": "pluginClass", - "label": "Plugin Class" - } - }, { - "type": "text", - "key": "nukeNodeClass", - "label": "Nuke Node Class" - }, { - "type": "splitter" - }, { - "key": "knobs", - "label": "Knobs", - "type": "list", - "object_type": { - "type": "dict", - "children": [{ - "type": "text", - "key": "name", - "label": "Name" - }, { - "type": "text", - "key": "value", - "label": "Value" - }] - } - }] + "type": "text", + "key": "pluginClass", + "label": "Plugin Class" } }, { + "type": "text", + "key": "nukeNodeClass", + "label": "Nuke Node Class" + }, { + "type": "splitter" + }, { + "key": "knobs", + "label": "Knobs", "type": "list", - "key": "customNodes", - "label": "Custom Nodes", "object_type": { "type": "dict", "children": [{ - "type": "list", - "key": "plugins", - "label": "Used in plugins", - "object_type": { - "type": "text", - "key": "pluginClass", - "label": "Plugin Class" - } + "type": "text", + "key": "name", + "label": "Name" }, { "type": "text", - "key": "nukeNodeClass", - "label": "Nuke Node Class" - }, { - "type": "splitter" - }, { - "key": "knobs", - "label": "Knobs", - "type": "list", - "object_type": { - "type": "dict", - "children": [{ - "type": "text", - "key": "name", - "label": "Name" - }, { - "type": "text", - "key": "value", - "label": "Value" - }] - } + "key": "value", + "label": "Value" }] } - } - ] + }] + } }, { - "key": "regexInputs", - "type": "dict", - "label": "Colorspace on Inputs by regex detection", - "collapsable": true, - "children": [{ - "type": "list", - "key": "inputs", - "label": "", - "object_type": { - "type": "dict", - "children": [{ + "type": "list", + "key": "customNodes", + "label": "Custom Nodes", + "object_type": { + "type": "dict", + "children": [{ + "type": "list", + "key": "plugins", + "label": "Used in plugins", + "object_type": { "type": "text", - "key": "regex", - "label": "Regex" - }, { - "type": "text", - "key": "colorspace", - "label": "Colorspace" - }] - } - }] + "key": "pluginClass", + "label": "Plugin Class" + } + }, { + "type": "text", + "key": "nukeNodeClass", + "label": "Nuke Node Class" + }, { + "type": "splitter" + }, { + "key": "knobs", + "label": "Knobs", + "type": "list", + "object_type": { + "type": "dict", + "children": [{ + "type": "text", + "key": "name", + "label": "Name" + }, { + "type": "text", + "key": "value", + "label": "Value" + }] + } + }] + } + }] + }, { + "key": "regexInputs", + "type": "dict", + "label": "Colorspace on Inputs by regex detection", + "collapsable": true, + "children": [{ + "type": "list", + "key": "inputs", + "label": "", + "object_type": { + "type": "dict", + "children": [{ + "type": "text", + "key": "regex", + "label": "Regex" + }, { + "type": "text", + "key": "colorspace", + "label": "Colorspace" + }] + } }] }] }]