keep track of recent files
This commit is contained in:
@@ -20,13 +20,15 @@ class FullTabWidget(QWidget):
|
|||||||
splitter = QSplitter()
|
splitter = QSplitter()
|
||||||
splitter.setOrientation(Qt.Orientation.Vertical)
|
splitter.setOrientation(Qt.Orientation.Vertical)
|
||||||
splitter.setHandleWidth(5)
|
splitter.setHandleWidth(5)
|
||||||
#splitter.setStyleSheet("QSplitter::handle{background: #cccccc;}")
|
# splitter.setStyleSheet("QSplitter::handle{background: #cccccc;}")
|
||||||
splitter.addWidget(self.file_view)
|
splitter.addWidget(self.file_view)
|
||||||
splitter.addWidget(self.filter_hit_view)
|
splitter.addWidget(self.filter_hit_view)
|
||||||
|
|
||||||
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()
|
||||||
self.filter_hit_view.destruct()
|
self.filter_hit_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