From 05bc3664af51b9b66d829a7632a6020b69876ca8 Mon Sep 17 00:00:00 2001 From: Youness Alaoui Date: Fri, 22 May 2015 17:51:36 -0400 Subject: [PATCH] Change the Print button into Pause/Resume when no pause button is present --- Cura/gui/printWindow.py | 35 +++++++++++++++++++++++++++------ plugins/PronterfaceUI/script.py | 2 +- 2 files changed, 30 insertions(+), 7 deletions(-) diff --git a/Cura/gui/printWindow.py b/Cura/gui/printWindow.py index 92da5a65..43552374 100644 --- a/Cura/gui/printWindow.py +++ b/Cura/gui/printWindow.py @@ -226,7 +226,10 @@ class printWindowPlugin(wx.Frame): self._printerConnection.openActiveConnection() def script_startPrint(self, data = None): - self._printerConnection.startPrint() + if self._printerConnection.isPrinting() or self._printerConnection.isPaused(): + self._printerConnection.pause(not self._printerConnection.isPaused()) + else: + self._printerConnection.startPrint() def script_cancelPrint(self, e): self._printerConnection.cancelPrint() @@ -297,6 +300,12 @@ class printWindowPlugin(wx.Frame): self._termLog.AppendText(line.encode('utf-8', 'replace')) def _updateButtonStates(self): + hasPauseButton = False + for button in self._buttonList: + if button.command == self.script_pausePrint: + hasPauseButton = True + break + for button in self._buttonList: if button.command == self.script_connect: button.Show(self._printerConnection.hasActiveConnection()) @@ -315,12 +324,26 @@ class printWindowPlugin(wx.Frame): else: button.Enable(False) elif button.command == self.script_startPrint: - if not self._printerConnection.hasActiveConnection() or \ - self._printerConnection.isActiveConnectionOpen(): - button.Enable(not self._printerConnection.isPrinting() and \ - not self._printerConnection.isPaused()) + if hasPauseButton or not self._printerConnection.hasPause(): + if not self._printerConnection.hasActiveConnection() or \ + self._printerConnection.isActiveConnectionOpen(): + button.Enable(not self._printerConnection.isPrinting() and \ + not self._printerConnection.isPaused()) + else: + button.Enable(False) else: - button.Enable(False) + if not self._printerConnection.hasActiveConnection() or \ + self._printerConnection.isActiveConnectionOpen(): + if self._printerConnection.isPrinting(): + button.SetLabel(_("Pause")) + else: + if self._printerConnection.isPaused(): + button.SetLabel(_("Resume")) + else: + button.SetLabel(_("Print")) + button.Enable(True) + else: + button.Enable(False) elif button.command == self.script_cancelPrint: if not self._printerConnection.hasActiveConnection() or \ self._printerConnection.isActiveConnectionOpen(): diff --git a/plugins/PronterfaceUI/script.py b/plugins/PronterfaceUI/script.py index 705c113a..eb317505 100644 --- a/plugins/PronterfaceUI/script.py +++ b/plugins/PronterfaceUI/script.py @@ -50,7 +50,7 @@ addProgressbar(255, 200, 200) addButton(0, 255, 255, 'Connect', connect) addButton(0, 240, 255, 'Print', startPrint) -addButton(0, 220, 255, 'Pause', pausePrint) +#addButton(0, 220, 255, 'Pause', pausePrint) addButton(0, 200, 255, 'Cancel', cancelPrint) addButton(0, 180, 255, 'Error log', showErrorLog) addButton(0, 160, 255, "Motors Off", sendGCode, "M18;") -- 2.30.2