diff -r c04e878aa308 -r e4069ddd7dc7 src/eric7/ViewManager/ViewManager.py --- a/src/eric7/ViewManager/ViewManager.py Tue Jan 23 12:21:15 2024 +0100 +++ b/src/eric7/ViewManager/ViewManager.py Wed Jan 24 18:52:50 2024 +0100 @@ -62,6 +62,8 @@ @signal editorRenamedEd(Editor) emitted after an editor was renamed @signal editorSaved(str) emitted after an editor window was saved @signal editorSavedEd(Editor) emitted after an editor window was saved + @signal editorCountChanged(count) emitted whenever the count of open editors + changed @signal checkActions(Editor) emitted when some actions should be checked for their status @signal cursorChanged(Editor) emitted after the cursor position of the @@ -99,6 +101,7 @@ editorRenamedEd = pyqtSignal(Editor) editorSaved = pyqtSignal(str) editorSavedEd = pyqtSignal(Editor) + editorCountChanged = pyqtSignal(int) checkActions = pyqtSignal(Editor) cursorChanged = pyqtSignal(Editor) breakpointToggled = pyqtSignal(Editor) @@ -5531,6 +5534,7 @@ if fn and self.getOpenEditor(fn) is None: self.editorClosed.emit(fn) self.editorClosedEd.emit(editor) + self.editorCountChanged.emit(len(self.editors)) # send a signal, if it was the very last editor if not len(self.editors): @@ -5797,6 +5801,7 @@ self.__editorOpened() self.editorOpened.emit(fn) self.editorOpenedEd.emit(editor) + self.editorCountChanged.emit(len(self.editors)) if caller.isModified(): editor.setModified(True) @@ -6055,6 +6060,7 @@ self.__editorOpened() self.editorOpened.emit(fn) self.editorOpenedEd.emit(editor) + self.editorCountChanged.emit(len(self.editors)) self.addWatchedFilePath(fn) @@ -6293,6 +6299,7 @@ self._checkActions(editor) self.editorOpened.emit("") self.editorOpenedEd.emit(editor) + self.editorCountChanged.emit(len(self.editors)) return editor @@ -6325,6 +6332,7 @@ self._checkActions(editor) self.editorOpened.emit(fileName) self.editorOpenedEd.emit(editor) + self.editorCountChanged.emit(len(self.editors)) editor.setText(text) editor.setModified(False)