From 99d9be795b4b3e463862eb945bde8abd72ee9744 Mon Sep 17 00:00:00 2001 From: Andreas Huber Date: Fri, 29 Oct 2021 09:32:08 +0200 Subject: [PATCH] set window title to file name --- ravenui.py | 5 +++++ tabs.py | 9 +++++++++ 2 files changed, 14 insertions(+) diff --git a/ravenui.py b/ravenui.py index 1a8b3d6..4e48cb7 100644 --- a/ravenui.py +++ b/ravenui.py @@ -5,3 +5,8 @@ class RavenUI(): @staticmethod def update_ui(): RavenUI.window.update() + + @staticmethod + def update_window_title(title: str): + if RavenUI.window: + RavenUI.window.setWindowTitle("%s - RavenLog" % title) diff --git a/tabs.py b/tabs.py index 3654022..6f5d9b2 100644 --- a/tabs.py +++ b/tabs.py @@ -8,6 +8,7 @@ from PyQt6.QtGui import * from bigtext import BigText from fulltabwidget import FullTabWidget from logFileModel import LogFileModel +from ravenui import RavenUI from settings import Settings @@ -24,6 +25,7 @@ class Tabs(QWidget): self.tabs.setTabsClosable(True) self.tabs.setMovable(True) self.tabs.tabCloseRequested.connect(self._close_tab) + self.tabs.currentChanged.connect(self._current_tab_changed) self.layout = QVBoxLayout(self) self.layout.setContentsMargins(0, 0, 0, 0) @@ -51,6 +53,13 @@ class Tabs(QWidget): self.tabs_by_filename[model.get_file()] = full_tab self.tabs.setCurrentIndex(tab_index) + def _current_tab_changed(self, tab_index: int): + full_tab: FullTabWidget = self.tabs.widget(tab_index) + if full_tab: + file = full_tab.file_view.get_file() + file_name = os.path.basename(file) + RavenUI.update_window_title(file_name) + def _close_tab(self, tab_index: int): full_tab: FullTabWidget = self.tabs.widget(tab_index) full_tab.destruct()