diff --git a/openpype/hosts/flame/__init__.py b/openpype/hosts/flame/__init__.py index dc3d3e7cba..28b7aa8ea5 100644 --- a/openpype/hosts/flame/__init__.py +++ b/openpype/hosts/flame/__init__.py @@ -51,6 +51,7 @@ INVENTORY_PATH = os.path.join(PLUGINS_DIR, "inventory") app_framework = None apps = [] +selection = None __all__ = [ @@ -65,6 +66,7 @@ __all__ = [ "app_framework", "apps", + "selection", # pipeline "install", diff --git a/openpype/hosts/flame/api/menu.py b/openpype/hosts/flame/api/menu.py index 65d1535beb..d6788f3f52 100644 --- a/openpype/hosts/flame/api/menu.py +++ b/openpype/hosts/flame/api/menu.py @@ -7,7 +7,6 @@ from copy import deepcopy from .lib import rescan_hooks from openpype.tools.utils.host_tools import HostToolsHelper - menu_group_name = 'OpenPype' default_flame_export_presets = { @@ -16,6 +15,10 @@ default_flame_export_presets = { 'Thumbnail': {'PresetVisibility': 3, 'PresetType': 0, 'PresetFile': 'Generate Thumbnail.xml'} } +def send_selection(selection): + import openpype.hosts.flame as opflame + opflame.selection = selection + print(opflame.selection) class _FlameMenuApp(object): def __init__(self, framework): @@ -99,10 +102,12 @@ class FlameMenuProjectconnect(_FlameMenuApp): }) menu['actions'].append({ "name": "Create ...", + "isVisible": send_selection, "execute": lambda x: self.tools_helper.show_creator() }) menu['actions'].append({ "name": "Publish ...", + "isVisible": send_selection, "execute": lambda x: self.tools_helper.show_publish() }) menu['actions'].append({ @@ -119,9 +124,6 @@ class FlameMenuProjectconnect(_FlameMenuApp): }) return menu - def get_projects(self, *args, **kwargs): - pass - def refresh(self, *args, **kwargs): self.rescan() @@ -163,10 +165,12 @@ class FlameMenuTimeline(_FlameMenuApp): menu['actions'].append({ "name": "Create ...", + "isVisible": send_selection, "execute": lambda x: self.tools_helper.show_creator() }) menu['actions'].append({ "name": "Publish ...", + "isVisible": send_selection, "execute": lambda x: self.tools_helper.show_publish() }) menu['actions'].append({ @@ -180,9 +184,6 @@ class FlameMenuTimeline(_FlameMenuApp): return menu - def get_projects(self, *args, **kwargs): - pass - def refresh(self, *args, **kwargs): self.rescan() diff --git a/openpype/hosts/flame/plugins/publish/collect_test_selection.py b/openpype/hosts/flame/plugins/publish/collect_test_selection.py new file mode 100644 index 0000000000..6534894f2e --- /dev/null +++ b/openpype/hosts/flame/plugins/publish/collect_test_selection.py @@ -0,0 +1,15 @@ +import pyblish.api +import openpype.hosts.flame as opflame +import flame + +@pyblish.api.log +class CollectTestSelection(pyblish.api.ContextPlugin): + """testing selection sharing + """ + + order = pyblish.api.CollectorOrder + label = "test selection" + hosts = ["flame"] + + def process(self, context): + self.log.info(opflame.selection) \ No newline at end of file