Thu, 10 Apr 2025 18:39:29 +0200
Changed the application shutdown code to use a signal to indicate the shutdown.
--- a/src/eric7/APIs/Python3/eric7.api Thu Apr 10 18:36:24 2025 +0200 +++ b/src/eric7/APIs/Python3/eric7.api Thu Apr 10 18:39:29 2025 +0200 @@ -160,7 +160,6 @@ eric7.Cooperation.ChatWidget.ChatWidget.preferencesChanged?4() eric7.Cooperation.ChatWidget.ChatWidget.sendEdit?7 eric7.Cooperation.ChatWidget.ChatWidget.shareEditor?7 -eric7.Cooperation.ChatWidget.ChatWidget.shutdown?4() eric7.Cooperation.ChatWidget.ChatWidget.startEdit?7 eric7.Cooperation.ChatWidget.ChatWidget?1(ui, port=-1, parent=None) eric7.Cooperation.Connection.Connection.Editor?7 @@ -779,7 +778,6 @@ eric7.Debugger.DebugUI.DebugUI.setTracePython?4(tracePython) eric7.Debugger.DebugUI.DebugUI.setWdHistory?4(wdStr, clearHistories=False, history=None) eric7.Debugger.DebugUI.DebugUI.showNotification?4(notification, kind=NotificationTypes.INFORMATION, timeout=None) -eric7.Debugger.DebugUI.DebugUI.shutdown?4() eric7.Debugger.DebugUI.DebugUI.shutdownServer?4() eric7.Debugger.DebugUI.DebugUI.variablesFilter?4(scope) eric7.Debugger.DebugUI.DebugUI?1(ui, vm, debugServer, debugViewer, project) @@ -2423,7 +2421,6 @@ eric7.HelpViewer.HelpViewerWidget.HelpViewerWidget.searchPrev?4() eric7.HelpViewer.HelpViewerWidget.HelpViewerWidget.searchQtHelp?4(searchExpression) eric7.HelpViewer.HelpViewerWidget.HelpViewerWidget.showHideSearch?4(visible) -eric7.HelpViewer.HelpViewerWidget.HelpViewerWidget.shutdown?4() eric7.HelpViewer.HelpViewerWidget.HelpViewerWidget.webProfile?4() eric7.HelpViewer.HelpViewerWidget.HelpViewerWidget.webSettings?4() eric7.HelpViewer.HelpViewerWidget.HelpViewerWidget?1(parent=None) @@ -3370,7 +3367,6 @@ eric7.MicroPython.MicroPythonWidget.MicroPythonWidget.on_runButton_clicked?4() eric7.MicroPython.MicroPythonWidget.MicroPythonWidget.setActionButtons?4(**kwargs) eric7.MicroPython.MicroPythonWidget.MicroPythonWidget.showError?4(method, error) -eric7.MicroPython.MicroPythonWidget.MicroPythonWidget.shutdown?4() eric7.MicroPython.MicroPythonWidget.MicroPythonWidget?1(parent=None, forMPyWindow=False) eric7.MicroPython.MicroPythonWindow.MicroPythonWindow.activeWindow?4() eric7.MicroPython.MicroPythonWindow.MicroPythonWindow.addSideWidget?4(_side, widget, icon, label, ) @@ -3385,6 +3381,7 @@ eric7.MicroPython.MicroPythonWindow.MicroPythonWindow.removeSideWidget?4(widget) eric7.MicroPython.MicroPythonWindow.MicroPythonWindow.showPreferences?4(pageName=None) eric7.MicroPython.MicroPythonWindow.MicroPythonWindow.showSideWidget?4(widget) +eric7.MicroPython.MicroPythonWindow.MicroPythonWindow.shutdown?7 eric7.MicroPython.MicroPythonWindow.MicroPythonWindow?1(parent=None) eric7.MicroPython.MicroPythonWindow.SSL_AVAILABLE?7 eric7.MicroPython.MipLocalInstaller.MicroPythonPackageIndex?7 @@ -3889,7 +3886,6 @@ eric7.PipInterface.Pip.Pip.runCleanup?4(envName) eric7.PipInterface.Pip.Pip.runProcess?4(args, interpreter) eric7.PipInterface.Pip.Pip.showCacheInfo?4(venvName) -eric7.PipInterface.Pip.Pip.shutdown?4() eric7.PipInterface.Pip.Pip.uninstallPackages?4(packages, venvName) eric7.PipInterface.Pip.Pip.uninstallPyprojectDependencies?4(venvName) eric7.PipInterface.Pip.Pip.uninstallRequirements?4(venvName) @@ -3985,6 +3981,7 @@ eric7.PipInterface.PipPackagesWidget.PipPackagesWidget.setVulnerabilityEnabled?4(enable) eric7.PipInterface.PipPackagesWidget.PipPackagesWidget?1(pip, parent=None) eric7.PipInterface.PipPackagesWindow.PipPackagesWindow.closeEvent?4(evt) +eric7.PipInterface.PipPackagesWindow.PipPackagesWindow.shutdown?7 eric7.PipInterface.PipPackagesWindow.PipPackagesWindow?1(parent=None) eric7.PipInterface.PipVulnerabilityChecker.Package.name?7 eric7.PipInterface.PipVulnerabilityChecker.Package.version?7 @@ -4100,7 +4097,6 @@ eric7.PluginManager.PluginManager.PluginManager.clearPluginsPrivateData?4(type_) eric7.PluginManager.PluginManager.PluginManager.deactivatePlugin?4(name, onDemand=False) eric7.PluginManager.PluginManager.PluginManager.deactivateVcsPlugins?4() -eric7.PluginManager.PluginManager.PluginManager.doShutdown?4() eric7.PluginManager.PluginManager.PluginManager.downLoadRepositoryFile?4(url=None) eric7.PluginManager.PluginManager.PluginManager.finalizeSetup?4() eric7.PluginManager.PluginManager.PluginManager.getPluginApiFiles?4(language) @@ -10482,9 +10478,8 @@ eric7.Templates.TemplateViewer.TemplateViewer.readTemplates?4(filename=None) eric7.Templates.TemplateViewer.TemplateViewer.removeEntry?4(itm) eric7.Templates.TemplateViewer.TemplateViewer.removeGroup?4(itm) -eric7.Templates.TemplateViewer.TemplateViewer.save?4() eric7.Templates.TemplateViewer.TemplateViewer.writeTemplates?4(filename=None) -eric7.Templates.TemplateViewer.TemplateViewer?1(parent, viewmanager) +eric7.Templates.TemplateViewer.TemplateViewer?1(ui, viewmanager) eric7.Templates.TemplatesFile.TemplateViewer?7 eric7.Templates.TemplatesFile.TemplatesFile.readFile?4(filename: str) eric7.Templates.TemplatesFile.TemplatesFile.writeFile?4(filename: str) @@ -10961,7 +10956,6 @@ eric7.UI.CodeDocumentationViewer.CodeDocumentationViewer.providerRemoved?7 eric7.UI.CodeDocumentationViewer.CodeDocumentationViewer.registerProvider?4(providerName, providerDisplay, provider, supported) eric7.UI.CodeDocumentationViewer.CodeDocumentationViewer.showInfo?4(editor) -eric7.UI.CodeDocumentationViewer.CodeDocumentationViewer.shutdown?4() eric7.UI.CodeDocumentationViewer.CodeDocumentationViewer.unregisterProvider?4(providerName) eric7.UI.CodeDocumentationViewer.CodeDocumentationViewer?1(parent=None) eric7.UI.CodeDocumentationViewer.DocumentationViewerWidget.EmpytDocument_Dark?7 @@ -11158,8 +11152,7 @@ eric7.UI.Previewer.Previewer.preferencesChanged?4() eric7.UI.Previewer.Previewer.setSplitter?4(splitter) eric7.UI.Previewer.Previewer.show?4() -eric7.UI.Previewer.Previewer.shutdown?4() -eric7.UI.Previewer.Previewer?1(viewmanager, parent=None) +eric7.UI.Previewer.Previewer?1(viewmanager, ui) eric7.UI.Previewers.MarkdownExtensions.MermaidExtension.extendMarkdown?4(md) eric7.UI.Previewers.MarkdownExtensions.MermaidPreprocessor.run?4(lines) eric7.UI.Previewers.MarkdownExtensions.MermaidRegex?7 @@ -11197,8 +11190,7 @@ eric7.UI.PythonAstViewer.PythonAstViewer.preferencesChanged?4() eric7.UI.PythonAstViewer.PythonAstViewer.resizeEvent?4(_evt) eric7.UI.PythonAstViewer.PythonAstViewer.show?4() -eric7.UI.PythonAstViewer.PythonAstViewer.shutdown?4() -eric7.UI.PythonAstViewer.PythonAstViewer?1(viewmanager, parent=None) +eric7.UI.PythonAstViewer.PythonAstViewer?1(viewmanager, ui) eric7.UI.PythonDisViewer.PythonDisViewer.CodeInfoRole?7 eric7.UI.PythonDisViewer.PythonDisViewer.EndLineRole?7 eric7.UI.PythonDisViewer.PythonDisViewer.StartLineRole?7 @@ -11315,6 +11307,7 @@ eric7.UI.UserInterface.UserInterface.showPreferences?4(pageName=None) eric7.UI.UserInterface.UserInterface.showReplaceFilesWidget?4(txt="", searchDir="", openFiles=False) eric7.UI.UserInterface.UserInterface.showSideWidget?4(widget) +eric7.UI.UserInterface.UserInterface.shutdown?7 eric7.UI.UserInterface.UserInterface.unregisterToolbar?4(name) eric7.UI.UserInterface.UserInterface.upgradeEric?4() eric7.UI.UserInterface.UserInterface.upgradeEricPyQt?4() @@ -11349,7 +11342,6 @@ eric7.Utilities.BackgroundService.BackgroundService.serviceConnect?4(fx, lang, modulepath, module, callback, onErrorCallback=None, onBatchDone=None, ) eric7.Utilities.BackgroundService.BackgroundService.serviceDisconnect?4(fx, lang) eric7.Utilities.BackgroundService.BackgroundService.serviceNotAvailable?7 -eric7.Utilities.BackgroundService.BackgroundService.shutdown?4() eric7.Utilities.BackgroundService.BackgroundService?1(parent=None) eric7.Utilities.ClassBrowsers.ClassBrowserRegistry?7 eric7.Utilities.ClassBrowsers.ClbrBaseClasses.Attribute.addAssignment?4(lineno)
--- a/src/eric7/Cooperation/ChatWidget.py Thu Apr 10 18:36:24 2025 +0200 +++ b/src/eric7/Cooperation/ChatWidget.py Thu Apr 10 18:39:29 2025 +0200 @@ -97,6 +97,8 @@ self.recent = [] self.__loadHostsHistory() + self.__ui.shutdown.connect(self.__shutdown) + def __loadHostsHistory(self): """ Private method to load the recently connected hosts. @@ -720,9 +722,9 @@ ) self.chatEdit.setTextColor(color) - def shutdown(self): + def __shutdown(self): """ - Public method to shut down the cooperation system. + Private method to shut down the cooperation system. """ self.__client.disconnectConnections() self.__setConnected(False)
--- a/src/eric7/Debugger/DebugUI.py Thu Apr 10 18:36:24 2025 +0200 +++ b/src/eric7/Debugger/DebugUI.py Thu Apr 10 18:39:29 2025 +0200 @@ -185,6 +185,9 @@ project.newProject.connect(self.__projectOpened) project.projectClosed.connect(self.__projectClosed) + # Connect the shutdown signal + ui.shutdown.connect(self.__shutdown) + # Set a flag for the passive debug mode self.passive = Preferences.getDebugger("PassiveDbgEnabled") @@ -1172,9 +1175,9 @@ self.debugViewer.breakpointViewer.clearHistories() - def shutdown(self): + def __shutdown(self): """ - Public method to perform shutdown actions. + Private method to perform shutdown actions. """ # Just save the 10 most recent entries del self.scriptsHistory[10:]
--- a/src/eric7/Documentation/Help/source.qhp Thu Apr 10 18:36:24 2025 +0200 +++ b/src/eric7/Documentation/Help/source.qhp Thu Apr 10 18:39:29 2025 +0200 @@ -2184,6 +2184,7 @@ <keyword name="BackgroundService.__processQueue" id="BackgroundService.__processQueue" ref="eric7.Utilities.BackgroundService.html#BackgroundService.__processQueue" /> <keyword name="BackgroundService.__receive" id="BackgroundService.__receive" ref="eric7.Utilities.BackgroundService.html#BackgroundService.__receive" /> <keyword name="BackgroundService.__send" id="BackgroundService.__send" ref="eric7.Utilities.BackgroundService.html#BackgroundService.__send" /> + <keyword name="BackgroundService.__shutdown" id="BackgroundService.__shutdown" ref="eric7.Utilities.BackgroundService.html#BackgroundService.__shutdown" /> <keyword name="BackgroundService.__startExternalClient" id="BackgroundService.__startExternalClient" ref="eric7.Utilities.BackgroundService.html#BackgroundService.__startExternalClient" /> <keyword name="BackgroundService.enqueueRequest" id="BackgroundService.enqueueRequest" ref="eric7.Utilities.BackgroundService.html#BackgroundService.enqueueRequest" /> <keyword name="BackgroundService.on_disconnectSocket" id="BackgroundService.on_disconnectSocket" ref="eric7.Utilities.BackgroundService.html#BackgroundService.on_disconnectSocket" /> @@ -2193,7 +2194,6 @@ <keyword name="BackgroundService.restartService" id="BackgroundService.restartService" ref="eric7.Utilities.BackgroundService.html#BackgroundService.restartService" /> <keyword name="BackgroundService.serviceConnect" id="BackgroundService.serviceConnect" ref="eric7.Utilities.BackgroundService.html#BackgroundService.serviceConnect" /> <keyword name="BackgroundService.serviceDisconnect" id="BackgroundService.serviceDisconnect" ref="eric7.Utilities.BackgroundService.html#BackgroundService.serviceDisconnect" /> - <keyword name="BackgroundService.shutdown" id="BackgroundService.shutdown" ref="eric7.Utilities.BackgroundService.html#BackgroundService.shutdown" /> <keyword name="BaseDevice" id="BaseDevice" ref="eric7.MicroPython.Devices.DeviceBase.html#BaseDevice" /> <keyword name="BaseDevice (Constructor)" id="BaseDevice (Constructor)" ref="eric7.MicroPython.Devices.DeviceBase.html#BaseDevice.__init__" /> <keyword name="BaseDevice.__getDeviceData" id="BaseDevice.__getDeviceData" ref="eric7.MicroPython.Devices.DeviceBase.html#BaseDevice.__getDeviceData" /> @@ -3011,6 +3011,7 @@ <keyword name="ChatWidget.__setConnected" id="ChatWidget.__setConnected" ref="eric7.Cooperation.ChatWidget.html#ChatWidget.__setConnected" /> <keyword name="ChatWidget.__setHostsHistory" id="ChatWidget.__setHostsHistory" ref="eric7.Cooperation.ChatWidget.html#ChatWidget.__setHostsHistory" /> <keyword name="ChatWidget.__showErrorMessage" id="ChatWidget.__showErrorMessage" ref="eric7.Cooperation.ChatWidget.html#ChatWidget.__showErrorMessage" /> + <keyword name="ChatWidget.__shutdown" id="ChatWidget.__shutdown" ref="eric7.Cooperation.ChatWidget.html#ChatWidget.__shutdown" /> <keyword name="ChatWidget.appendMessage" id="ChatWidget.appendMessage" ref="eric7.Cooperation.ChatWidget.html#ChatWidget.appendMessage" /> <keyword name="ChatWidget.checkEditorActions" id="ChatWidget.checkEditorActions" ref="eric7.Cooperation.ChatWidget.html#ChatWidget.checkEditorActions" /> <keyword name="ChatWidget.getClient" id="ChatWidget.getClient" ref="eric7.Cooperation.ChatWidget.html#ChatWidget.getClient" /> @@ -3026,7 +3027,6 @@ <keyword name="ChatWidget.on_startEditButton_clicked" id="ChatWidget.on_startEditButton_clicked" ref="eric7.Cooperation.ChatWidget.html#ChatWidget.on_startEditButton_clicked" /> <keyword name="ChatWidget.on_usersList_customContextMenuRequested" id="ChatWidget.on_usersList_customContextMenuRequested" ref="eric7.Cooperation.ChatWidget.html#ChatWidget.on_usersList_customContextMenuRequested" /> <keyword name="ChatWidget.preferencesChanged" id="ChatWidget.preferencesChanged" ref="eric7.Cooperation.ChatWidget.html#ChatWidget.preferencesChanged" /> - <keyword name="ChatWidget.shutdown" id="ChatWidget.shutdown" ref="eric7.Cooperation.ChatWidget.html#ChatWidget.shutdown" /> <keyword name="Checker" id="Checker" ref="eric7.Plugins.CheckerPlugins.CodeStyleChecker.pycodestyle.html#Checker" /> <keyword name="Checker (Constructor)" id="Checker (Constructor)" ref="eric7.Plugins.CheckerPlugins.CodeStyleChecker.pycodestyle.html#Checker.__init__" /> <keyword name="Checker.build_tokens_line" id="Checker.build_tokens_line" ref="eric7.Plugins.CheckerPlugins.CodeStyleChecker.pycodestyle.html#Checker.build_tokens_line" /> @@ -3228,6 +3228,7 @@ <keyword name="CodeDocumentationViewer.__selectProvider" id="CodeDocumentationViewer.__selectProvider" ref="eric7.UI.CodeDocumentationViewer.html#CodeDocumentationViewer.__selectProvider" /> <keyword name="CodeDocumentationViewer.__setupUi" id="CodeDocumentationViewer.__setupUi" ref="eric7.UI.CodeDocumentationViewer.html#CodeDocumentationViewer.__setupUi" /> <keyword name="CodeDocumentationViewer.__showDisabledMessage" id="CodeDocumentationViewer.__showDisabledMessage" ref="eric7.UI.CodeDocumentationViewer.html#CodeDocumentationViewer.__showDisabledMessage" /> + <keyword name="CodeDocumentationViewer.__shutdown" id="CodeDocumentationViewer.__shutdown" ref="eric7.UI.CodeDocumentationViewer.html#CodeDocumentationViewer.__shutdown" /> <keyword name="CodeDocumentationViewer.__unregisterTimerTimeout" id="CodeDocumentationViewer.__unregisterTimerTimeout" ref="eric7.UI.CodeDocumentationViewer.html#CodeDocumentationViewer.__unregisterTimerTimeout" /> <keyword name="CodeDocumentationViewer.documentationReady" id="CodeDocumentationViewer.documentationReady" ref="eric7.UI.CodeDocumentationViewer.html#CodeDocumentationViewer.documentationReady" /> <keyword name="CodeDocumentationViewer.finalizeSetup" id="CodeDocumentationViewer.finalizeSetup" ref="eric7.UI.CodeDocumentationViewer.html#CodeDocumentationViewer.finalizeSetup" /> @@ -3238,7 +3239,6 @@ <keyword name="CodeDocumentationViewer.preferencesChanged" id="CodeDocumentationViewer.preferencesChanged" ref="eric7.UI.CodeDocumentationViewer.html#CodeDocumentationViewer.preferencesChanged" /> <keyword name="CodeDocumentationViewer.registerProvider" id="CodeDocumentationViewer.registerProvider" ref="eric7.UI.CodeDocumentationViewer.html#CodeDocumentationViewer.registerProvider" /> <keyword name="CodeDocumentationViewer.showInfo" id="CodeDocumentationViewer.showInfo" ref="eric7.UI.CodeDocumentationViewer.html#CodeDocumentationViewer.showInfo" /> - <keyword name="CodeDocumentationViewer.shutdown" id="CodeDocumentationViewer.shutdown" ref="eric7.UI.CodeDocumentationViewer.html#CodeDocumentationViewer.shutdown" /> <keyword name="CodeDocumentationViewer.unregisterProvider" id="CodeDocumentationViewer.unregisterProvider" ref="eric7.UI.CodeDocumentationViewer.html#CodeDocumentationViewer.unregisterProvider" /> <keyword name="CodeDocumentationViewerTemplate (Module)" id="CodeDocumentationViewerTemplate (Module)" ref="eric7.UI.CodeDocumentationViewerTemplate.html" /> <keyword name="CodeFormatting (Package)" id="CodeFormatting (Package)" ref="index-eric7.CodeFormatting.html" /> @@ -4174,6 +4174,7 @@ <keyword name="DebugUI.__showBreakpointsMenu" id="DebugUI.__showBreakpointsMenu" ref="eric7.Debugger.DebugUI.html#DebugUI.__showBreakpointsMenu" /> <keyword name="DebugUI.__showDebugMenu" id="DebugUI.__showDebugMenu" ref="eric7.Debugger.DebugUI.html#DebugUI.__showDebugMenu" /> <keyword name="DebugUI.__showNotConnectedWarning" id="DebugUI.__showNotConnectedWarning" ref="eric7.Debugger.DebugUI.html#DebugUI.__showNotConnectedWarning" /> + <keyword name="DebugUI.__shutdown" id="DebugUI.__shutdown" ref="eric7.Debugger.DebugUI.html#DebugUI.__shutdown" /> <keyword name="DebugUI.__specialContinue" id="DebugUI.__specialContinue" ref="eric7.Debugger.DebugUI.html#DebugUI.__specialContinue" /> <keyword name="DebugUI.__step" id="DebugUI.__step" ref="eric7.Debugger.DebugUI.html#DebugUI.__step" /> <keyword name="DebugUI.__stepOut" id="DebugUI.__stepOut" ref="eric7.Debugger.DebugUI.html#DebugUI.__stepOut" /> @@ -4208,7 +4209,6 @@ <keyword name="DebugUI.setTracePython" id="DebugUI.setTracePython" ref="eric7.Debugger.DebugUI.html#DebugUI.setTracePython" /> <keyword name="DebugUI.setWdHistory" id="DebugUI.setWdHistory" ref="eric7.Debugger.DebugUI.html#DebugUI.setWdHistory" /> <keyword name="DebugUI.showNotification" id="DebugUI.showNotification" ref="eric7.Debugger.DebugUI.html#DebugUI.showNotification" /> - <keyword name="DebugUI.shutdown" id="DebugUI.shutdown" ref="eric7.Debugger.DebugUI.html#DebugUI.shutdown" /> <keyword name="DebugUI.shutdownServer" id="DebugUI.shutdownServer" ref="eric7.Debugger.DebugUI.html#DebugUI.shutdownServer" /> <keyword name="DebugUI.variablesFilter" id="DebugUI.variablesFilter" ref="eric7.Debugger.DebugUI.html#DebugUI.variablesFilter" /> <keyword name="DebugUtilities (Module)" id="DebugUtilities (Module)" ref="eric7.DebugClients.Python.DebugUtilities.html" /> @@ -8761,6 +8761,7 @@ <keyword name="HelpViewerWidget.__showBackMenu" id="HelpViewerWidget.__showBackMenu" ref="eric7.HelpViewer.HelpViewerWidget.html#HelpViewerWidget.__showBackMenu" /> <keyword name="HelpViewerWidget.__showForwardMenu" id="HelpViewerWidget.__showForwardMenu" ref="eric7.HelpViewer.HelpViewerWidget.html#HelpViewerWidget.__showForwardMenu" /> <keyword name="HelpViewerWidget.__showInstallationError" id="HelpViewerWidget.__showInstallationError" ref="eric7.HelpViewer.HelpViewerWidget.html#HelpViewerWidget.__showInstallationError" /> + <keyword name="HelpViewerWidget.__shutdown" id="HelpViewerWidget.__shutdown" ref="eric7.HelpViewer.HelpViewerWidget.html#HelpViewerWidget.__shutdown" /> <keyword name="HelpViewerWidget.__warning" id="HelpViewerWidget.__warning" ref="eric7.HelpViewer.HelpViewerWidget.html#HelpViewerWidget.__warning" /> <keyword name="HelpViewerWidget.__zoomIn" id="HelpViewerWidget.__zoomIn" ref="eric7.HelpViewer.HelpViewerWidget.html#HelpViewerWidget.__zoomIn" /> <keyword name="HelpViewerWidget.__zoomOut" id="HelpViewerWidget.__zoomOut" ref="eric7.HelpViewer.HelpViewerWidget.html#HelpViewerWidget.__zoomOut" /> @@ -8781,7 +8782,6 @@ <keyword name="HelpViewerWidget.searchPrev" id="HelpViewerWidget.searchPrev" ref="eric7.HelpViewer.HelpViewerWidget.html#HelpViewerWidget.searchPrev" /> <keyword name="HelpViewerWidget.searchQtHelp" id="HelpViewerWidget.searchQtHelp" ref="eric7.HelpViewer.HelpViewerWidget.html#HelpViewerWidget.searchQtHelp" /> <keyword name="HelpViewerWidget.showHideSearch" id="HelpViewerWidget.showHideSearch" ref="eric7.HelpViewer.HelpViewerWidget.html#HelpViewerWidget.showHideSearch" /> - <keyword name="HelpViewerWidget.shutdown" id="HelpViewerWidget.shutdown" ref="eric7.HelpViewer.HelpViewerWidget.html#HelpViewerWidget.shutdown" /> <keyword name="HelpViewerWidget.webProfile" id="HelpViewerWidget.webProfile" ref="eric7.HelpViewer.HelpViewerWidget.html#HelpViewerWidget.webProfile" /> <keyword name="HelpViewerWidget.webSettings" id="HelpViewerWidget.webSettings" ref="eric7.HelpViewer.HelpViewerWidget.html#HelpViewerWidget.webSettings" /> <keyword name="HelpViewersPage" id="HelpViewersPage" ref="eric7.Preferences.ConfigurationPages.HelpViewersPage.html#HelpViewersPage" /> @@ -11835,6 +11835,7 @@ <keyword name="MicroPythonWidget.__showLocalAndDeviceTime" id="MicroPythonWidget.__showLocalAndDeviceTime" ref="eric7.MicroPython.MicroPythonWidget.html#MicroPythonWidget.__showLocalAndDeviceTime" /> <keyword name="MicroPythonWidget.__showLocalTime" id="MicroPythonWidget.__showLocalTime" ref="eric7.MicroPython.MicroPythonWidget.html#MicroPythonWidget.__showLocalTime" /> <keyword name="MicroPythonWidget.__showNoDeviceMessage" id="MicroPythonWidget.__showNoDeviceMessage" ref="eric7.MicroPython.MicroPythonWidget.html#MicroPythonWidget.__showNoDeviceMessage" /> + <keyword name="MicroPythonWidget.__shutdown" id="MicroPythonWidget.__shutdown" ref="eric7.MicroPython.MicroPythonWidget.html#MicroPythonWidget.__shutdown" /> <keyword name="MicroPythonWidget.__synchronizeTime" id="MicroPythonWidget.__synchronizeTime" ref="eric7.MicroPython.MicroPythonWidget.html#MicroPythonWidget.__synchronizeTime" /> <keyword name="MicroPythonWidget.deviceInterface" id="MicroPythonWidget.deviceInterface" ref="eric7.MicroPython.MicroPythonWidget.html#MicroPythonWidget.deviceInterface" /> <keyword name="MicroPythonWidget.deviceSupportsLocalFileAccess" id="MicroPythonWidget.deviceSupportsLocalFileAccess" ref="eric7.MicroPython.MicroPythonWidget.html#MicroPythonWidget.deviceSupportsLocalFileAccess" /> @@ -11855,7 +11856,6 @@ <keyword name="MicroPythonWidget.on_runButton_clicked" id="MicroPythonWidget.on_runButton_clicked" ref="eric7.MicroPython.MicroPythonWidget.html#MicroPythonWidget.on_runButton_clicked" /> <keyword name="MicroPythonWidget.setActionButtons" id="MicroPythonWidget.setActionButtons" ref="eric7.MicroPython.MicroPythonWidget.html#MicroPythonWidget.setActionButtons" /> <keyword name="MicroPythonWidget.showError" id="MicroPythonWidget.showError" ref="eric7.MicroPython.MicroPythonWidget.html#MicroPythonWidget.showError" /> - <keyword name="MicroPythonWidget.shutdown" id="MicroPythonWidget.shutdown" ref="eric7.MicroPython.MicroPythonWidget.html#MicroPythonWidget.shutdown" /> <keyword name="MicroPythonWindow" id="MicroPythonWindow" ref="eric7.MicroPython.MicroPythonWindow.html#MicroPythonWindow" /> <keyword name="MicroPythonWindow (Constructor)" id="MicroPythonWindow (Constructor)" ref="eric7.MicroPython.MicroPythonWindow.html#MicroPythonWindow.__init__" /> <keyword name="MicroPythonWindow (Module)" id="MicroPythonWindow (Module)" ref="eric7.MicroPython.MicroPythonWindow.html" /> @@ -13035,6 +13035,7 @@ <keyword name="Pip.__extractOutdatedPackages" id="Pip.__extractOutdatedPackages" ref="eric7.PipInterface.Pip.html#Pip.__extractOutdatedPackages" /> <keyword name="Pip.__filterUpgradePackages" id="Pip.__filterUpgradePackages" ref="eric7.PipInterface.Pip.html#Pip.__filterUpgradePackages" /> <keyword name="Pip.__outdatedFinished" id="Pip.__outdatedFinished" ref="eric7.PipInterface.Pip.html#Pip.__outdatedFinished" /> + <keyword name="Pip.__shutdown" id="Pip.__shutdown" ref="eric7.PipInterface.Pip.html#Pip.__shutdown" /> <keyword name="Pip.cacheList" id="Pip.cacheList" ref="eric7.PipInterface.Pip.html#Pip.cacheList" /> <keyword name="Pip.cachePurge" id="Pip.cachePurge" ref="eric7.PipInterface.Pip.html#Pip.cachePurge" /> <keyword name="Pip.cacheRemove" id="Pip.cacheRemove" ref="eric7.PipInterface.Pip.html#Pip.cacheRemove" /> @@ -13065,7 +13066,6 @@ <keyword name="Pip.runCleanup" id="Pip.runCleanup" ref="eric7.PipInterface.Pip.html#Pip.runCleanup" /> <keyword name="Pip.runProcess" id="Pip.runProcess" ref="eric7.PipInterface.Pip.html#Pip.runProcess" /> <keyword name="Pip.showCacheInfo" id="Pip.showCacheInfo" ref="eric7.PipInterface.Pip.html#Pip.showCacheInfo" /> - <keyword name="Pip.shutdown" id="Pip.shutdown" ref="eric7.PipInterface.Pip.html#Pip.shutdown" /> <keyword name="Pip.uninstallPackages" id="Pip.uninstallPackages" ref="eric7.PipInterface.Pip.html#Pip.uninstallPackages" /> <keyword name="Pip.uninstallPyprojectDependencies" id="Pip.uninstallPyprojectDependencies" ref="eric7.PipInterface.Pip.html#Pip.uninstallPyprojectDependencies" /> <keyword name="Pip.uninstallRequirements" id="Pip.uninstallRequirements" ref="eric7.PipInterface.Pip.html#Pip.uninstallRequirements" /> @@ -13323,6 +13323,7 @@ <keyword name="PluginManager.__loadPlugins" id="PluginManager.__loadPlugins" ref="eric7.PluginManager.PluginManager.html#PluginManager.__loadPlugins" /> <keyword name="PluginManager.__pluginDirectoriesExist" id="PluginManager.__pluginDirectoriesExist" ref="eric7.PluginManager.PluginManager.html#PluginManager.__pluginDirectoriesExist" /> <keyword name="PluginManager.__pluginModulesExist" id="PluginManager.__pluginModulesExist" ref="eric7.PluginManager.PluginManager.html#PluginManager.__pluginModulesExist" /> + <keyword name="PluginManager.__shutdown" id="PluginManager.__shutdown" ref="eric7.PluginManager.PluginManager.html#PluginManager.__shutdown" /> <keyword name="PluginManager.__sslErrors" id="PluginManager.__sslErrors" ref="eric7.PluginManager.PluginManager.html#PluginManager.__sslErrors" /> <keyword name="PluginManager.activatePlugin" id="PluginManager.activatePlugin" ref="eric7.PluginManager.PluginManager.html#PluginManager.activatePlugin" /> <keyword name="PluginManager.activatePlugins" id="PluginManager.activatePlugins" ref="eric7.PluginManager.PluginManager.html#PluginManager.activatePlugins" /> @@ -13331,7 +13332,6 @@ <keyword name="PluginManager.clearPluginsPrivateData" id="PluginManager.clearPluginsPrivateData" ref="eric7.PluginManager.PluginManager.html#PluginManager.clearPluginsPrivateData" /> <keyword name="PluginManager.deactivatePlugin" id="PluginManager.deactivatePlugin" ref="eric7.PluginManager.PluginManager.html#PluginManager.deactivatePlugin" /> <keyword name="PluginManager.deactivateVcsPlugins" id="PluginManager.deactivateVcsPlugins" ref="eric7.PluginManager.PluginManager.html#PluginManager.deactivateVcsPlugins" /> - <keyword name="PluginManager.doShutdown" id="PluginManager.doShutdown" ref="eric7.PluginManager.PluginManager.html#PluginManager.doShutdown" /> <keyword name="PluginManager.downLoadRepositoryFile" id="PluginManager.downLoadRepositoryFile" ref="eric7.PluginManager.PluginManager.html#PluginManager.downLoadRepositoryFile" /> <keyword name="PluginManager.finalizeSetup" id="PluginManager.finalizeSetup" ref="eric7.PluginManager.PluginManager.html#PluginManager.finalizeSetup" /> <keyword name="PluginManager.getPluginApiFiles" id="PluginManager.getPluginApiFiles" ref="eric7.PluginManager.PluginManager.html#PluginManager.getPluginApiFiles" /> @@ -13533,12 +13533,12 @@ <keyword name="Previewer.__isPreviewable" id="Previewer.__isPreviewable" ref="eric7.UI.Previewer.html#Previewer.__isPreviewable" /> <keyword name="Previewer.__previewStateChanged" id="Previewer.__previewStateChanged" ref="eric7.UI.Previewer.html#Previewer.__previewStateChanged" /> <keyword name="Previewer.__processEditor" id="Previewer.__processEditor" ref="eric7.UI.Previewer.html#Previewer.__processEditor" /> + <keyword name="Previewer.__shutdown" id="Previewer.__shutdown" ref="eric7.UI.Previewer.html#Previewer.__shutdown" /> <keyword name="Previewer.__splitterMoved" id="Previewer.__splitterMoved" ref="eric7.UI.Previewer.html#Previewer.__splitterMoved" /> <keyword name="Previewer.hide" id="Previewer.hide" ref="eric7.UI.Previewer.html#Previewer.hide" /> <keyword name="Previewer.preferencesChanged" id="Previewer.preferencesChanged" ref="eric7.UI.Previewer.html#Previewer.preferencesChanged" /> <keyword name="Previewer.setSplitter" id="Previewer.setSplitter" ref="eric7.UI.Previewer.html#Previewer.setSplitter" /> <keyword name="Previewer.show" id="Previewer.show" ref="eric7.UI.Previewer.html#Previewer.show" /> - <keyword name="Previewer.shutdown" id="Previewer.shutdown" ref="eric7.UI.Previewer.html#Previewer.shutdown" /> <keyword name="PreviewerHTML" id="PreviewerHTML" ref="eric7.UI.Previewers.PreviewerHTML.html#PreviewerHTML" /> <keyword name="PreviewerHTML (Constructor)" id="PreviewerHTML (Constructor)" ref="eric7.UI.Previewers.PreviewerHTML.html#PreviewerHTML.__init__" /> <keyword name="PreviewerHTML (Module)" id="PreviewerHTML (Module)" ref="eric7.UI.Previewers.PreviewerHTML.html" /> @@ -14486,11 +14486,11 @@ <keyword name="PythonAstViewer.__rangeContainsSmallerOrEqual" id="PythonAstViewer.__rangeContainsSmallerOrEqual" ref="eric7.UI.PythonAstViewer.html#PythonAstViewer.__rangeContainsSmallerOrEqual" /> <keyword name="PythonAstViewer.__resizeColumns" id="PythonAstViewer.__resizeColumns" ref="eric7.UI.PythonAstViewer.html#PythonAstViewer.__resizeColumns" /> <keyword name="PythonAstViewer.__selectItemForEditorSelection" id="PythonAstViewer.__selectItemForEditorSelection" ref="eric7.UI.PythonAstViewer.html#PythonAstViewer.__selectItemForEditorSelection" /> + <keyword name="PythonAstViewer.__shutdown" id="PythonAstViewer.__shutdown" ref="eric7.UI.PythonAstViewer.html#PythonAstViewer.__shutdown" /> <keyword name="PythonAstViewer.hide" id="PythonAstViewer.hide" ref="eric7.UI.PythonAstViewer.html#PythonAstViewer.hide" /> <keyword name="PythonAstViewer.preferencesChanged" id="PythonAstViewer.preferencesChanged" ref="eric7.UI.PythonAstViewer.html#PythonAstViewer.preferencesChanged" /> <keyword name="PythonAstViewer.resizeEvent" id="PythonAstViewer.resizeEvent" ref="eric7.UI.PythonAstViewer.html#PythonAstViewer.resizeEvent" /> <keyword name="PythonAstViewer.show" id="PythonAstViewer.show" ref="eric7.UI.PythonAstViewer.html#PythonAstViewer.show" /> - <keyword name="PythonAstViewer.shutdown" id="PythonAstViewer.shutdown" ref="eric7.UI.PythonAstViewer.html#PythonAstViewer.shutdown" /> <keyword name="PythonDisViewer" id="PythonDisViewer" ref="eric7.UI.PythonDisViewer.html#PythonDisViewer" /> <keyword name="PythonDisViewer (Constructor)" id="PythonDisViewer (Constructor)" ref="eric7.UI.PythonDisViewer.html#PythonDisViewer.__init__" /> <keyword name="PythonDisViewer (Module)" id="PythonDisViewer (Module)" ref="eric7.UI.PythonDisViewer.html" /> @@ -17652,6 +17652,7 @@ <keyword name="TemplateViewer.__reload" id="TemplateViewer.__reload" ref="eric7.Templates.TemplateViewer.html#TemplateViewer.__reload" /> <keyword name="TemplateViewer.__remove" id="TemplateViewer.__remove" ref="eric7.Templates.TemplateViewer.html#TemplateViewer.__remove" /> <keyword name="TemplateViewer.__resort" id="TemplateViewer.__resort" ref="eric7.Templates.TemplateViewer.html#TemplateViewer.__resort" /> + <keyword name="TemplateViewer.__save" id="TemplateViewer.__save" ref="eric7.Templates.TemplateViewer.html#TemplateViewer.__save" /> <keyword name="TemplateViewer.__showContextMenu" id="TemplateViewer.__showContextMenu" ref="eric7.Templates.TemplateViewer.html#TemplateViewer.__showContextMenu" /> <keyword name="TemplateViewer.__showHelp" id="TemplateViewer.__showHelp" ref="eric7.Templates.TemplateViewer.html#TemplateViewer.__showHelp" /> <keyword name="TemplateViewer.__templateItemActivated" id="TemplateViewer.__templateItemActivated" ref="eric7.Templates.TemplateViewer.html#TemplateViewer.__templateItemActivated" /> @@ -17669,7 +17670,6 @@ <keyword name="TemplateViewer.readTemplates" id="TemplateViewer.readTemplates" ref="eric7.Templates.TemplateViewer.html#TemplateViewer.readTemplates" /> <keyword name="TemplateViewer.removeEntry" id="TemplateViewer.removeEntry" ref="eric7.Templates.TemplateViewer.html#TemplateViewer.removeEntry" /> <keyword name="TemplateViewer.removeGroup" id="TemplateViewer.removeGroup" ref="eric7.Templates.TemplateViewer.html#TemplateViewer.removeGroup" /> - <keyword name="TemplateViewer.save" id="TemplateViewer.save" ref="eric7.Templates.TemplateViewer.html#TemplateViewer.save" /> <keyword name="TemplateViewer.writeTemplates" id="TemplateViewer.writeTemplates" ref="eric7.Templates.TemplateViewer.html#TemplateViewer.writeTemplates" /> <keyword name="Templates (Module)" id="Templates (Module)" ref="eric7.Plugins.WizardPlugins.EricPluginWizard.Templates.html" /> <keyword name="Templates (Package)" id="Templates (Package)" ref="index-eric7.Templates.html" />
--- a/src/eric7/Documentation/Source/eric7.Cooperation.ChatWidget.html Thu Apr 10 18:36:24 2025 +0200 +++ b/src/eric7/Documentation/Source/eric7.Cooperation.ChatWidget.html Thu Apr 10 18:39:29 2025 +0200 @@ -174,6 +174,10 @@ <td>Private slot to show an error message.</td> </tr> <tr> +<td><a href="#ChatWidget.__shutdown">__shutdown</a></td> +<td>Private method to shut down the cooperation system.</td> +</tr> +<tr> <td><a href="#ChatWidget.appendMessage">appendMessage</a></td> <td>Public slot to append a message to the display.</td> </tr> @@ -233,10 +237,6 @@ <td><a href="#ChatWidget.preferencesChanged">preferencesChanged</a></td> <td>Public slot to handle a change of preferences.</td> </tr> -<tr> -<td><a href="#ChatWidget.shutdown">shutdown</a></td> -<td>Public method to shut down the cooperation system.</td> -</tr> </table> <h3>Static Methods</h3> @@ -483,6 +483,13 @@ error message to show </dd> </dl> +<a NAME="ChatWidget.__shutdown" ID="ChatWidget.__shutdown"></a> +<h4>ChatWidget.__shutdown</h4> +<b>__shutdown</b>(<i></i>) +<p> + Private method to shut down the cooperation system. +</p> + <a NAME="ChatWidget.appendMessage" ID="ChatWidget.appendMessage"></a> <h4>ChatWidget.appendMessage</h4> <b>appendMessage</b>(<i>from_, message</i>) @@ -660,13 +667,6 @@ Public slot to handle a change of preferences. </p> -<a NAME="ChatWidget.shutdown" ID="ChatWidget.shutdown"></a> -<h4>ChatWidget.shutdown</h4> -<b>shutdown</b>(<i></i>) -<p> - Public method to shut down the cooperation system. -</p> - <div align="right"><a href="#top">Up</a></div> <hr /> </body></html>
--- a/src/eric7/Documentation/Source/eric7.Debugger.DebugUI.html Thu Apr 10 18:36:24 2025 +0200 +++ b/src/eric7/Documentation/Source/eric7.Debugger.DebugUI.html Thu Apr 10 18:39:29 2025 +0200 @@ -292,6 +292,10 @@ <td>Private method to show a warning about a not connected eric-ide server.</td> </tr> <tr> +<td><a href="#DebugUI.__shutdown">__shutdown</a></td> +<td>Private method to perform shutdown actions.</td> +</tr> +<tr> <td><a href="#DebugUI.__specialContinue">__specialContinue</a></td> <td>Private method to handle the Special Continue action.</td> </tr> @@ -428,10 +432,6 @@ <td>Public method to show some notification message.</td> </tr> <tr> -<td><a href="#DebugUI.shutdown">shutdown</a></td> -<td>Public method to perform shutdown actions.</td> -</tr> -<tr> <td><a href="#DebugUI.shutdownServer">shutdownServer</a></td> <td>Public method to shut down the debug server.</td> </tr> @@ -1163,6 +1163,13 @@ name of the file (defaults to "") </dd> </dl> +<a NAME="DebugUI.__shutdown" ID="DebugUI.__shutdown"></a> +<h4>DebugUI.__shutdown</h4> +<b>__shutdown</b>(<i></i>) +<p> + Private method to perform shutdown actions. +</p> + <a NAME="DebugUI.__specialContinue" ID="DebugUI.__specialContinue"></a> <h4>DebugUI.__specialContinue</h4> <b>__specialContinue</b>(<i>debuggerId=""</i>) @@ -1744,13 +1751,6 @@ default, 0 = indefinitely) </dd> </dl> -<a NAME="DebugUI.shutdown" ID="DebugUI.shutdown"></a> -<h4>DebugUI.shutdown</h4> -<b>shutdown</b>(<i></i>) -<p> - Public method to perform shutdown actions. -</p> - <a NAME="DebugUI.shutdownServer" ID="DebugUI.shutdownServer"></a> <h4>DebugUI.shutdownServer</h4> <b>shutdownServer</b>(<i></i>)
--- a/src/eric7/Documentation/Source/eric7.HelpViewer.HelpViewerWidget.html Thu Apr 10 18:36:24 2025 +0200 +++ b/src/eric7/Documentation/Source/eric7.HelpViewer.HelpViewerWidget.html Thu Apr 10 18:39:29 2025 +0200 @@ -209,6 +209,10 @@ <td>Private slot to show installation errors.</td> </tr> <tr> +<td><a href="#HelpViewerWidget.__shutdown">__shutdown</a></td> +<td>Private method to perform shut down actions.</td> +</tr> +<tr> <td><a href="#HelpViewerWidget.__warning">__warning</a></td> <td>Private slot handling warnings of the help engine.</td> </tr> @@ -285,10 +289,6 @@ <td>Public slot to show or hide the search widget.</td> </tr> <tr> -<td><a href="#HelpViewerWidget.shutdown">shutdown</a></td> -<td>Public method to perform shut down actions.</td> -</tr> -<tr> <td><a href="#HelpViewerWidget.webProfile">webProfile</a></td> <td>Public method to get a reference to the global web profile object.</td> </tr> @@ -712,6 +712,13 @@ message to be shown </dd> </dl> +<a NAME="HelpViewerWidget.__shutdown" ID="HelpViewerWidget.__shutdown"></a> +<h4>HelpViewerWidget.__shutdown</h4> +<b>__shutdown</b>(<i></i>) +<p> + Private method to perform shut down actions. +</p> + <a NAME="HelpViewerWidget.__warning" ID="HelpViewerWidget.__warning"></a> <h4>HelpViewerWidget.__warning</h4> <b>__warning</b>(<i>msg</i>) @@ -957,13 +964,6 @@ flag indicating to show or hide the search widget </dd> </dl> -<a NAME="HelpViewerWidget.shutdown" ID="HelpViewerWidget.shutdown"></a> -<h4>HelpViewerWidget.shutdown</h4> -<b>shutdown</b>(<i></i>) -<p> - Public method to perform shut down actions. -</p> - <a NAME="HelpViewerWidget.webProfile" ID="HelpViewerWidget.webProfile"></a> <h4>HelpViewerWidget.webProfile</h4> <b>webProfile</b>(<i></i>)
--- a/src/eric7/Documentation/Source/eric7.MicroPython.MicroPythonWidget.html Thu Apr 10 18:36:24 2025 +0200 +++ b/src/eric7/Documentation/Source/eric7.MicroPython.MicroPythonWidget.html Thu Apr 10 18:39:29 2025 +0200 @@ -207,6 +207,10 @@ <td>Private method to show a message dialog indicating a missing device.</td> </tr> <tr> +<td><a href="#MicroPythonWidget.__shutdown">__shutdown</a></td> +<td>Private method to perform some shutdown actions.</td> +</tr> +<tr> <td><a href="#MicroPythonWidget.__synchronizeTime">__synchronizeTime</a></td> <td>Private slot to set the time of the connected device to the local computer's time.</td> </tr> @@ -286,10 +290,6 @@ <td><a href="#MicroPythonWidget.showError">showError</a></td> <td>Public method to show some error message.</td> </tr> -<tr> -<td><a href="#MicroPythonWidget.shutdown">shutdown</a></td> -<td>Public method to perform some shutdown actions.</td> -</tr> </table> <h3>Static Methods</h3> @@ -623,6 +623,13 @@ Private method to show a message dialog indicating a missing device. </p> +<a NAME="MicroPythonWidget.__shutdown" ID="MicroPythonWidget.__shutdown"></a> +<h4>MicroPythonWidget.__shutdown</h4> +<b>__shutdown</b>(<i></i>) +<p> + Private method to perform some shutdown actions. +</p> + <a NAME="MicroPythonWidget.__synchronizeTime" ID="MicroPythonWidget.__synchronizeTime"></a> <h4>MicroPythonWidget.__synchronizeTime</h4> <b>__synchronizeTime</b>(<i>quiet=False</i>) @@ -951,13 +958,6 @@ error message </dd> </dl> -<a NAME="MicroPythonWidget.shutdown" ID="MicroPythonWidget.shutdown"></a> -<h4>MicroPythonWidget.shutdown</h4> -<b>shutdown</b>(<i></i>) -<p> - Public method to perform some shutdown actions. -</p> - <div align="right"><a href="#top">Up</a></div> <hr /> </body></html>
--- a/src/eric7/Documentation/Source/eric7.MicroPython.MicroPythonWindow.html Thu Apr 10 18:36:24 2025 +0200 +++ b/src/eric7/Documentation/Source/eric7.MicroPython.MicroPythonWindow.html Thu Apr 10 18:39:29 2025 +0200 @@ -49,6 +49,10 @@ <dd> emitted after the preferences were changed </dd> +<dt>shutdown()</dt> +<dd> +emitted to indicate a shutdown of the application +</dd> </dl> <h3>Derived from</h3> EricMainWindow
--- a/src/eric7/Documentation/Source/eric7.PipInterface.Pip.html Thu Apr 10 18:36:24 2025 +0200 +++ b/src/eric7/Documentation/Source/eric7.PipInterface.Pip.html Thu Apr 10 18:39:29 2025 +0200 @@ -79,6 +79,10 @@ <td>Private method to handle the process finished signal.</td> </tr> <tr> +<td><a href="#Pip.__shutdown">__shutdown</a></td> +<td>Private method to perform shutdown actions.</td> +</tr> +<tr> <td><a href="#Pip.cacheList">cacheList</a></td> <td>Public method to list files contained in the pip cache.</td> </tr> @@ -199,10 +203,6 @@ <td>Public method to show some information about the pip cache.</td> </tr> <tr> -<td><a href="#Pip.shutdown">shutdown</a></td> -<td>Public method to perform shutdown actions.</td> -</tr> -<tr> <td><a href="#Pip.uninstallPackages">uninstallPackages</a></td> <td>Public method to uninstall the given list of packages.</td> </tr> @@ -374,6 +374,13 @@ exit status of the process </dd> </dl> +<a NAME="Pip.__shutdown" ID="Pip.__shutdown"></a> +<h4>Pip.__shutdown</h4> +<b>__shutdown</b>(<i></i>) +<p> + Private method to perform shutdown actions. +</p> + <a NAME="Pip.cacheList" ID="Pip.cacheList"></a> <h4>Pip.cacheList</h4> <b>cacheList</b>(<i>venvName</i>) @@ -1126,13 +1133,6 @@ name of the virtual environment to be used </dd> </dl> -<a NAME="Pip.shutdown" ID="Pip.shutdown"></a> -<h4>Pip.shutdown</h4> -<b>shutdown</b>(<i></i>) -<p> - Public method to perform shutdown actions. -</p> - <a NAME="Pip.uninstallPackages" ID="Pip.uninstallPackages"></a> <h4>Pip.uninstallPackages</h4> <b>uninstallPackages</b>(<i>packages, venvName</i>)
--- a/src/eric7/Documentation/Source/eric7.PipInterface.PipPackagesWindow.html Thu Apr 10 18:36:24 2025 +0200 +++ b/src/eric7/Documentation/Source/eric7.PipInterface.PipPackagesWindow.html Thu Apr 10 18:39:29 2025 +0200 @@ -37,6 +37,14 @@ Main window class for the standalone pip packages manager. </p> +<h3>Signals</h3> +<dl> + +<dt>shutdown()</dt> +<dd> +emitted to indicate a shutdown of the application +</dd> +</dl> <h3>Derived from</h3> EricMainWindow <h3>Class Attributes</h3>
--- a/src/eric7/Documentation/Source/eric7.PluginManager.PluginManager.html Thu Apr 10 18:36:24 2025 +0200 +++ b/src/eric7/Documentation/Source/eric7.PluginManager.PluginManager.html Thu Apr 10 18:39:29 2025 +0200 @@ -130,6 +130,10 @@ <td>Private method to check, if there are plugins available.</td> </tr> <tr> +<td><a href="#PluginManager.__shutdown">__shutdown</a></td> +<td>Private method called to perform actions upon shutdown of the IDE.</td> +</tr> +<tr> <td><a href="#PluginManager.__sslErrors">__sslErrors</a></td> <td>Private slot to handle SSL errors.</td> </tr> @@ -162,10 +166,6 @@ <td>Public method to deactivated all activated VCS plugins.</td> </tr> <tr> -<td><a href="#PluginManager.doShutdown">doShutdown</a></td> -<td>Public method called to perform actions upon shutdown of the IDE.</td> -</tr> -<tr> <td><a href="#PluginManager.downLoadRepositoryFile">downLoadRepositoryFile</a></td> <td>Public method to download the plugin repository file.</td> </tr> @@ -498,6 +498,13 @@ bool </dd> </dl> +<a NAME="PluginManager.__shutdown" ID="PluginManager.__shutdown"></a> +<h4>PluginManager.__shutdown</h4> +<b>__shutdown</b>(<i></i>) +<p> + Private method called to perform actions upon shutdown of the IDE. +</p> + <a NAME="PluginManager.__sslErrors" ID="PluginManager.__sslErrors"></a> <h4>PluginManager.__sslErrors</h4> <b>__sslErrors</b>(<i>reply, errors</i>) @@ -661,13 +668,6 @@ Public method to deactivated all activated VCS plugins. </p> -<a NAME="PluginManager.doShutdown" ID="PluginManager.doShutdown"></a> -<h4>PluginManager.doShutdown</h4> -<b>doShutdown</b>(<i></i>) -<p> - Public method called to perform actions upon shutdown of the IDE. -</p> - <a NAME="PluginManager.downLoadRepositoryFile" ID="PluginManager.downLoadRepositoryFile"></a> <h4>PluginManager.downLoadRepositoryFile</h4> <b>downLoadRepositoryFile</b>(<i>url=None</i>)
--- a/src/eric7/Documentation/Source/eric7.Templates.TemplateViewer.html Thu Apr 10 18:36:24 2025 +0200 +++ b/src/eric7/Documentation/Source/eric7.Templates.TemplateViewer.html Thu Apr 10 18:39:29 2025 +0200 @@ -755,6 +755,10 @@ <td>Private method to resort the tree.</td> </tr> <tr> +<td><a href="#TemplateViewer.__save">__save</a></td> +<td>Private slot to save the templates.</td> +</tr> +<tr> <td><a href="#TemplateViewer.__showContextMenu">__showContextMenu</a></td> <td>Private slot to show the context menu of the list.</td> </tr> @@ -823,10 +827,6 @@ <td>Public method to remove a group.</td> </tr> <tr> -<td><a href="#TemplateViewer.save">save</a></td> -<td>Public slot to save the templates.</td> -</tr> -<tr> <td><a href="#TemplateViewer.writeTemplates">writeTemplates</a></td> <td>Public method to write the templates data to a JSON file (.ecj).</td> </tr> @@ -840,16 +840,16 @@ <a NAME="TemplateViewer.__init__" ID="TemplateViewer.__init__"></a> <h4>TemplateViewer (Constructor)</h4> -<b>TemplateViewer</b>(<i>parent, viewmanager</i>) +<b>TemplateViewer</b>(<i>ui, viewmanager</i>) <p> Constructor </p> <dl> -<dt><i>parent</i> (QWidget)</dt> +<dt><i>ui</i> (QWidget)</dt> <dd> -the parent +reference to the main ui object </dd> <dt><i>viewmanager</i> (ViewManager)</dt> <dd> @@ -938,6 +938,13 @@ Private method to resort the tree. </p> +<a NAME="TemplateViewer.__save" ID="TemplateViewer.__save"></a> +<h4>TemplateViewer.__save</h4> +<b>__save</b>(<i></i>) +<p> + Private slot to save the templates. +</p> + <a NAME="TemplateViewer.__showContextMenu" ID="TemplateViewer.__showContextMenu"></a> <h4>TemplateViewer.__showContextMenu</h4> <b>__showContextMenu</b>(<i>coord</i>) @@ -1279,13 +1286,6 @@ template group to be removed </dd> </dl> -<a NAME="TemplateViewer.save" ID="TemplateViewer.save"></a> -<h4>TemplateViewer.save</h4> -<b>save</b>(<i></i>) -<p> - Public slot to save the templates. -</p> - <a NAME="TemplateViewer.writeTemplates" ID="TemplateViewer.writeTemplates"></a> <h4>TemplateViewer.writeTemplates</h4> <b>writeTemplates</b>(<i>filename=None</i>)
--- a/src/eric7/Documentation/Source/eric7.UI.CodeDocumentationViewer.html Thu Apr 10 18:36:24 2025 +0200 +++ b/src/eric7/Documentation/Source/eric7.UI.CodeDocumentationViewer.html Thu Apr 10 18:39:29 2025 +0200 @@ -87,6 +87,10 @@ <td>Private method to show a message giving the reason for being disabled.</td> </tr> <tr> +<td><a href="#CodeDocumentationViewer.__shutdown">__shutdown</a></td> +<td>Private method to perform shutdown actions.</td> +</tr> +<tr> <td><a href="#CodeDocumentationViewer.__unregisterTimerTimeout">__unregisterTimerTimeout</a></td> <td>Private slot handling the timeout signal of the unregister timer.</td> </tr> @@ -127,10 +131,6 @@ <td>Public method to request code documentation data from a provider.</td> </tr> <tr> -<td><a href="#CodeDocumentationViewer.shutdown">shutdown</a></td> -<td>Public method to perform shutdown actions.</td> -</tr> -<tr> <td><a href="#CodeDocumentationViewer.unregisterProvider">unregisterProvider</a></td> <td>Public method register a source docu provider.</td> </tr> @@ -184,6 +184,13 @@ Private method to show a message giving the reason for being disabled. </p> +<a NAME="CodeDocumentationViewer.__shutdown" ID="CodeDocumentationViewer.__shutdown"></a> +<h4>CodeDocumentationViewer.__shutdown</h4> +<b>__shutdown</b>(<i></i>) +<p> + Private method to perform shutdown actions. +</p> + <a NAME="CodeDocumentationViewer.__unregisterTimerTimeout" ID="CodeDocumentationViewer.__unregisterTimerTimeout"></a> <h4>CodeDocumentationViewer.__unregisterTimerTimeout</h4> <b>__unregisterTimerTimeout</b>(<i></i>) @@ -367,13 +374,6 @@ reference to the editor to request code docu for </dd> </dl> -<a NAME="CodeDocumentationViewer.shutdown" ID="CodeDocumentationViewer.shutdown"></a> -<h4>CodeDocumentationViewer.shutdown</h4> -<b>shutdown</b>(<i></i>) -<p> - Public method to perform shutdown actions. -</p> - <a NAME="CodeDocumentationViewer.unregisterProvider" ID="CodeDocumentationViewer.unregisterProvider"></a> <h4>CodeDocumentationViewer.unregisterProvider</h4> <b>unregisterProvider</b>(<i>providerName</i>)
--- a/src/eric7/Documentation/Source/eric7.UI.Previewer.html Thu Apr 10 18:36:24 2025 +0200 +++ b/src/eric7/Documentation/Source/eric7.UI.Previewer.html Thu Apr 10 18:39:29 2025 +0200 @@ -81,6 +81,10 @@ <td>Private slot to schedule the processing of the current editor's text.</td> </tr> <tr> +<td><a href="#Previewer.__shutdown">__shutdown</a></td> +<td>Private method to perform shutdown actions.</td> +</tr> +<tr> <td><a href="#Previewer.__splitterMoved">__splitterMoved</a></td> <td>Private slot to handle the movement of the embedding splitter's handle.</td> </tr> @@ -100,10 +104,6 @@ <td><a href="#Previewer.show">show</a></td> <td>Public method to show the preview widget.</td> </tr> -<tr> -<td><a href="#Previewer.shutdown">shutdown</a></td> -<td>Public method to perform shutdown actions.</td> -</tr> </table> <h3>Static Methods</h3> @@ -114,7 +114,7 @@ <a NAME="Previewer.__init__" ID="Previewer.__init__"></a> <h4>Previewer (Constructor)</h4> -<b>Previewer</b>(<i>viewmanager, parent=None</i>) +<b>Previewer</b>(<i>viewmanager, ui</i>) <p> Constructor </p> @@ -125,9 +125,9 @@ <dd> reference to the viewmanager object </dd> -<dt><i>parent</i> (QWidget)</dt> +<dt><i>ui</i> (QWidget)</dt> <dd> -reference to the parent widget +reference to the main ui widget </dd> </dl> <a NAME="Previewer.__editorChanged" ID="Previewer.__editorChanged"></a> @@ -220,6 +220,13 @@ Private slot to schedule the processing of the current editor's text. </p> +<a NAME="Previewer.__shutdown" ID="Previewer.__shutdown"></a> +<h4>Previewer.__shutdown</h4> +<b>__shutdown</b>(<i></i>) +<p> + Private method to perform shutdown actions. +</p> + <a NAME="Previewer.__splitterMoved" ID="Previewer.__splitterMoved"></a> <h4>Previewer.__splitterMoved</h4> <b>__splitterMoved</b>(<i></i>) @@ -262,13 +269,6 @@ Public method to show the preview widget. </p> -<a NAME="Previewer.shutdown" ID="Previewer.shutdown"></a> -<h4>Previewer.shutdown</h4> -<b>shutdown</b>(<i></i>) -<p> - Public method to perform shutdown actions. -</p> - <div align="right"><a href="#top">Up</a></div> <hr /> </body></html>
--- a/src/eric7/Documentation/Source/eric7.UI.PythonAstViewer.html Thu Apr 10 18:36:24 2025 +0200 +++ b/src/eric7/Documentation/Source/eric7.UI.PythonAstViewer.html Thu Apr 10 18:39:29 2025 +0200 @@ -137,6 +137,10 @@ <td>Private slot to select the item corresponding to an editor selection.</td> </tr> <tr> +<td><a href="#PythonAstViewer.__shutdown">__shutdown</a></td> +<td>Private method to perform shutdown actions.</td> +</tr> +<tr> <td><a href="#PythonAstViewer.hide">hide</a></td> <td>Public slot to hide the AST viewer.</td> </tr> @@ -152,10 +156,6 @@ <td><a href="#PythonAstViewer.show">show</a></td> <td>Public slot to show the AST viewer.</td> </tr> -<tr> -<td><a href="#PythonAstViewer.shutdown">shutdown</a></td> -<td>Public method to perform shutdown actions.</td> -</tr> </table> <h3>Static Methods</h3> @@ -166,7 +166,7 @@ <a NAME="PythonAstViewer.__init__" ID="PythonAstViewer.__init__"></a> <h4>PythonAstViewer (Constructor)</h4> -<b>PythonAstViewer</b>(<i>viewmanager, parent=None</i>) +<b>PythonAstViewer</b>(<i>viewmanager, ui</i>) <p> Constructor </p> @@ -177,9 +177,9 @@ <dd> reference to the viewmanager object </dd> -<dt><i>parent</i> (QWidget)</dt> +<dt><i>ui</i> (QWidget)</dt> <dd> -reference to the parent widget +reference to the main ui widget </dd> </dl> <a NAME="PythonAstViewer.__astItemClicked" ID="PythonAstViewer.__astItemClicked"></a> @@ -515,6 +515,13 @@ Private slot to select the item corresponding to an editor selection. </p> +<a NAME="PythonAstViewer.__shutdown" ID="PythonAstViewer.__shutdown"></a> +<h4>PythonAstViewer.__shutdown</h4> +<b>__shutdown</b>(<i></i>) +<p> + Private method to perform shutdown actions. +</p> + <a NAME="PythonAstViewer.hide" ID="PythonAstViewer.hide"></a> <h4>PythonAstViewer.hide</h4> <b>hide</b>(<i></i>) @@ -550,13 +557,6 @@ Public slot to show the AST viewer. </p> -<a NAME="PythonAstViewer.shutdown" ID="PythonAstViewer.shutdown"></a> -<h4>PythonAstViewer.shutdown</h4> -<b>shutdown</b>(<i></i>) -<p> - Public method to perform shutdown actions. -</p> - <div align="right"><a href="#top">Up</a></div> <hr /> </body></html>
--- a/src/eric7/Documentation/Source/eric7.UI.UserInterface.html Thu Apr 10 18:36:24 2025 +0200 +++ b/src/eric7/Documentation/Source/eric7.UI.UserInterface.html Thu Apr 10 18:39:29 2025 +0200 @@ -75,6 +75,10 @@ emitted when a menu is about to be shown. The name of the menu and a reference to the menu are given. </dd> +<dt>shutdown()</dt> +<dd> +emitted to indicate a shutdown of the application +</dd> </dl> <h3>Derived from</h3> EricMainWindow
--- a/src/eric7/Documentation/Source/eric7.Utilities.BackgroundService.html Thu Apr 10 18:36:24 2025 +0200 +++ b/src/eric7/Documentation/Source/eric7.Utilities.BackgroundService.html Thu Apr 10 18:39:29 2025 +0200 @@ -87,6 +87,10 @@ <td>Private method to send a job request to one of the clients.</td> </tr> <tr> +<td><a href="#BackgroundService.__shutdown">__shutdown</a></td> +<td>Private method to cleanup the connections and processes when eric is shutting down.</td> +</tr> +<tr> <td><a href="#BackgroundService.__startExternalClient">__startExternalClient</a></td> <td>Private method to start the background client as external process.</td> </tr> @@ -122,10 +126,6 @@ <td><a href="#BackgroundService.serviceDisconnect">serviceDisconnect</a></td> <td>Public method to remove the service from the service list.</td> </tr> -<tr> -<td><a href="#BackgroundService.shutdown">shutdown</a></td> -<td>Public method to cleanup the connections and processes when eric is shutting down.</td> -</tr> </table> <h3>Static Methods</h3> @@ -223,6 +223,14 @@ function argument(s) </dd> </dl> +<a NAME="BackgroundService.__shutdown" ID="BackgroundService.__shutdown"></a> +<h4>BackgroundService.__shutdown</h4> +<b>__shutdown</b>(<i></i>) +<p> + Private method to cleanup the connections and processes when eric is + shutting down. +</p> + <a NAME="BackgroundService.__startExternalClient" ID="BackgroundService.__startExternalClient"></a> <h4>BackgroundService.__startExternalClient</h4> <b>__startExternalClient</b>(<i>interpreter, port</i>) @@ -404,14 +412,6 @@ language of the service </dd> </dl> -<a NAME="BackgroundService.shutdown" ID="BackgroundService.shutdown"></a> -<h4>BackgroundService.shutdown</h4> -<b>shutdown</b>(<i></i>) -<p> - Public method to cleanup the connections and processes when eric is - shutting down. -</p> - <div align="right"><a href="#top">Up</a></div> <hr /> </body></html>
--- a/src/eric7/HelpViewer/HelpViewerWidget.py Thu Apr 10 18:36:24 2025 +0200 +++ b/src/eric7/HelpViewer/HelpViewerWidget.py Thu Apr 10 18:39:29 2025 +0200 @@ -348,6 +348,8 @@ if Preferences.getHelp("QtHelpSearchNewOnStart"): QTimer.singleShot(50, self.__lookForNewDocumentation) + self.__ui.shutdown.connect(self.__shutdown) + def __addNavigationButton(self, iconName, toolTip): """ Private method to create and add a navigation button. @@ -493,9 +495,9 @@ if searchWord: self.searchQtHelp(searchWord) - def shutdown(self): + def __shutdown(self): """ - Public method to perform shut down actions. + Private method to perform shut down actions. """ self.__helpSearchEngine.cancelIndexing() self.__helpSearchEngine.cancelSearching()
--- a/src/eric7/MicroPython/MicroPythonWidget.py Thu Apr 10 18:36:24 2025 +0200 +++ b/src/eric7/MicroPython/MicroPythonWidget.py Thu Apr 10 18:39:29 2025 +0200 @@ -173,6 +173,7 @@ self.repopulateButton.clicked.connect(self.__populateDeviceTypeComboBox) self.webreplConfigButton.clicked.connect(self.__configureWebreplUrls) self.__ui.preferencesChanged.connect(self.__handlePreferencesChanged) + self.__ui.shutdown.connect(self.__shutdown) self.__handlePreferencesChanged() @@ -961,9 +962,9 @@ """ return self.__fileManager - def shutdown(self): + def __shutdown(self): """ - Public method to perform some shutdown actions. + Private method to perform some shutdown actions. """ if self.__linkConnected: with EricOverrideCursor():
--- a/src/eric7/MicroPython/MicroPythonWindow.py Thu Apr 10 18:36:24 2025 +0200 +++ b/src/eric7/MicroPython/MicroPythonWindow.py Thu Apr 10 18:39:29 2025 +0200 @@ -47,10 +47,12 @@ @signal editorCountChanged(count) emitted whenever the count of open editors changed @signal preferencesChanged() emitted after the preferences were changed + @signal shutdown() emitted to indicate a shutdown of the application """ editorCountChanged = pyqtSignal(int) preferencesChanged = pyqtSignal() + shutdown = pyqtSignal() def __init__(self, parent=None): """ @@ -141,6 +143,8 @@ with contextlib.suppress(RuntimeError): editor.close() + self.shutdown.emit() + evt.accept() def __sslErrors(self, reply, errors):
--- a/src/eric7/PipInterface/Pip.py Thu Apr 10 18:36:24 2025 +0200 +++ b/src/eric7/PipInterface/Pip.py Thu Apr 10 18:39:29 2025 +0200 @@ -95,6 +95,8 @@ self.__vulnerabilityChecker = PipVulnerabilityChecker(self, self) + self.__ui.shutdown.connect(self.__shutdown) + def getNetworkAccessManager(self): """ Public method to get a reference to the network access manager object. @@ -113,9 +115,9 @@ """ return self.__vulnerabilityChecker - def shutdown(self): + def __shutdown(self): """ - Public method to perform shutdown actions. + Private method to perform shutdown actions. """ self.__shuttingDown = True if self.__outdatedProc is not None:
--- a/src/eric7/PipInterface/PipPackagesWindow.py Thu Apr 10 18:36:24 2025 +0200 +++ b/src/eric7/PipInterface/PipPackagesWindow.py Thu Apr 10 18:39:29 2025 +0200 @@ -7,7 +7,7 @@ Module implementing the standalone pip packages management window. """ -from PyQt6.QtCore import Qt +from PyQt6.QtCore import Qt, pyqtSignal from PyQt6.QtWidgets import QDialogButtonBox, QVBoxLayout, QWidget from eric7.EricWidgets.EricApplication import ericApp @@ -20,8 +20,12 @@ class PipPackagesWindow(EricMainWindow): """ Main window class for the standalone pip packages manager. + + @signal shutdown() emitted to indicate a shutdown of the application """ + shutdown = pyqtSignal() + def __init__(self, parent=None): """ Constructor @@ -65,4 +69,4 @@ @param evt reference to the close event object @type QCloseEvent """ - self.__pip.shutdown() + self.shutdown.emit()
--- a/src/eric7/PluginManager/PluginManager.py Thu Apr 10 18:36:24 2025 +0200 +++ b/src/eric7/PluginManager/PluginManager.py Thu Apr 10 18:39:29 2025 +0200 @@ -179,6 +179,8 @@ self.__networkManager.sslErrors.connect(self.__sslErrors) self.__replies = [] + self.__ui.shutdown.connect(self.__shutdown) + def finalizeSetup(self): """ Public method to finalize the setup of the plugin manager. @@ -967,9 +969,9 @@ return details - def doShutdown(self): + def __shutdown(self): """ - Public method called to perform actions upon shutdown of the IDE. + Private method called to perform actions upon shutdown of the IDE. """ names = [] for name in self.__inactiveModules:
--- a/src/eric7/Templates/TemplateViewer.py Thu Apr 10 18:36:24 2025 +0200 +++ b/src/eric7/Templates/TemplateViewer.py Thu Apr 10 18:39:29 2025 +0200 @@ -413,16 +413,16 @@ Class implementing the template viewer. """ - def __init__(self, parent, viewmanager): + def __init__(self, ui, viewmanager): """ Constructor - @param parent the parent + @param ui reference to the main ui object @type QWidget @param viewmanager reference to the viewmanager object @type ViewManager """ - super().__init__(parent) + super().__init__(None) self.viewmanager = viewmanager self.groups = {} @@ -443,7 +443,7 @@ self.__menu.addAction(self.tr("Edit..."), self.__edit) self.__menu.addAction(self.tr("Remove"), self.__remove) self.__menu.addSeparator() - self.saveAct = self.__menu.addAction(self.tr("Save"), self.save) + self.saveAct = self.__menu.addAction(self.tr("Save"), self.__save) self.__menu.addAction(self.tr("Import..."), self.__import) self.__menu.addAction(self.tr("Export..."), self.__export) self.__menu.addAction(self.tr("Reload"), self.__reload) @@ -455,7 +455,7 @@ self.__backMenu = QMenu(self) self.__backMenu.addAction(self.tr("Add group..."), self.__addGroup) self.__backMenu.addSeparator() - self.bmSaveAct = self.__backMenu.addAction(self.tr("Save"), self.save) + self.bmSaveAct = self.__backMenu.addAction(self.tr("Save"), self.__save) self.__backMenu.addAction(self.tr("Import..."), self.__import) self.bmExportAct = self.__backMenu.addAction( self.tr("Export..."), self.__export @@ -477,6 +477,8 @@ self.setWindowIcon(EricPixmapCache.getIcon("eric")) + ui.shutdown.connect(self.__save) + def __resort(self): """ Private method to resort the tree. @@ -586,9 +588,9 @@ self.removeEntry(itm) self.__dirty = True - def save(self): + def __save(self): """ - Public slot to save the templates. + Private slot to save the templates. """ if self.__dirty: ok = self.writeTemplates()
--- a/src/eric7/UI/CodeDocumentationViewer.py Thu Apr 10 18:36:24 2025 +0200 +++ b/src/eric7/UI/CodeDocumentationViewer.py Thu Apr 10 18:39:29 2025 +0200 @@ -201,6 +201,8 @@ self.__unregisterTimer.timeout.connect(self.__unregisterTimerTimeout) self.__mostRecentlyUnregisteredProvider = None + self.__ui.shutdown.connect(self.__shutdown) + def __setupUi(self): """ Private method to generate the UI layout. @@ -470,9 +472,9 @@ Preferences.setDocuViewer("Provider", provider) self.__selectedProvider = provider - def shutdown(self): + def __shutdown(self): """ - Public method to perform shutdown actions. + Private method to perform shutdown actions. """ self.__shuttingDown = True Preferences.setDocuViewer("Provider", self.__selectedProvider)
--- a/src/eric7/UI/Previewer.py Thu Apr 10 18:36:24 2025 +0200 +++ b/src/eric7/UI/Previewer.py Thu Apr 10 18:39:29 2025 +0200 @@ -21,16 +21,16 @@ specialized previewers. """ - def __init__(self, viewmanager, parent=None): + def __init__(self, viewmanager, ui): """ Constructor @param viewmanager reference to the viewmanager object @type ViewManager - @param parent reference to the parent widget + @param ui reference to the main ui widget @type QWidget """ - super().__init__(parent) + super().__init__(None) self.__vm = viewmanager @@ -52,6 +52,8 @@ self.__vm.previewStateChanged.connect(self.__previewStateChanged) + ui.shutdown.connect(self.__shutdown) + self.hide() def setSplitter(self, splitter): @@ -88,9 +90,9 @@ super().hide() self.__typingTimer.stop() - def shutdown(self): + def __shutdown(self): """ - Public method to perform shutdown actions. + Private method to perform shutdown actions. """ self.__typingTimer.stop() self.__htmlPreviewer and self.__htmlPreviewer.shutdown()
--- a/src/eric7/UI/PythonAstViewer.py Thu Apr 10 18:36:24 2025 +0200 +++ b/src/eric7/UI/PythonAstViewer.py Thu Apr 10 18:39:29 2025 +0200 @@ -36,16 +36,16 @@ EndLineRole = Qt.ItemDataRole.UserRole + 2 EndIndexRole = Qt.ItemDataRole.UserRole + 3 - def __init__(self, viewmanager, parent=None): + def __init__(self, viewmanager, ui): """ Constructor @param viewmanager reference to the viewmanager object @type ViewManager - @param parent reference to the parent widget + @param ui reference to the main ui widget @type QWidget """ - super().__init__(parent) + super().__init__(None) self.__layout = QVBoxLayout(self) self.setLayout(self.__layout) @@ -76,6 +76,8 @@ self.__vm.astViewerStateChanged.connect(self.__astViewerStateChanged) + ui.shutdown.connect(self.__shutdown) + self.hide() def __editorChanged(self, editor): @@ -168,9 +170,9 @@ self.__vm.editorLanguageChanged.disconnect(self.__editorLanguageChanged) self.__vmConnected = False - def shutdown(self): + def __shutdown(self): """ - Public method to perform shutdown actions. + Private method to perform shutdown actions. """ self.__editor = None
--- a/src/eric7/UI/UserInterface.py Thu Apr 10 18:36:24 2025 +0200 +++ b/src/eric7/UI/UserInterface.py Thu Apr 10 18:39:29 2025 +0200 @@ -144,6 +144,7 @@ password has been changed with the old and the new password @signal onlineStateChanged(online) emitted to indicate a change of the network state + @signal shutdown() emitted to indicate a shutdown of the application """ appendStderr = pyqtSignal(str) @@ -153,6 +154,7 @@ showMenu = pyqtSignal(str, QMenu) mainPasswordChanged = pyqtSignal(str, str) onlineStateChanged = pyqtSignal(bool) + shutdown = pyqtSignal() maxFilePathLen = 100 maxMenuFilePathLen = 75 @@ -664,7 +666,7 @@ self.currentProfile = None - self.shutdownCalled = False + self.__shutdownCalled = False self.inCloseEvent = False # now fire up the single application server @@ -809,11 +811,11 @@ # Create previewer logging.getLogger(__name__).debug("Creating Previewer...") - self.__previewer = Previewer(self.viewmanager) + self.__previewer = Previewer(viewmanager=self.viewmanager, ui=self) # Create AST viewer logging.getLogger(__name__).debug("Creating Python AST Viewer") - self.__astViewer = PythonAstViewer(self.viewmanager) + self.__astViewer = PythonAstViewer(viewmanager=self.viewmanager, ui=self) # Create DIS viewer logging.getLogger(__name__).debug("Creating Python Disassembly Viewer") @@ -851,7 +853,7 @@ logging.getLogger(__name__).debug("Creating Template Viewer...") from eric7.Templates.TemplateViewer import TemplateViewer # noqa: I-101 - self.templateViewer = TemplateViewer(None, self.viewmanager) + self.templateViewer = TemplateViewer(self, self.viewmanager) else: logging.getLogger(__name__).debug("Template Viewer disabled") self.templateViewer = None @@ -8433,7 +8435,7 @@ @return flag indicating success @rtype bool """ - if self.shutdownCalled: + if self.__shutdownCalled: return True if not self.viewmanager.checkAllDirty(): @@ -8447,8 +8449,6 @@ sessionCreated = self.__writeSession() - self.__astViewer.hide() - self.shell.closeShell() if not self.project.closeProject(shutdown=True): @@ -8467,37 +8467,12 @@ if sessionCreated and not self.__disableCrashSession: self.__deleteCrashSession() - if self.codeDocumentationViewer is not None: - self.codeDocumentationViewer.shutdown() - - self.__previewer.shutdown() - - self.__astViewer.shutdown() - self.__writeTasks() - if self.templateViewer is not None: - self.templateViewer.save() - if not self.debuggerUI.shutdownServer(): return False - self.debuggerUI.shutdown() - - self.backgroundService.shutdown() - - if self.cooperation is not None: - self.cooperation.shutdown() - - if self.__helpViewerWidget is not None: - self.__helpViewerWidget.shutdown() - - if self.microPythonWidget is not None: - self.microPythonWidget.shutdown() - - self.pipInterface.shutdown() - - self.pluginManager.doShutdown() - + + # stop the single application server if self.SAServer is not None: self.SAServer.shutdown() self.SAServer = None @@ -8516,7 +8491,10 @@ self.__saveCurrentViewProfile(True) Preferences.saveToolGroups(self.toolGroups, self.currentToolGroup) Preferences.syncPreferences() - self.shutdownCalled = True + + # emit the shutdown() signal to allow connected parts to perform their + # individual shutdown actions + self.shutdown.emit() # shut down the global file system watcher EricFileSystemWatcher.instance().shutdown() @@ -8525,6 +8503,8 @@ sys.stdout = sys.__stdout__ sys.stderr = sys.__stderr__ + self.__shutdownCalled = True + return True def isOnline(self):
--- a/src/eric7/Utilities/BackgroundService.py Thu Apr 10 18:36:24 2025 +0200 +++ b/src/eric7/Utilities/BackgroundService.py Thu Apr 10 18:39:29 2025 +0200 @@ -68,6 +68,7 @@ self.listen(QHostAddress(self.__hostAddress)) self.newConnection.connect(self.on_newConnection) + parent.shutdown.connect(self.__shutdown) ## Note: Need the address and port if started external in debugger: port = self.serverPort() @@ -531,9 +532,9 @@ if res: self.restartService(lang) - def shutdown(self): + def __shutdown(self): """ - Public method to cleanup the connections and processes when eric is + Private method to cleanup the connections and processes when eric is shutting down. """ self.close()