diff -r dd389c57c2f0 -r 5771348ded12 src/eric7/WebBrowser/Session/SessionManager.py --- a/src/eric7/WebBrowser/Session/SessionManager.py Wed Nov 09 11:32:13 2022 +0100 +++ b/src/eric7/WebBrowser/Session/SessionManager.py Wed Nov 09 15:05:06 2022 +0100 @@ -14,6 +14,8 @@ import pathlib import shutil +from dataclasses import dataclass + from PyQt6.QtCore import ( QByteArray, QDateTime, @@ -43,20 +45,17 @@ from eric7.WebBrowser.WebBrowserWindow import WebBrowserWindow +@dataclass class SessionMetaData: """ Class implementing a data structure to store meta data for a session. """ - def __init__(self): - """ - Constructor - """ - self.name = "" - self.filePath = "" - self.isActive = False - self.isDefault = False - self.isBackup = False + name: str = "" + filePath: str = "" + isActive: bool = False + isDefault: bool = False + isBackup: bool = False class SessionManager(QObject): @@ -297,17 +296,19 @@ metaDataList = self.__sessionMetaData[:] if includeBackups and os.path.exists(self.__sessionBackup1): - data = SessionMetaData() - data.name = self.tr("Backup 1") - data.filePath = self.__sessionBackup1 - data.isBackup = True + data = SessionMetaData( + name=self.tr("Backup 1"), + filePath=self.__sessionBackup1, + isBackup=True, + ) metaDataList.append(data) if includeBackups and os.path.exists(self.__sessionBackup2): - data = SessionMetaData() - data.name = self.tr("Backup 2") - data.filePath = self.__sessionBackup2 - data.isBackup = True + data = SessionMetaData( + name=self.tr("Backup 2"), + filePath=self.__sessionBackup2, + isBackup=True, + ) metaDataList.append(data) return metaDataList @@ -329,9 +330,10 @@ if not sessionData or not sessionData["Windows"]: continue - data = SessionMetaData() - data.name = sessionFile.stem - data.filePath = sessionFile.resolve() + data = SessionMetaData( + name=sessionFile.stem, + filePath=sessionFile.resolve(), + ) if sessionFile == pathlib.Path(self.defaultSessionFile()): data.name = self.tr("Default Session")