do not open same file twice
This commit is contained in:
26
main.py
26
main.py
@@ -11,6 +11,7 @@ import sys
|
||||
from bigtext import BigText
|
||||
from logFileModel import LogFileModel
|
||||
from settings import Settings
|
||||
from tabs import Tabs
|
||||
|
||||
MAX_LINE_LENGTH = 4096
|
||||
|
||||
@@ -23,9 +24,9 @@ class MainWindow(QMainWindow):
|
||||
self.setGeometry(0, 0, 640, 480)
|
||||
self.setDockNestingEnabled(True)
|
||||
|
||||
self.tabs = self.create_tabs()
|
||||
self.create_tab("/home/andi/ws/performanceDb/data/production/logs_2018-09-06_2018-09-06.csv")
|
||||
self.create_tab("/home/andi/ws/ravenlog/example.log")
|
||||
self.tabs = Tabs(self.settings)
|
||||
self.tabs.create_tab("/home/andi/ws/performanceDb/data/production/logs_2018-09-06_2018-09-06.csv")
|
||||
self.tabs.create_tab("/home/andi/ws/ravenlog/example.log")
|
||||
|
||||
|
||||
self.setCentralWidget(self.tabs)
|
||||
@@ -54,23 +55,6 @@ class MainWindow(QMainWindow):
|
||||
def on_follow_file_changed(self, e):
|
||||
print(e)
|
||||
|
||||
def create_tabs(self) -> QTabWidget:
|
||||
tabs = QTabWidget()
|
||||
tabs.setTabsClosable(True)
|
||||
tabs.tabCloseRequested.connect(lambda index: tabs.removeTab(index) )
|
||||
return tabs
|
||||
|
||||
def create_tab(self, file: str):
|
||||
if not os.path.isfile(file):
|
||||
message = QMessageBox(QMessageBox.Icon.Warning, "File not found", "'%s' is not a file or cannot be opened" % (file))
|
||||
message.exec()
|
||||
return
|
||||
|
||||
model = LogFileModel(file)
|
||||
big_text = BigText(model, self.settings)
|
||||
self.tabs.addTab(big_text, model.get_tab_name())
|
||||
# open the new tab
|
||||
self.tabs.setCurrentIndex(self.tabs.count()-1)
|
||||
|
||||
def create_menu_bar(self) -> QMenuBar:
|
||||
menu_bar = QMenuBar()
|
||||
@@ -93,7 +77,7 @@ class MainWindow(QMainWindow):
|
||||
def _open_file(self) -> None:
|
||||
dialog = QFileDialog(self)
|
||||
(selected_file, _filter) = dialog.getOpenFileName(caption=self.tr("Open File"))
|
||||
self.create_tab(selected_file)
|
||||
self.tabs.create_tab(selected_file)
|
||||
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user