keep track of recent files
This commit is contained in:
@@ -26,6 +26,8 @@ class FullTabWidget(QWidget):
|
|||||||
|
|
||||||
self.layout.addWidget(splitter)
|
self.layout.addWidget(splitter)
|
||||||
|
|
||||||
|
def get_file(self) -> str:
|
||||||
|
self.file_view.get_file()
|
||||||
|
|
||||||
def destruct(self):
|
def destruct(self):
|
||||||
self.file_view.destruct()
|
self.file_view.destruct()
|
||||||
|
|||||||
13
main.py
13
main.py
@@ -1,4 +1,5 @@
|
|||||||
import logging
|
import logging
|
||||||
|
import os
|
||||||
import signal
|
import signal
|
||||||
|
|
||||||
from PyQt6 import QtCore
|
from PyQt6 import QtCore
|
||||||
@@ -86,6 +87,18 @@ class MainWindow(QMainWindow):
|
|||||||
dialog = QFileDialog(self)
|
dialog = QFileDialog(self)
|
||||||
(selected_file, _filter) = dialog.getOpenFileName(caption=self.tr("Open File"))
|
(selected_file, _filter) = dialog.getOpenFileName(caption=self.tr("Open File"))
|
||||||
self.tabs.create_tab(selected_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):
|
def closeEvent(self, event):
|
||||||
self.destruct()
|
self.destruct()
|
||||||
|
|||||||
Reference in New Issue
Block a user