From e4f62d335d6d229f658e075a8e26559f0b89b44e Mon Sep 17 00:00:00 2001 From: Diego Tavares Date: Thu, 29 Aug 2024 09:51:34 -0700 Subject: [PATCH] [cuegui] Save job user colors (#1463) Job colors set using the right-click menu "set user color" option is now saved on the session config file and reloaded when the application is initialized. --- cuegui/cuegui/JobMonitorTree.py | 9 +++++++++ cuegui/cuegui/plugins/MonitorJobsPlugin.py | 3 +++ 2 files changed, 12 insertions(+) diff --git a/cuegui/cuegui/JobMonitorTree.py b/cuegui/cuegui/JobMonitorTree.py index 148e9516c..5b8897bba 100644 --- a/cuegui/cuegui/JobMonitorTree.py +++ b/cuegui/cuegui/JobMonitorTree.py @@ -23,6 +23,7 @@ from future.utils import iteritems from builtins import map import time +import pickle from qtpy import QtCore from qtpy import QtGui @@ -395,6 +396,14 @@ def removeFinishedItems(self): for item in self.findItems("Finished", QtCore.Qt.MatchFixedString, COLUMN_STATE): self.removeItem(item) + def getUserColors(self): + """Returns the colored jobs to be saved""" + return list(pickle.dumps(self.__userColors)) + + def setUserColors(self, state): + """Sets the colored jobs that were saved""" + self.__userColors = pickle.loads(bytes(state)) + def contextMenuEvent(self, e): """Creates a context menu when an item is right clicked. @param e: Right click QEvent diff --git a/cuegui/cuegui/plugins/MonitorJobsPlugin.py b/cuegui/cuegui/plugins/MonitorJobsPlugin.py index 9758af1ac..00e217fbc 100644 --- a/cuegui/cuegui/plugins/MonitorJobsPlugin.py +++ b/cuegui/cuegui/plugins/MonitorJobsPlugin.py @@ -81,6 +81,9 @@ def __init__(self, parent): ("jobs", self.getJobIds, self.restoreJobIds), + ("userColors", + self.jobMonitor.getUserColors, + self.jobMonitor.setUserColors), ("columnVisibility", self.jobMonitor.getColumnVisibility, self.jobMonitor.setColumnVisibility),