diff --git a/cura/CuraApplication.py b/cura/CuraApplication.py index ba42dd2aec..f4290af24b 100755 --- a/cura/CuraApplication.py +++ b/cura/CuraApplication.py @@ -1362,3 +1362,7 @@ class CuraApplication(QtApplication): node = node.getParent() Selection.add(node) + + @pyqtSlot(result=str) + def getCuraVersion(self): + return CuraVersion diff --git a/cura/Settings/MachineManager.py b/cura/Settings/MachineManager.py index 96ccc89ccf..dc05e4fa4d 100755 --- a/cura/Settings/MachineManager.py +++ b/cura/Settings/MachineManager.py @@ -474,6 +474,12 @@ class MachineManager(QObject): def activeMachine(self) -> "GlobalStack": return self._global_container_stack + @pyqtProperty(str, notify = globalContainerChanged) + def activeMachineDefinitionId(self) -> str: + if self._global_container_stack and self._global_container_stack.definition: + return self._global_container_stack.definition.getId() + return "" + @pyqtProperty(str, notify = activeStackChanged) def activeStackId(self) -> str: if self._active_container_stack: diff --git a/resources/qml/SidebarHeader.qml b/resources/qml/SidebarHeader.qml index a388c68323..f99f6875ae 100644 --- a/resources/qml/SidebarHeader.qml +++ b/resources/qml/SidebarHeader.qml @@ -220,7 +220,10 @@ Column onClicked: { // open the material URL with web browser - var url = "https://ultimaker.com/en/resources/23121-materials"; + var version = CuraApplication.getCuraVersion(); + var machineName = Cura.MachineManager.activeMachineDefinitionId; + + var url = "https://ultimaker.com/materialcompatibility/" + version + "/" + machineName; Qt.openUrlExternally(url); }