From 189d00c3ed9a6413bb6b35777fa9cb9a4de67c3b Mon Sep 17 00:00:00 2001 From: Kostas Karmas Date: Tue, 30 Mar 2021 08:51:58 +0200 Subject: [PATCH] Fix toolbox not initializing due to enabledChanged signal The Connections in qml is a QObject and it has an enabledChanged signal by default. Therefore, we cannot really use the Connections to connect to the enabledChanged signal of e.g. a python class, because qml complains that there is already a function named enabledChanged() in the Connections. To circumvent that, we can simply rename the enabledChanged() signal of the Toolbox to toolboxEnabledChanged(). --- .../resources/qml/components/ToolboxInstalledTile.qml | 2 +- plugins/Toolbox/src/Toolbox.py | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/plugins/Toolbox/resources/qml/components/ToolboxInstalledTile.qml b/plugins/Toolbox/resources/qml/components/ToolboxInstalledTile.qml index c499bf87db..e5c94fc996 100644 --- a/plugins/Toolbox/resources/qml/components/ToolboxInstalledTile.qml +++ b/plugins/Toolbox/resources/qml/components/ToolboxInstalledTile.qml @@ -117,7 +117,7 @@ Item Connections { target: toolbox - function onEnabledChanged() { isEnabled = toolbox.isEnabled(model.id) } + function onToolboxEnabledChanged() { isEnabled = toolbox.isEnabled(model.id) } } } } diff --git a/plugins/Toolbox/src/Toolbox.py b/plugins/Toolbox/src/Toolbox.py index 60c8f9107e..b6391be7d7 100644 --- a/plugins/Toolbox/src/Toolbox.py +++ b/plugins/Toolbox/src/Toolbox.py @@ -122,7 +122,7 @@ class Toolbox(QObject, Extension): onIsDownloadingChanged = pyqtSignal() restartRequiredChanged = pyqtSignal() installChanged = pyqtSignal() - enabledChanged = pyqtSignal() + toolboxEnabledChanged = pyqtSignal() # UI changes viewChanged = pyqtSignal() @@ -208,7 +208,7 @@ class Toolbox(QObject, Extension): self._dialog.show() # Apply enabled/disabled state to installed plugins - self.enabledChanged.emit() + self.toolboxEnabledChanged.emit() def _createDialog(self, qml_name: str) -> Optional[QObject]: Logger.log("d", "Marketplace: Creating dialog [%s].", qml_name) @@ -442,7 +442,7 @@ class Toolbox(QObject, Extension): @pyqtSlot(str) def enable(self, plugin_id: str) -> None: self._plugin_registry.enablePlugin(plugin_id) - self.enabledChanged.emit() + self.toolboxEnabledChanged.emit() Logger.log("i", "%s was set as 'active'.", plugin_id) self._restart_required = True self.restartRequiredChanged.emit() @@ -450,7 +450,7 @@ class Toolbox(QObject, Extension): @pyqtSlot(str) def disable(self, plugin_id: str) -> None: self._plugin_registry.disablePlugin(plugin_id) - self.enabledChanged.emit() + self.toolboxEnabledChanged.emit() Logger.log("i", "%s was set as 'deactive'.", plugin_id) self._restart_required = True self.restartRequiredChanged.emit()