From 6f68b9599121260d15dffdb39bc4fb5cb9a75ad4 Mon Sep 17 00:00:00 2001 From: iLLiCiTiT Date: Thu, 13 May 2021 14:25:21 +0200 Subject: [PATCH] added basic message showing --- .../project_manager/project_manager/view.py | 23 ++++++++++++++----- .../project_manager/project_manager/window.py | 8 +++++++ 2 files changed, 25 insertions(+), 6 deletions(-) diff --git a/openpype/tools/project_manager/project_manager/view.py b/openpype/tools/project_manager/project_manager/view.py index 236a62425b..37c3423de5 100644 --- a/openpype/tools/project_manager/project_manager/view.py +++ b/openpype/tools/project_manager/project_manager/view.py @@ -98,9 +98,12 @@ class HierarchyView(QtWidgets.QTreeView): "tools_env" } - def __init__(self, dbcon, source_model, *args, **kwargs): - super(HierarchyView, self).__init__(*args, **kwargs) + def __init__(self, dbcon, source_model, parent): + super(HierarchyView, self).__init__(parent) + # Direct access to model self._source_model = source_model + # Access to parent because of `show_message` method + self._parent = parent project_doc_cache = ProjectDocCache(dbcon) tools_cache = ToolsCache() @@ -276,11 +279,15 @@ class HierarchyView(QtWidgets.QTreeView): event.accept() def _copy_items(self, indexes=None): - if indexes is None: - indexes = self.selectedIndexes() - mime_data = self._source_model.copy_mime_data(indexes) + try: + if indexes is None: + indexes = self.selectedIndexes() + mime_data = self._source_model.copy_mime_data(indexes) - QtWidgets.QApplication.clipboard().setMimeData(mime_data) + QtWidgets.QApplication.clipboard().setMimeData(mime_data) + self._show_message("Tasks copied") + except ValueError as exc: + self._show_message(str(exc)) def _paste_items(self): index = self.currentIndex() @@ -423,6 +430,10 @@ class HierarchyView(QtWidgets.QTreeView): row, 0, index )) + def _show_message(self, message): + """Show message to user.""" + self._parent.show_message(message) + def _on_context_menu(self, point): index = self.indexAt(point) column = index.column() diff --git a/openpype/tools/project_manager/project_manager/window.py b/openpype/tools/project_manager/project_manager/window.py index f2ad399ab5..d98cc0f801 100644 --- a/openpype/tools/project_manager/project_manager/window.py +++ b/openpype/tools/project_manager/project_manager/window.py @@ -52,10 +52,12 @@ class Window(QtWidgets.QWidget): ) buttons_widget = QtWidgets.QWidget(self) + message_label = QtWidgets.QLabel(buttons_widget) save_btn = QtWidgets.QPushButton("Save", buttons_widget) buttons_layout = QtWidgets.QHBoxLayout(buttons_widget) buttons_layout.setContentsMargins(0, 0, 0, 0) + buttons_layout.addWidget(message_label) buttons_layout.addStretch(1) buttons_layout.addWidget(save_btn) @@ -74,6 +76,8 @@ class Window(QtWidgets.QWidget): self.hierarchy_view = hierarchy_view self.hierarchy_model = hierarchy_model + self.message_label = message_label + self.resize(1200, 600) self.refresh_projects() @@ -106,3 +110,7 @@ class Window(QtWidgets.QWidget): def _on_save_click(self): self.hierarchy_model.save() + + def show_message(self, message): + # TODO add nicer message pop + self.message_label.setText(message)