From 4783ec5a322445f9f08a4beacfb5207c7a8ad4e3 Mon Sep 17 00:00:00 2001 From: chrin Date: Wed, 3 Jul 2024 09:02:11 +0200 Subject: [PATCH] base, elog destination and file naming change --- base.py | 39 +++++++++++++++++++++++++++++---------- sendelog.py | 13 ++----------- sendelogframe.py | 14 +++----------- 3 files changed, 34 insertions(+), 32 deletions(-) diff --git a/base.py b/base.py index fe06892..6e7bcbf 100644 --- a/base.py +++ b/base.py @@ -75,6 +75,7 @@ class BaseWindow(QMainWindow): QThread.__init__(self) self.parent = parent self.settings = self.parent.settings + self.folder_name = folder_name self.time_in_seconds = time_in_seconds self.reanalysis_time = reanalysis_time @@ -109,17 +110,28 @@ class BaseWindow(QMainWindow): name = name_base + "_{0}".format( idx) if idx > 0 else name_base + save_dest = (folder_name + date_str + '_' + name + - '.png') + '.png') + + _dirname = os.path.dirname(save_dest) - - if not os.path.exists(save_dest): - if all_fig_data[canvas][idx] is not None: - _dirname = os.path.dirname(save_dest) - + #print("DIRECTORY NAME IS ", _dirname) + #print("exists?", os.path.exists(_dirname), + #os.path.exists(save_dest)) + + if not os.path.isfile(save_dest): + if all_fig_data[canvas][idx] is not None: + + if not os.path.exists(_dirname): + + os.makedirs(_dirname) + if os.access(_dirname, os.W_OK): all_fig_data[canvas][idx].savefig(save_dest) + + elif not write_message_fired: _mess = ("Do not have write permission " + @@ -441,9 +453,13 @@ class BaseWindow(QMainWindow): self.menu = self.menuBar() - - self.elog_dest = self.settings.data["Elog"]["destination"] + + try: + self.elog_add_date_to_dir = self.settings.data["Elog"]["addDateToDir"] + except KeyError: + self.elog_add_date_to_dir = True + self.screenshot_dest = self.settings.data["screenshot"]["destination"] self.stdlog_dest = (self.settings.data["stdlog"]["destination"] + self.appname + "-" + os.getlogin() + ".log") @@ -1069,8 +1085,11 @@ class BaseWindow(QMainWindow): _month = when.strftime("%m") _day = when.strftime("%d") - return str(_year + "/" + _month + "/" + _day + "/" + self.appname + - "_" + _date_label) + if self.elog_add_date_to_dir: + return str(_year + "/" + _month + "/" + _day + "/" + self.appname + + "_" + _date_label) + else: + return str(self.appname + "_" + _date_label) def verify_save_to_hdf(self): diff --git a/sendelog.py b/sendelog.py index c0a15cb..81b97ac 100644 --- a/sendelog.py +++ b/sendelog.py @@ -9,22 +9,13 @@ from qtpy.QtWidgets import (QComboBox, QDialog, QFileDialog, QHBoxLayout, QVBoxLayout) import elog # https://github.com/paulscherrerinstitute/py_elog -from pyqtacc.bdbase.enumkind import MsgSeverity +from apps4ops.bdbase.enumkind import MsgSeverity +from apps4ops.bdbase.utils import _line _version = "1.0.0" _pymodule = os.path.basename(__file__) _appname, _appext = _pymodule.split(".") -def _line(): - """Macro to return the current line number. - - The current line number within the file is used when - reporting messages to the message logging window. - - Returns: - int: Current line number. - """ - return inspect.currentframe().f_back.f_lineno class QSendToELOG(QDialog): """ Graphical interface to elog diff --git a/sendelogframe.py b/sendelogframe.py index cb8f72e..7eeda23 100644 --- a/sendelogframe.py +++ b/sendelogframe.py @@ -9,22 +9,14 @@ from qtpy.QtWidgets import ( QLineEdit, QPushButton, QTextEdit, QVBoxLayout) import elog # https://github.com/paulscherrerinstitute/py_elog -from pyqtacc.bdbase.enumkind import MsgSeverity + +from apps4ops.bdbase.enumkind import MsgSeverity +from apps4ops.bdbase.utils import _line _version = "1.0.0" _pymodule = os.path.basename(__file__) _appname, _appext = _pymodule.split(".") -def _line(): - """Macro to return the current line number. - - The current line number within the file is used when - reporting messages to the message logging window. - - Returns: - int: Current line number. - """ - return inspect.currentframe().f_back.f_lineno class QSendToELOGFrame(QDialog): """ Graphical interface to elog