diff --git a/cura/Machines/Models/MachineListModel.py b/cura/Machines/Models/MachineListModel.py index 8750da6305..919d593200 100644 --- a/cura/Machines/Models/MachineListModel.py +++ b/cura/Machines/Models/MachineListModel.py @@ -89,15 +89,7 @@ class MachineListModel(ListModel): machines_manager = CuraApplication.getInstance().getMachineManager() online_machine_stacks = machines_manager.getMachinesWithDefinition(definition_id, online_only = True) - def online_machines_has_connection_filter(machine_stack): - # This is required because machines loaded from projects have the is_online="True" but no connection type. - # We want to display them the same way as unconnected printers in this case. - has_connection = False - for connection_type in [ConnectionType.NetworkConnection.value, ConnectionType.CloudConnection.value]: - has_connection |= connection_type in machine_stack.configuredConnectionTypes - return has_connection - - online_machine_stacks = list(filter(online_machines_has_connection_filter, online_machine_stacks)) + online_machine_stacks = list(filter(lambda machine: machine.hasNetworkedConnection(), online_machine_stacks)) other_machine_stacks.remove(abstract_machine) if abstract_machine in online_machine_stacks: diff --git a/cura/Settings/GlobalStack.py b/cura/Settings/GlobalStack.py index b94ca45763..041bd19d3a 100755 --- a/cura/Settings/GlobalStack.py +++ b/cura/Settings/GlobalStack.py @@ -347,6 +347,12 @@ class GlobalStack(CuraContainerStack): nameChanged = pyqtSignal() name = pyqtProperty(str, fget=getName, fset=setName, notify=nameChanged) + def hasNetworkedConnection(self) -> bool: + has_connection = False + for connection_type in [ConnectionType.NetworkConnection.value, ConnectionType.CloudConnection.value]: + has_connection |= connection_type in self.configuredConnectionTypes + return has_connection + ## private: global_stack_mime = MimeType( name = "application/x-cura-globalstack",