mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-07-08 23:46:22 -06:00
Display a slicing message when performing a slice operation
This commit is contained in:
parent
29c0c7c6f4
commit
0148186c7a
1 changed files with 25 additions and 0 deletions
|
@ -11,6 +11,7 @@ from UM.Signal import Signal
|
||||||
from UM.Logger import Logger
|
from UM.Logger import Logger
|
||||||
from UM.Resources import Resources
|
from UM.Resources import Resources
|
||||||
from UM.Settings.SettingOverrideDecorator import SettingOverrideDecorator
|
from UM.Settings.SettingOverrideDecorator import SettingOverrideDecorator
|
||||||
|
from UM.Message import Message
|
||||||
|
|
||||||
from cura.OneAtATimeIterator import OneAtATimeIterator
|
from cura.OneAtATimeIterator import OneAtATimeIterator
|
||||||
from . import Cura_pb2
|
from . import Cura_pb2
|
||||||
|
@ -23,6 +24,9 @@ import numpy
|
||||||
|
|
||||||
from PyQt5.QtCore import QTimer
|
from PyQt5.QtCore import QTimer
|
||||||
|
|
||||||
|
from UM.i18n import i18nCatalog
|
||||||
|
catalog = i18nCatalog("cura")
|
||||||
|
|
||||||
class CuraEngineBackend(Backend):
|
class CuraEngineBackend(Backend):
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
super().__init__()
|
super().__init__()
|
||||||
|
@ -70,6 +74,8 @@ class CuraEngineBackend(Backend):
|
||||||
|
|
||||||
self._enabled = True
|
self._enabled = True
|
||||||
|
|
||||||
|
self._message = None
|
||||||
|
|
||||||
self.backendConnected.connect(self._onBackendConnected)
|
self.backendConnected.connect(self._onBackendConnected)
|
||||||
|
|
||||||
def getEngineCommand(self):
|
def getEngineCommand(self):
|
||||||
|
@ -141,10 +147,16 @@ class CuraEngineBackend(Backend):
|
||||||
# objects.append(node)
|
# objects.append(node)
|
||||||
|
|
||||||
if len(object_groups) == 0:
|
if len(object_groups) == 0:
|
||||||
|
if self._message:
|
||||||
|
self._message.hide()
|
||||||
|
self._message = None
|
||||||
return #No point in slicing an empty build plate
|
return #No point in slicing an empty build plate
|
||||||
|
|
||||||
if kwargs.get("profile", self._profile).hasErrorValue():
|
if kwargs.get("profile", self._profile).hasErrorValue():
|
||||||
Logger.log('w', "Profile has error values. Aborting slicing")
|
Logger.log('w', "Profile has error values. Aborting slicing")
|
||||||
|
if self._message:
|
||||||
|
self._message.hide()
|
||||||
|
self._message = None
|
||||||
return #No slicing if we have error values since those are by definition illegal values.
|
return #No slicing if we have error values since those are by definition illegal values.
|
||||||
|
|
||||||
self._slicing = True
|
self._slicing = True
|
||||||
|
@ -153,6 +165,11 @@ class CuraEngineBackend(Backend):
|
||||||
self._report_progress = kwargs.get("report_progress", True)
|
self._report_progress = kwargs.get("report_progress", True)
|
||||||
if self._report_progress:
|
if self._report_progress:
|
||||||
self.processingProgress.emit(0.0)
|
self.processingProgress.emit(0.0)
|
||||||
|
if not self._message:
|
||||||
|
self._message = Message(catalog.i18nc("@info:status", "Slicing..."), 0, False, -1)
|
||||||
|
self._message.show()
|
||||||
|
else:
|
||||||
|
self._message.setProgress(-1)
|
||||||
|
|
||||||
self._sendSettings(kwargs.get("profile", self._profile))
|
self._sendSettings(kwargs.get("profile", self._profile))
|
||||||
|
|
||||||
|
@ -225,6 +242,14 @@ class CuraEngineBackend(Backend):
|
||||||
if message.amount >= 0.99:
|
if message.amount >= 0.99:
|
||||||
self._slicing = False
|
self._slicing = False
|
||||||
|
|
||||||
|
if self._message:
|
||||||
|
self._message.setProgress(100)
|
||||||
|
self._message.hide()
|
||||||
|
self._message = None
|
||||||
|
|
||||||
|
if self._message:
|
||||||
|
self._message.setProgress(round(message.amount * 100))
|
||||||
|
|
||||||
if self._report_progress:
|
if self._report_progress:
|
||||||
self.processingProgress.emit(message.amount)
|
self.processingProgress.emit(message.amount)
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue