mirror of
https://github.com/ynput/ayon-core.git
synced 2026-01-02 00:44:52 +01:00
moved overlay messages to main window
This commit is contained in:
parent
b25102a136
commit
dcf9b99995
3 changed files with 28 additions and 12 deletions
|
|
@ -413,6 +413,7 @@ class PublisherController:
|
|||
self._publish_started_callback_refs = set()
|
||||
self._publish_validated_callback_refs = set()
|
||||
self._publish_stopped_callback_refs = set()
|
||||
self._message_emit_callback_refs = set()
|
||||
|
||||
self._publish_instance_changed_callback_refs = set()
|
||||
self._publish_plugin_changed_callback_refs = set()
|
||||
|
|
@ -516,6 +517,12 @@ class PublisherController:
|
|||
ref = self._create_reference(callback)
|
||||
self._publish_stopped_callback_refs.add(ref)
|
||||
|
||||
def add_message_emitted_callback(self, callback):
|
||||
"""Callbacks triggered when message is emitted."""
|
||||
|
||||
ref = self._create_reference(callback)
|
||||
self._message_emit_callback_refs.add(ref)
|
||||
|
||||
def get_asset_docs(self):
|
||||
"""Get asset documents from cache for whole project."""
|
||||
return self._asset_docs_cache.get_asset_docs()
|
||||
|
|
@ -614,6 +621,9 @@ class PublisherController:
|
|||
|
||||
self._trigger_callbacks(self._instances_refresh_callback_refs)
|
||||
|
||||
def emit_message(self, message):
|
||||
self._trigger_callbacks(self._message_emit_callback_refs, message)
|
||||
|
||||
def get_creator_attribute_definitions(self, instances):
|
||||
"""Collect creator attribute definitions for multuple instances.
|
||||
|
||||
|
|
|
|||
|
|
@ -290,7 +290,7 @@ class CreateWidget(QtWidgets.QWidget):
|
|||
|
||||
self.setWindowTitle("Create new instance")
|
||||
|
||||
self.controller = controller
|
||||
self._controller = controller
|
||||
|
||||
self._asset_name = self.dbcon.Session.get("AVALON_ASSET")
|
||||
self._task_name = self.dbcon.Session.get("AVALON_TASK")
|
||||
|
|
@ -307,8 +307,6 @@ class CreateWidget(QtWidgets.QWidget):
|
|||
self._name_pattern = name_pattern
|
||||
self._compiled_name_pattern = re.compile(name_pattern)
|
||||
|
||||
overlay_object = MessageOverlayObject(self)
|
||||
|
||||
context_widget = QtWidgets.QWidget(self)
|
||||
|
||||
assets_widget = CreateWidgetAssetsWidget(controller, context_widget)
|
||||
|
|
@ -476,8 +474,6 @@ class CreateWidget(QtWidgets.QWidget):
|
|||
|
||||
controller.add_plugins_refresh_callback(self._on_plugins_refresh)
|
||||
|
||||
self._overlay_object = overlay_object
|
||||
|
||||
self._splitter_widget = splitter_widget
|
||||
|
||||
self._context_widget = context_widget
|
||||
|
|
@ -509,7 +505,7 @@ class CreateWidget(QtWidgets.QWidget):
|
|||
self._first_show = True
|
||||
|
||||
def _emit_message(self, message):
|
||||
self._overlay_object.add_message(message)
|
||||
self._controller.emit_message(message)
|
||||
|
||||
def _context_change_is_enabled(self):
|
||||
return self._context_widget.isEnabled()
|
||||
|
|
@ -537,7 +533,7 @@ class CreateWidget(QtWidgets.QWidget):
|
|||
|
||||
@property
|
||||
def dbcon(self):
|
||||
return self.controller.dbcon
|
||||
return self._controller.dbcon
|
||||
|
||||
def _set_context_enabled(self, enabled):
|
||||
self._assets_widget.set_enabled(enabled)
|
||||
|
|
@ -655,7 +651,7 @@ class CreateWidget(QtWidgets.QWidget):
|
|||
|
||||
# Add new families
|
||||
new_creators = set()
|
||||
for identifier, creator in self.controller.manual_creators.items():
|
||||
for identifier, creator in self._controller.manual_creators.items():
|
||||
# TODO add details about creator
|
||||
new_creators.add(identifier)
|
||||
if identifier in existing_items:
|
||||
|
|
@ -738,7 +734,7 @@ class CreateWidget(QtWidgets.QWidget):
|
|||
self._detail_description_input.setMarkdown(detailed_description)
|
||||
|
||||
def _set_creator_by_identifier(self, identifier):
|
||||
creator = self.controller.manual_creators.get(identifier)
|
||||
creator = self._controller.manual_creators.get(identifier)
|
||||
self._set_creator(creator)
|
||||
|
||||
def _set_creator(self, creator):
|
||||
|
|
@ -822,7 +818,7 @@ class CreateWidget(QtWidgets.QWidget):
|
|||
self.subset_name_input.setText("< Valid variant >")
|
||||
return
|
||||
|
||||
project_name = self.controller.project_name
|
||||
project_name = self._controller.project_name
|
||||
task_name = self._get_task_name()
|
||||
|
||||
asset_doc = copy.deepcopy(self._asset_doc)
|
||||
|
|
@ -951,7 +947,7 @@ class CreateWidget(QtWidgets.QWidget):
|
|||
error_msg = None
|
||||
formatted_traceback = None
|
||||
try:
|
||||
self.controller.create(
|
||||
self._controller.create(
|
||||
creator_identifier,
|
||||
subset_name,
|
||||
instance_data,
|
||||
|
|
|
|||
|
|
@ -6,8 +6,10 @@ from openpype import (
|
|||
)
|
||||
from openpype.tools.utils import (
|
||||
PlaceholderLineEdit,
|
||||
PixmapLabel
|
||||
MessageOverlayObject,
|
||||
PixmapLabel,
|
||||
)
|
||||
|
||||
from .publish_report_viewer import PublishReportViewerWidget
|
||||
from .control import PublisherController
|
||||
from .widgets import (
|
||||
|
|
@ -56,6 +58,8 @@ class PublisherWindow(QtWidgets.QDialog):
|
|||
|
||||
controller = PublisherController()
|
||||
|
||||
overlay_object = MessageOverlayObject(self)
|
||||
|
||||
# Header
|
||||
header_widget = QtWidgets.QWidget(self)
|
||||
icon_pixmap = QtGui.QPixmap(resources.get_openpype_icon_filepath())
|
||||
|
|
@ -224,6 +228,7 @@ class PublisherWindow(QtWidgets.QDialog):
|
|||
controller.add_publish_started_callback(self._on_publish_start)
|
||||
controller.add_publish_validated_callback(self._on_publish_validated)
|
||||
controller.add_publish_stopped_callback(self._on_publish_stop)
|
||||
controller.add_message_emitted_callback(self._on_overlay_message)
|
||||
|
||||
# Store header for TrayPublisher
|
||||
self._header_layout = header_layout
|
||||
|
|
@ -253,6 +258,8 @@ class PublisherWindow(QtWidgets.QDialog):
|
|||
self._validate_btn = validate_btn
|
||||
self._publish_btn = publish_btn
|
||||
|
||||
self._overlay_object = overlay_object
|
||||
|
||||
self._controller = controller
|
||||
|
||||
self._first_show = True
|
||||
|
|
@ -276,6 +283,9 @@ class PublisherWindow(QtWidgets.QDialog):
|
|||
super(PublisherWindow, self).resizeEvent(event)
|
||||
self._update_publish_frame_rect()
|
||||
|
||||
def _on_overlay_message(self, message):
|
||||
self._overlay_object.add_message(message)
|
||||
|
||||
def _on_first_show(self):
|
||||
self.resize(self.default_width, self.default_height)
|
||||
self.setStyleSheet(style.load_stylesheet())
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue