diff --git a/CHANGELOG.md b/CHANGELOG.md index 11bb5d38..6531b424 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -21,6 +21,7 @@ CHANGELOG for FlatCAM beta - fixed issues with detecting older Preferences files - fixed some issues in Excellon Editor due of recent changes - moved the Gerber colors fill in the AppObject.on_object_created() slot and fixed some minor issues here +- made sure there are no issues when plotting the Excellon object in one thread and trying to build the UI in another by using a signal 20.07.2020 diff --git a/appObjects/FlatCAMExcellon.py b/appObjects/FlatCAMExcellon.py index 4bbee9e6..dce52666 100644 --- a/appObjects/FlatCAMExcellon.py +++ b/appObjects/FlatCAMExcellon.py @@ -38,6 +38,7 @@ class ExcellonObject(FlatCAMObj, Excellon): ui_type = ExcellonObjectUI optionChanged = QtCore.pyqtSignal(str) + multicolored_build_sig = QtCore.pyqtSignal() def __init__(self, name): self.decimals = self.app.decimals @@ -185,6 +186,8 @@ class ExcellonObject(FlatCAMObj, Excellon): self.ui.tools_table.horizontalHeader().sectionClicked.connect(self.on_toggle_rows) self.ui.table_visibility_cb.stateChanged.connect(self.on_table_visibility_toggle) + self.multicolored_build_sig.connect(self.on_multicolored_build) + self.units_found = self.app.defaults['units'] def build_ui(self): @@ -1194,7 +1197,10 @@ class ExcellonObject(FlatCAMObj, Excellon): self.shapes.clear(update=True) if multicolored: - self.build_ui() + self.multicolored_build_sig.emit() + + def on_multicolored_build(self): + self.build_ui() @staticmethod def merge(exc_list, exc_final, decimals=None, fuse_tools=True):