T576: Added print statistics

This commit is contained in:
Victor Larchenko 2016-11-23 12:38:02 +06:00
parent dbb971fef5
commit 67aae55640
2 changed files with 9 additions and 7 deletions

View file

@ -13,7 +13,7 @@ from UM.Resources import Resources
from UM.Settings.Validator import ValidatorState #To find if a setting is in an error state. We can't slice then.
from UM.Platform import Platform
from UM.Scene.Iterator.DepthFirstIterator import DepthFirstIterator
from UM.Qt.Duration import DurationFormat
import cura.Settings
@ -386,6 +386,14 @@ class CuraEngineBackend(Backend):
self.backendStateChange.emit(BackendState.Done)
self.processingProgress.emit(1.0)
for line in self._scene.gcode_list:
replaced = line.replace("{print_time}", str(Application.getInstance().getPrintInformation().currentPrintTime.getDisplayString(DurationFormat.Format.ISO8601)))
replaced = replaced.replace("{filament_amount}", str(Application.getInstance().getPrintInformation().materialLengths))
replaced = replaced.replace("{filament_weight}", str(Application.getInstance().getPrintInformation().materialWeights))
replaced = replaced.replace("{filament_cost}", "Not yet implemented")
self._scene.gcode_list[self._scene.gcode_list.index(line)] = replaced
self._slicing = False
Logger.log("d", "Slicing took %s seconds", time() - self._slice_start_time )
if self._layer_view_active and (self._process_layers_job is None or not self._process_layers_job.isRunning()):

View file

@ -259,12 +259,6 @@ class StartSliceJob(Job):
settings["date"] = time.strftime('%d-%m-%Y')
settings["day"] = ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'][int(time.strftime('%w'))]
settings["print_time"] = Application.getInstance().getPrintInformation().currentPrintTime
settings["filament_amount"] = Application.getInstance().getPrintInformation().materialLengths
settings["filament_weight"] = Application.getInstance().getPrintInformation().materialWeights
settings["filament_cost"] = None
settings["profile_string"] = None
for key, value in settings.items(): #Add all submessages for each individual setting.
setting_message = self._slice_message.getMessage("global_settings").addRepeatedMessage("settings")
setting_message.name = key