Merge pull request #1122 from pypeclub/feature/AE_add_subset_manager

AE add subset manager
This commit is contained in:
Milan Kolar 2021-03-12 16:52:31 +01:00 committed by GitHub
commit 8a82a29fcf
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 27 additions and 14 deletions

View file

@ -8,7 +8,13 @@ log = logging.getLogger(__name__)
class CreateRender(pype.api.Creator):
"""Render folder for publish."""
"""Render folder for publish.
Creates subsets in format 'familyTaskSubsetname',
eg 'renderCompositingMain'.
Create only single instance from composition at a time.
"""
name = "renderDefault"
label = "Render on Farm"
@ -20,7 +26,7 @@ class CreateRender(pype.api.Creator):
items = stub.get_selected_items(comps=True,
folders=False,
footages=False)
else:
if len(items) > 1:
self._show_msg("Please select only single composition at time.")
return False
@ -30,15 +36,20 @@ class CreateRender(pype.api.Creator):
"one composition.")
return False
for item in items:
existing_subsets = [instance['subset'].lower()
for instance in aftereffects.list_instances()]
item = items.pop()
if self.name.lower() in existing_subsets:
txt = "Instance with name \"{}\" already exists.".format(self.name)
if self.name.lower() == item.name.lower():
self._show_msg(txt)
return False
self.data["members"] = [item.id]
stub.imprint(item, self.data)
stub.set_label_color(item.id, 14) # Cyan options 0 - 16
stub.rename_item(item, self.data["subset"])
self._show_msg(txt)
return False
self.data["members"] = [item.id]
self.data["uuid"] = item.id # for SubsetManager
stub.imprint(item, self.data)
stub.set_label_color(item.id, 14) # Cyan options 0 - 16
stub.rename_item(item, stub.PUBLISH_ICON + self.data["subset"])
def _show_msg(self, txt):
msg = Qt.QtWidgets.QMessageBox()

View file

@ -29,7 +29,8 @@ class BackgroundLoader(api.Loader):
"{}_{}".format(context["asset"]["name"], name))
layers = get_background_layers(self.fname)
comp = stub.import_background(None, comp_name, layers)
comp = stub.import_background(None, stub.LOADED_ICON + comp_name,
layers)
if not comp:
self.log.warning(
@ -72,7 +73,7 @@ class BackgroundLoader(api.Loader):
layers = get_background_layers(path)
comp = stub.reload_background(container["members"][1],
comp_name,
stub.LOADED_ICON + comp_name,
layers)
# update container

View file

@ -48,7 +48,8 @@ class FileLoader(api.Loader):
if '.psd' in file:
import_options['ImportAsType'] = 'ImportAsType.COMP'
comp = stub.import_file(self.fname, comp_name, import_options)
comp = stub.import_file(self.fname, stub.LOADED_ICON + comp_name,
import_options)
if not comp:
self.log.warning(
@ -87,7 +88,7 @@ class FileLoader(api.Loader):
layer_name = container["namespace"]
path = api.get_representation_path(representation)
# with aftereffects.maintained_selection(): # TODO
stub.replace_item(layer, path, layer_name)
stub.replace_item(layer, path, stub.LOADED_ICON + layer_name)
stub.imprint(
layer, {"representation": str(representation["_id"]),
"name": context["subset"],