Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/Ultimaker/Cura.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cura/PrinterOutputDevice.py12
-rw-r--r--resources/qml/MonitorButton.qml4
2 files changed, 14 insertions, 2 deletions
diff --git a/cura/PrinterOutputDevice.py b/cura/PrinterOutputDevice.py
index 6643ce6e03..64544d3d3f 100644
--- a/cura/PrinterOutputDevice.py
+++ b/cura/PrinterOutputDevice.py
@@ -71,6 +71,8 @@ class PrinterOutputDevice(QObject, OutputDevice):
self._control_item = None
self._qml_context = None
+ self._can_pause = True
+ self._can_abort = True
def requestWrite(self, nodes, file_name = None, filter_by_machine = False, file_handler = None):
raise NotImplementedError("requestWrite needs to be implemented")
@@ -126,6 +128,16 @@ class PrinterOutputDevice(QObject, OutputDevice):
# Signal to be emitted when some drastic change occurs in the remaining time (not when the time just passes on normally).
preheatBedRemainingTimeChanged = pyqtSignal()
+ # Does the printer support pause at all
+ @pyqtProperty(bool, constant=True)
+ def canPause(self):
+ return self._can_pause
+
+ # Does the printer support abort at all
+ @pyqtProperty(bool, constant=True)
+ def canAbort(self):
+ return self._can_abort
+
@pyqtProperty(QObject, constant=True)
def monitorItem(self):
# Note that we specifically only check if the monitor component is created.
diff --git a/resources/qml/MonitorButton.qml b/resources/qml/MonitorButton.qml
index 5741749d4e..45c28847cd 100644
--- a/resources/qml/MonitorButton.qml
+++ b/resources/qml/MonitorButton.qml
@@ -220,7 +220,7 @@ Item
property bool userClicked: false
property string lastJobState: ""
- visible: printerConnected
+ visible: printerConnected && Cura.MachineManager.printerOutputDevices[0].canPause
enabled: (!userClicked) && printerConnected && Cura.MachineManager.printerOutputDevices[0].acceptsCommands &&
(["paused", "printing"].indexOf(Cura.MachineManager.printerOutputDevices[0].jobState) >= 0)
@@ -261,7 +261,7 @@ Item
{
id: abortButton
- visible: printerConnected
+ visible: printerConnected && Cura.MachineManager.printerOutputDevices[0].canAbort
enabled: printerConnected && Cura.MachineManager.printerOutputDevices[0].acceptsCommands &&
(["paused", "printing", "pre_print"].indexOf(Cura.MachineManager.printerOutputDevices[0].jobState) >= 0)