mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-07-06 22:47:29 -06:00
Make sure default variables are available in start/end code
The following properties are not settings-names, but could previously be used as template variables - material_id - time - date - day - initial_extruder_nr - material_id - material_name - material_type - material_brand - time - date - day - initial_extruder_nr These properties are _awkwardly_ propogated through the kwargs of the `get_value` method of `GcodeStartEndFormatter`. I don't quite like implementing it like this, but to avoid API breaks I couldn't change abusing the kwargs arg for this purpose. CURA-11155
This commit is contained in:
parent
c3f3a86385
commit
14afd73c19
1 changed files with 9 additions and 2 deletions
|
@ -84,7 +84,7 @@ class GcodeStartEndFormatter(Formatter):
|
|||
container_stack = ExtruderManager.getInstance().getExtruderStack(extruder_nr)
|
||||
|
||||
setting_function = SettingFunction(expression)
|
||||
value = setting_function(container_stack)
|
||||
value = setting_function(container_stack, additional_variables=kwargs[str(extruder_nr)])
|
||||
|
||||
return value
|
||||
|
||||
|
@ -423,10 +423,17 @@ class StartSliceJob(Job):
|
|||
:param value: A piece of g-code to replace tokens in.
|
||||
:param default_extruder_nr: Stack nr to use when no stack nr is specified, defaults to the global stack
|
||||
"""
|
||||
if not self._all_extruders_settings:
|
||||
self._cacheAllExtruderSettings()
|
||||
|
||||
try:
|
||||
# any setting can be used as a token
|
||||
fmt = GcodeStartEndFormatter(default_extruder_nr = default_extruder_nr)
|
||||
return str(fmt.format(value))
|
||||
if self._all_extruders_settings is None:
|
||||
return ""
|
||||
settings = self._all_extruders_settings.copy()
|
||||
settings["default_extruder_nr"] = default_extruder_nr
|
||||
return str(fmt.format(value, **settings))
|
||||
except:
|
||||
Logger.logException("w", "Unable to do token replacement on start/end g-code")
|
||||
return str(value)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue