5 |
5 |
6 """ |
6 """ |
7 Module implementing a dialog to manage sessions. |
7 Module implementing a dialog to manage sessions. |
8 """ |
8 """ |
9 |
9 |
10 from PyQt6.QtCore import pyqtSlot, Qt, QFileInfo |
10 import datetime |
|
11 import pathlib |
|
12 |
|
13 from PyQt6.QtCore import pyqtSlot, Qt |
11 from PyQt6.QtGui import QPalette |
14 from PyQt6.QtGui import QPalette |
12 from PyQt6.QtWidgets import QDialog, QTreeWidgetItem |
15 from PyQt6.QtWidgets import QDialog, QTreeWidgetItem |
13 |
16 |
14 from .Ui_SessionManagerDialog import Ui_SessionManagerDialog |
17 from .Ui_SessionManagerDialog import Ui_SessionManagerDialog |
15 |
18 |
57 sessions = WebBrowserWindow.sessionManager().sessionMetaData( |
60 sessions = WebBrowserWindow.sessionManager().sessionMetaData( |
58 includeBackups=True) |
61 includeBackups=True) |
59 for session in sessions: |
62 for session in sessions: |
60 itm = QTreeWidgetItem() |
63 itm = QTreeWidgetItem() |
61 itm.setText(0, session.name) |
64 itm.setText(0, session.name) |
62 itm.setText(1, QFileInfo(session.filePath).lastModified() |
65 itm.setText(1, datetime.datetime.fromtimestamp( |
63 .toString("yyyy-MM-dd hh:mm")) |
66 pathlib.Path(session.filePath).stat().st_mtime) |
|
67 .isoformat(sep=" ", timespec="minutes")) |
64 itm.setData(0, SessionManagerDialog.SessionFileRole, |
68 itm.setData(0, SessionManagerDialog.SessionFileRole, |
65 session.filePath) |
69 session.filePath) |
66 itm.setData(0, SessionManagerDialog.BackupSessionRole, |
70 itm.setData(0, SessionManagerDialog.BackupSessionRole, |
67 session.isBackup) |
71 session.isBackup) |
68 itm.setData(0, SessionManagerDialog.ActiveSessionRole, |
72 itm.setData(0, SessionManagerDialog.ActiveSessionRole, |
153 """ |
157 """ |
154 Private method to resize the session column of the list. |
158 Private method to resize the session column of the list. |
155 """ |
159 """ |
156 headerWidth = self.sessionsList.header().width() |
160 headerWidth = self.sessionsList.header().width() |
157 self.sessionsList.header().resizeSection( |
161 self.sessionsList.header().resizeSection( |
158 0, headerWidth - headerWidth / 2.5) |
162 0, int(headerWidth - headerWidth / 2.5)) |
159 |
163 |
160 @pyqtSlot() |
164 @pyqtSlot() |
161 def __newSession(self): |
165 def __newSession(self): |
162 """ |
166 """ |
163 Private slot to create a new session. |
167 Private slot to create a new session. |