keep track of recent files

This commit is contained in:
2021-10-29 10:09:49 +02:00
parent 4f50fd03a4
commit 4c00dfed50
2 changed files with 17 additions and 2 deletions

View File

@@ -20,13 +20,15 @@ class FullTabWidget(QWidget):
splitter = QSplitter()
splitter.setOrientation(Qt.Orientation.Vertical)
splitter.setHandleWidth(5)
#splitter.setStyleSheet("QSplitter::handle{background: #cccccc;}")
# splitter.setStyleSheet("QSplitter::handle{background: #cccccc;}")
splitter.addWidget(self.file_view)
splitter.addWidget(self.filter_hit_view)
self.layout.addWidget(splitter)
def get_file(self) -> str:
self.file_view.get_file()
def destruct(self):
self.file_view.destruct()
self.filter_hit_view.destruct()
self.filter_hit_view.destruct()

13
main.py
View File

@@ -1,4 +1,5 @@
import logging
import os
import signal
from PyQt6 import QtCore
@@ -86,6 +87,18 @@ class MainWindow(QMainWindow):
dialog = QFileDialog(self)
(selected_file, _filter) = dialog.getOpenFileName(caption=self.tr("Open File"))
self.tabs.create_tab(selected_file)
self._remember_recent_file(selected_file)
def _remember_recent_file(self, file: str):
recent_files = self.settings.session.get('general', 'recent_files', fallback='')
files = recent_files.split(os.pathsep)
if file in files:
files.remove(file)
if "" in files:
files.remove("")
files.insert(0, file)
recent_files = os.pathsep.join(files[:5])
self.settings.set_session('general', 'recent_files', recent_files)
def closeEvent(self, event):
self.destruct()