mirror of
https://github.com/ynput/ayon-core.git
synced 2025-12-25 05:14:40 +01:00
Adding support for excluded families.
This commit is contained in:
parent
43ece88f02
commit
40cf531cb1
2 changed files with 18 additions and 16 deletions
|
|
@ -93,21 +93,8 @@ class ImportMayaLoader(load.LoaderPlugin):
|
|||
|
||||
"""
|
||||
representations = ["ma", "mb", "obj"]
|
||||
families = [
|
||||
"model",
|
||||
"pointcache",
|
||||
"proxyAbc",
|
||||
"animation",
|
||||
"mayaAscii",
|
||||
"mayaScene",
|
||||
"setdress",
|
||||
"layout",
|
||||
"camera",
|
||||
"rig",
|
||||
"camerarig",
|
||||
"staticMesh",
|
||||
"workfile"
|
||||
]
|
||||
families = ["*"]
|
||||
excluded_families = ["xgen"]
|
||||
|
||||
label = "Import"
|
||||
order = 10
|
||||
|
|
|
|||
|
|
@ -28,6 +28,7 @@ class LoaderPlugin(list):
|
|||
"""
|
||||
|
||||
families = []
|
||||
excluded_families = []
|
||||
representations = []
|
||||
extensions = {"*"}
|
||||
order = 0
|
||||
|
|
@ -159,7 +160,10 @@ class LoaderPlugin(list):
|
|||
return False
|
||||
|
||||
plugin_families = set(plugin_families)
|
||||
if "*" in plugin_families:
|
||||
|
||||
# Return if all families are allowed and no excluded families are
|
||||
# defined.
|
||||
if "*" in plugin_families and not cls.excluded_families:
|
||||
return True
|
||||
|
||||
subset_doc = context["subset"]
|
||||
|
|
@ -175,6 +179,17 @@ class LoaderPlugin(list):
|
|||
|
||||
if not families:
|
||||
return False
|
||||
|
||||
# Return if there are intersections between the subsets families and
|
||||
# the loaders excluded families.
|
||||
if list(set(families) & set(cls.excluded_families)):
|
||||
return False
|
||||
|
||||
# Return if all families are allowed since excluded families have
|
||||
# already been considered.
|
||||
if "*" in plugin_families:
|
||||
return True
|
||||
|
||||
return any(family in plugin_families for family in families)
|
||||
|
||||
@classmethod
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue