diff --git a/plugins/3MFReader/ThreeMFWorkspaceReader.py b/plugins/3MFReader/ThreeMFWorkspaceReader.py index f2cb4c72a7..998fee5ccb 100644 --- a/plugins/3MFReader/ThreeMFWorkspaceReader.py +++ b/plugins/3MFReader/ThreeMFWorkspaceReader.py @@ -78,7 +78,10 @@ class ThreeMFWorkspaceReader(WorkspaceReader): # Check if quality changes already exists. quality_changes = self._container_registry.findInstanceContainers(id = container_id) if quality_changes: - quality_changes_conflict = True + # Check if there really is a conflict by comparing the values + if quality_changes[0] != instance_container: + quality_changes_conflict = True + break if machine_conflict or quality_changes_conflict: # There is a conflict; User should choose to either update the existing data, add everything as new data or abort diff --git a/plugins/3MFReader/WorkspaceDialog.py b/plugins/3MFReader/WorkspaceDialog.py index c90561e52d..bbac4fb557 100644 --- a/plugins/3MFReader/WorkspaceDialog.py +++ b/plugins/3MFReader/WorkspaceDialog.py @@ -43,9 +43,11 @@ class WorkspaceDialog(QObject): def setMachineConflict(self, machine_conflict): self._has_machine_conflict = machine_conflict + self.machineConflictChanged.emit() def setQualityChangesConflict(self, quality_changes_conflict): self._has_quality_changes_conflict = quality_changes_conflict + self.qualityChangesConflictChanged.emit() def getResult(self): return self._result