mirror of
https://github.com/ynput/ayon-core.git
synced 2025-12-26 13:52:15 +01:00
Fix - added disabled icon to Site Queue
This commit is contained in:
parent
96115fac6e
commit
d86c71c15b
5 changed files with 48 additions and 19 deletions
BIN
openpype/modules/sync_server/resources/disabled.png
Normal file
BIN
openpype/modules/sync_server/resources/disabled.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 2.3 KiB |
|
|
@ -926,9 +926,22 @@ class SyncServerModule(OpenPypeModule, ITrayModule):
|
|||
|
||||
return enabled_projects
|
||||
|
||||
def is_project_enabled(self, project_name):
|
||||
def is_project_enabled(self, project_name, single=False):
|
||||
"""Checks if 'project_name' is enabled for syncing.
|
||||
'get_sync_project_setting' is potentially expensive operation (pulls
|
||||
settings for all projects if cached version is not available), using
|
||||
project_settings for specific project should be faster.
|
||||
Args:
|
||||
project_name (str)
|
||||
single (bool): use 'get_project_settings' method
|
||||
"""
|
||||
if self.enabled:
|
||||
project_settings = self.get_sync_project_setting(project_name)
|
||||
if single:
|
||||
project_settings = get_project_settings(project_name)
|
||||
project_settings = \
|
||||
self._parse_sync_settings_from_settings(project_settings)
|
||||
else:
|
||||
project_settings = self.get_sync_project_setting(project_name)
|
||||
if project_settings and project_settings.get("enabled"):
|
||||
return True
|
||||
return False
|
||||
|
|
|
|||
|
|
@ -122,11 +122,13 @@ class SyncProjectListWidget(QtWidgets.QWidget):
|
|||
self._model_reset = False
|
||||
|
||||
selected_item = None
|
||||
for project_name in self.sync_server.sync_project_settings.\
|
||||
keys():
|
||||
sync_settings = self.sync_server.sync_project_settings
|
||||
for project_name in sync_settings.keys():
|
||||
if self.sync_server.is_paused() or \
|
||||
self.sync_server.is_project_paused(project_name):
|
||||
icon = self._get_icon("paused")
|
||||
elif not sync_settings["enabled"]:
|
||||
icon = self._get_icon("disabled")
|
||||
else:
|
||||
icon = self._get_icon("synced")
|
||||
|
||||
|
|
@ -578,10 +580,11 @@ class SyncRepresentationSummaryWidget(_SyncRepresentationWidget):
|
|||
)
|
||||
|
||||
def __init__(self, sync_server, project=None, parent=None):
|
||||
import time
|
||||
log.info("SyncRepresentationSummaryWidget start")
|
||||
super(SyncRepresentationSummaryWidget, self).__init__(parent)
|
||||
|
||||
self.sync_server = sync_server
|
||||
|
||||
self._selected_ids = set() # keep last selected _id
|
||||
|
||||
txt_filter = QtWidgets.QLineEdit()
|
||||
|
|
@ -600,8 +603,11 @@ class SyncRepresentationSummaryWidget(_SyncRepresentationWidget):
|
|||
table_view = QtWidgets.QTableView()
|
||||
headers = [item[0] for item in self.default_widths]
|
||||
|
||||
start_time = time.time()
|
||||
model = SyncRepresentationSummaryModel(sync_server, headers, project,
|
||||
parent=self)
|
||||
log.info("SyncRepresentationSummaryModel:: {}".format(time.time() - start_time))
|
||||
start_time = time.time()
|
||||
table_view.setModel(model)
|
||||
table_view.setContextMenuPolicy(QtCore.Qt.CustomContextMenu)
|
||||
table_view.setSelectionMode(
|
||||
|
|
@ -625,7 +631,8 @@ class SyncRepresentationSummaryWidget(_SyncRepresentationWidget):
|
|||
column = table_view.model().get_header_index("priority")
|
||||
priority_delegate = delegates.PriorityDelegate(self)
|
||||
table_view.setItemDelegateForColumn(column, priority_delegate)
|
||||
|
||||
log.info("SyncRepresentationSummaryWidget.2:: {}".format(time.time() - start_time))
|
||||
start_time = time.time()
|
||||
layout = QtWidgets.QVBoxLayout(self)
|
||||
layout.setContentsMargins(0, 0, 0, 0)
|
||||
layout.addLayout(top_bar_layout)
|
||||
|
|
@ -633,27 +640,35 @@ class SyncRepresentationSummaryWidget(_SyncRepresentationWidget):
|
|||
|
||||
self.table_view = table_view
|
||||
self.model = model
|
||||
|
||||
log.info("SyncRepresentationSummaryWidget.3:: {}".format(time.time() - start_time))
|
||||
start_time = time.time()
|
||||
horizontal_header = HorizontalHeader(self)
|
||||
|
||||
log.info("SyncRepresentationSummaryWidget.4:: {}".format(time.time() - start_time))
|
||||
start_time = time.time()
|
||||
table_view.setHorizontalHeader(horizontal_header)
|
||||
log.info("SyncRepresentationSummaryWidget.4.1:: {}".format(time.time() - start_time))
|
||||
start_time = time.time()
|
||||
table_view.setSortingEnabled(True)
|
||||
|
||||
log.info("SyncRepresentationSummaryWidget.5:: {}".format(time.time() - start_time))
|
||||
start_time = time.time()
|
||||
for column_name, width in self.default_widths:
|
||||
idx = model.get_header_index(column_name)
|
||||
table_view.setColumnWidth(idx, width)
|
||||
|
||||
log.info("SyncRepresentationSummaryWidget.6:: {}".format(time.time() - start_time))
|
||||
start_time = time.time()
|
||||
table_view.doubleClicked.connect(self._double_clicked)
|
||||
self.txt_filter.textChanged.connect(lambda: model.set_word_filter(
|
||||
self.txt_filter.text()))
|
||||
table_view.customContextMenuRequested.connect(self._on_context_menu)
|
||||
|
||||
log.info("SyncRepresentationSummaryWidget.7:: {}".format(time.time() - start_time))
|
||||
start_time = time.time()
|
||||
model.refresh_started.connect(self._save_scrollbar)
|
||||
model.refresh_finished.connect(self._set_scrollbar)
|
||||
model.modelReset.connect(self._set_selection)
|
||||
|
||||
self.selection_model = self.table_view.selectionModel()
|
||||
self.selection_model.selectionChanged.connect(self._selection_changed)
|
||||
log.info("SyncRepresentationSummaryWidget.end:: {}".format(time.time() - start_time))
|
||||
|
||||
def _prepare_menu(self, local_progress, remote_progress,
|
||||
is_multi, can_edit, status=None):
|
||||
|
|
@ -963,7 +978,6 @@ class HorizontalHeader(QtWidgets.QHeaderView):
|
|||
super(HorizontalHeader, self).__init__(QtCore.Qt.Horizontal, parent)
|
||||
self._parent = parent
|
||||
self.checked_values = {}
|
||||
|
||||
self.setModel(self._parent.model)
|
||||
|
||||
self.setSectionsClickable(True)
|
||||
|
|
|
|||
|
|
@ -89,7 +89,7 @@ class BaseRepresentationModel(object):
|
|||
self._last_manager_cache = now_time
|
||||
|
||||
sync_server = self._modules_manager.modules_by_name["sync_server"]
|
||||
if sync_server.is_project_enabled(project_name):
|
||||
if sync_server.is_project_enabled(project_name, single=True):
|
||||
active_site = sync_server.get_active_site(project_name)
|
||||
active_provider = sync_server.get_provider_for_site(
|
||||
project_name, active_site)
|
||||
|
|
|
|||
|
|
@ -356,9 +356,10 @@ class SubsetWidget(QtWidgets.QWidget):
|
|||
enabled = False
|
||||
if project_name:
|
||||
self.model.reset_sync_server(project_name)
|
||||
if self.model.sync_server:
|
||||
enabled_proj = self.model.sync_server.get_enabled_projects()
|
||||
enabled = project_name in enabled_proj
|
||||
sync_server = self.model.sync_server
|
||||
if sync_server:
|
||||
enabled = sync_server.is_project_enabled(project_name,
|
||||
single=True)
|
||||
|
||||
lib.change_visibility(self.model, self.view, "repre_info", enabled)
|
||||
|
||||
|
|
@ -1228,9 +1229,10 @@ class RepresentationWidget(QtWidgets.QWidget):
|
|||
enabled = False
|
||||
if project_name:
|
||||
self.model.reset_sync_server(project_name)
|
||||
if self.model.sync_server:
|
||||
enabled_proj = self.model.sync_server.get_enabled_projects()
|
||||
enabled = project_name in enabled_proj
|
||||
sync_server = self.model.sync_server
|
||||
if sync_server:
|
||||
enabled = sync_server.is_project_enabled(project_name,
|
||||
single=True)
|
||||
|
||||
self.sync_server_enabled = enabled
|
||||
lib.change_visibility(self.model, self.tree_view,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue