From 8aaeee23fd4eda645138107014b5ba93ef9688de Mon Sep 17 00:00:00 2001 From: mquezada Date: Wed, 16 May 2018 16:05:23 -0400 Subject: [PATCH 1/7] Fix model reference for test. --- ObjectCollection.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ObjectCollection.py b/ObjectCollection.py index 82ccef5b..a28e7afc 100644 --- a/ObjectCollection.py +++ b/ObjectCollection.py @@ -289,7 +289,7 @@ class ObjectCollection(): :param name: Name of the FlatCAM Object :return: None """ - iobj = self.createIndex(self.get_names().index(name), 0) # Column 0 + iobj = self.model.createIndex(self.get_names().index(name), 0) # Column 0 self.view.selectionModel().select(iobj, QtGui.QItemSelectionModel.Select) def set_inactive(self, name): @@ -300,7 +300,7 @@ class ObjectCollection(): :param name: Name of the FlatCAM Object :return: None """ - iobj = self.createIndex(self.get_names().index(name), 0) # Column 0 + iobj = self.model.createIndex(self.get_names().index(name), 0) # Column 0 self.view.selectionModel().select(iobj, QtGui.QItemSelectionModel.Deselect) def set_all_inactive(self): From bdc2d8cc593381c3d5d46362558effc23c030f0f Mon Sep 17 00:00:00 2001 From: Jakob Staudt Date: Thu, 24 May 2018 11:52:02 +0200 Subject: [PATCH 2/7] Added postprocessing GUI and Code --- FlatCAMObj.py | 6 ++++-- ObjectUI.py | 13 ++++++++++++- 2 files changed, 16 insertions(+), 3 deletions(-) diff --git a/FlatCAMObj.py b/FlatCAMObj.py index f37ff471..89997ef8 100644 --- a/FlatCAMObj.py +++ b/FlatCAMObj.py @@ -1044,6 +1044,7 @@ class FlatCAMCNCjob(FlatCAMObj, CNCjob): "tooldia": self.ui.tooldia_entry, "append": self.ui.append_text, "prepend": self.ui.prepend_text, + "postprocess": self.ui.process_script, "dwell": self.ui.dwell_cb, "dwelltime": self.ui.dwelltime_entry }) @@ -1073,8 +1074,9 @@ class FlatCAMCNCjob(FlatCAMObj, CNCjob): preamble = str(self.ui.prepend_text.get_value()) postamble = str(self.ui.append_text.get_value()) + processor = str(self.ui.process_script.get_value()) - self.export_gcode(filename, preamble=preamble, postamble=postamble) + self.export_gcode(filename, preamble=preamble, postamble=postamble, processor=processor) def dwell_generator(self, lines): """ @@ -1110,7 +1112,7 @@ class FlatCAMCNCjob(FlatCAMObj, CNCjob): raise StopIteration - def export_gcode(self, filename, preamble='', postamble=''): + def export_gcode(self, filename, preamble='', postamble='', processor=''): lines = StringIO(self.gcode) diff --git a/ObjectUI.py b/ObjectUI.py index 1bf20bf7..1e80be65 100644 --- a/ObjectUI.py +++ b/ObjectUI.py @@ -196,6 +196,17 @@ class CNCObjectUI(ObjectUI): self.append_text = FCTextArea() self.custom_box.addWidget(self.append_text) + processorlabel = QtGui.QLabel('Postprocessing-Script:') + processorlabel.setToolTip( + "Enter a Postprocessing Script here.\n" + "It gets applied to the G-Code after it\n" + "is generated." + ) + self.custom_box.addWidget(processorlabel) + self.processing_script = FCTextArea() + self.custom_box.addWidget(self.processing_script) + + # Dwell grid1 = QtGui.QGridLayout() self.custom_box.addLayout(grid1) @@ -814,4 +825,4 @@ class GerberObjectUI(ObjectUI): # # # if __name__ == '__main__': -# main() \ No newline at end of file +# main() From 6877d0cd9b551bceb76f0cff24183be2e75765a4 Mon Sep 17 00:00:00 2001 From: Jakob Staudt Date: Thu, 24 May 2018 11:57:42 +0200 Subject: [PATCH 3/7] Added postprocessing GUI and Code --- FlatCAMObj.py | 2 +- ObjectUI.py | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/FlatCAMObj.py b/FlatCAMObj.py index 89997ef8..b8c12945 100644 --- a/FlatCAMObj.py +++ b/FlatCAMObj.py @@ -1074,7 +1074,7 @@ class FlatCAMCNCjob(FlatCAMObj, CNCjob): preamble = str(self.ui.prepend_text.get_value()) postamble = str(self.ui.append_text.get_value()) - processor = str(self.ui.process_script.get_value()) + processor = str(self.ui.process_script.get_value()) self.export_gcode(filename, preamble=preamble, postamble=postamble, processor=processor) diff --git a/ObjectUI.py b/ObjectUI.py index 1e80be65..611a8bc4 100644 --- a/ObjectUI.py +++ b/ObjectUI.py @@ -203,8 +203,8 @@ class CNCObjectUI(ObjectUI): "is generated." ) self.custom_box.addWidget(processorlabel) - self.processing_script = FCTextArea() - self.custom_box.addWidget(self.processing_script) + self.process_script = FCTextArea() + self.custom_box.addWidget(self.process_script) # Dwell From 20bc6b4da5894ccf5fd1db9d5627e53a151188d2 Mon Sep 17 00:00:00 2001 From: Jakob Staudt Date: Thu, 24 May 2018 10:04:47 +0000 Subject: [PATCH 4/7] Fixed Indentation Error in line 1077 --- FlatCAMObj.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/FlatCAMObj.py b/FlatCAMObj.py index b8c12945..bea692b5 100644 --- a/FlatCAMObj.py +++ b/FlatCAMObj.py @@ -1074,7 +1074,7 @@ class FlatCAMCNCjob(FlatCAMObj, CNCjob): preamble = str(self.ui.prepend_text.get_value()) postamble = str(self.ui.append_text.get_value()) - processor = str(self.ui.process_script.get_value()) + processor = str(self.ui.process_script.get_value()) self.export_gcode(filename, preamble=preamble, postamble=postamble, processor=processor) From c34c59f8704f2b0447b22f12b9f98129d08051b3 Mon Sep 17 00:00:00 2001 From: Jakob Staudt Date: Thu, 24 May 2018 10:16:48 +0000 Subject: [PATCH 5/7] Changed Indentation to Spaces --- FlatCAMObj.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/FlatCAMObj.py b/FlatCAMObj.py index bea692b5..56a4e695 100644 --- a/FlatCAMObj.py +++ b/FlatCAMObj.py @@ -1044,7 +1044,7 @@ class FlatCAMCNCjob(FlatCAMObj, CNCjob): "tooldia": self.ui.tooldia_entry, "append": self.ui.append_text, "prepend": self.ui.prepend_text, - "postprocess": self.ui.process_script, + "postprocess": self.ui.process_script, "dwell": self.ui.dwell_cb, "dwelltime": self.ui.dwelltime_entry }) @@ -1074,7 +1074,7 @@ class FlatCAMCNCjob(FlatCAMObj, CNCjob): preamble = str(self.ui.prepend_text.get_value()) postamble = str(self.ui.append_text.get_value()) - processor = str(self.ui.process_script.get_value()) + processor = str(self.ui.process_script.get_value()) self.export_gcode(filename, preamble=preamble, postamble=postamble, processor=processor) From fca9f0ca88d4ff0b1e9b0d99619b7f8dcbfafdfd Mon Sep 17 00:00:00 2001 From: mquezada Date: Sat, 26 May 2018 19:43:01 -0400 Subject: [PATCH 6/7] Double clicking on the object label in the Project list view should select the object and take user to Selected tab. --- ObjectCollection.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/ObjectCollection.py b/ObjectCollection.py index a28e7afc..a4d8c32a 100644 --- a/ObjectCollection.py +++ b/ObjectCollection.py @@ -70,7 +70,6 @@ class ObjectCollection(): self.model = QtGui.QStandardItemModel(self.view) self.view.setModel(self.model) self.model.itemChanged.connect(self.on_item_changed) - #self.view.setModel(self) self.click_modifier = None @@ -164,6 +163,10 @@ class ObjectCollection(): # Create the model item to insert into the QListView icon = QtGui.QIcon(self.icons[obj.kind])#self.icons["gerber"]) item = QtGui.QStandardItem(icon, name) + # Item is not editable, so that double click + # does not allow cell value modification. + item.setEditable(False) + # The item is checkable, to add the checkbox. item.setCheckable(True) if obj.options["plot"] == True: item.setCheckState(2)#Qt.Checked) From aff21d7cb02a36659ac289708a11c2c1a05b2021 Mon Sep 17 00:00:00 2001 From: Marius Stanciu Date: Wed, 30 May 2018 08:02:03 +0300 Subject: [PATCH 7/7] - changed the default way to copy the coordinates to clipboard. Before, at each mouse click on canvaas the coordinates were copied to clipboard. Now for the same feet it require to have the CTRL key pressed while clicking on canvas for the coordinates to be copied. --- FlatCAMApp.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/FlatCAMApp.py b/FlatCAMApp.py index ea230c41..e3b0ddf8 100644 --- a/FlatCAMApp.py +++ b/FlatCAMApp.py @@ -1639,8 +1639,9 @@ class App(QtCore.QObject): try: App.log.debug('button=%d, x=%d, y=%d, xdata=%f, ydata=%f' % ( event.button, event.x, event.y, event.xdata, event.ydata)) - - self.clipboard.setText(self.defaults["point_clipboard_format"] % (event.xdata, event.ydata)) + modifiers = QtGui.QApplication.keyboardModifiers() + if modifiers == QtCore.Qt.ControlModifier: + self.clipboard.setText(self.defaults["point_clipboard_format"] % (event.xdata, event.ydata)) except Exception, e: App.log.debug("Outside plot?")