mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-07-25 07:33:57 -06:00
Also make IDs unique
Took me a while to see why Cura was confusing the extruder stacks. It worked fine during the actual upgrade itself. Then later after the start-up sequence it suddenly re-wrote them wrongly. Why is there an ID field in here? Shouldn't it just take the file name as the ID? Stupid!
This commit is contained in:
parent
45d3f8ca6a
commit
c51647026c
1 changed files with 11 additions and 8 deletions
|
@ -156,8 +156,7 @@ class VersionUpgrade46to47(VersionUpgrade):
|
||||||
"""
|
"""
|
||||||
parser = configparser.ConfigParser(interpolation = None)
|
parser = configparser.ConfigParser(interpolation = None)
|
||||||
parser.read_string(serialized)
|
parser.read_string(serialized)
|
||||||
result_parsers = [parser]
|
results = [(parser, filename)]
|
||||||
result_filenames = [filename]
|
|
||||||
|
|
||||||
# Update version number.
|
# Update version number.
|
||||||
if "metadata" not in parser:
|
if "metadata" not in parser:
|
||||||
|
@ -176,31 +175,35 @@ class VersionUpgrade46to47(VersionUpgrade):
|
||||||
parser["containers"]["7"] = "deltacomb_base_extruder_1"
|
parser["containers"]["7"] = "deltacomb_base_extruder_1"
|
||||||
# Copy this extruder to extruder 3 and 4.
|
# Copy this extruder to extruder 3 and 4.
|
||||||
extruder3 = copy.deepcopy(parser)
|
extruder3 = copy.deepcopy(parser)
|
||||||
|
extruder4 = copy.deepcopy(parser)
|
||||||
|
|
||||||
|
extruder3["general"]["id"] += "_e2_upgrade"
|
||||||
extruder3["metadata"]["position"] = "2"
|
extruder3["metadata"]["position"] = "2"
|
||||||
extruder3["containers"]["0"] += "_e2_upgrade"
|
extruder3["containers"]["0"] += "_e2_upgrade"
|
||||||
if extruder3["containers"]["1"] != "empty_quality_changes":
|
if extruder3["containers"]["1"] != "empty_quality_changes":
|
||||||
extruder3["containers"]["1"] += "_e2_upgrade"
|
extruder3["containers"]["1"] += "_e2_upgrade"
|
||||||
extruder3["containers"]["6"] += "_e2_upgrade"
|
extruder3["containers"]["6"] += "_e2_upgrade"
|
||||||
extruder3["containers"]["7"] = "deltacomb_base_extruder_2"
|
extruder3["containers"]["7"] = "deltacomb_base_extruder_2"
|
||||||
result_parsers.append(extruder3)
|
results.append((extruder3, filename + "_e2_upgrade"))
|
||||||
result_filenames.append(filename + "_e2_upgrade")
|
|
||||||
extruder4 = copy.deepcopy(parser)
|
extruder4["general"]["id"] += "_e3_upgrade"
|
||||||
extruder4["metadata"]["position"] = "3"
|
extruder4["metadata"]["position"] = "3"
|
||||||
extruder4["containers"]["0"] += "_e3_upgrade"
|
extruder4["containers"]["0"] += "_e3_upgrade"
|
||||||
if extruder4["containers"]["1"] != "empty_quality_changes":
|
if extruder4["containers"]["1"] != "empty_quality_changes":
|
||||||
extruder4["containers"]["1"] += "_e3_upgrade"
|
extruder4["containers"]["1"] += "_e3_upgrade"
|
||||||
extruder4["containers"]["6"] += "_e3_upgrade"
|
extruder4["containers"]["6"] += "_e3_upgrade"
|
||||||
extruder4["containers"]["7"] = "deltacomb_base_extruder_3"
|
extruder4["containers"]["7"] = "deltacomb_base_extruder_3"
|
||||||
result_parsers.append(extruder4)
|
results.append((extruder4, filename + "_e3_upgrade"))
|
||||||
result_filenames.append(filename + "_e3_upgrade")
|
|
||||||
elif parser["containers"]["7"] == "deltacomb": # Global stack.
|
elif parser["containers"]["7"] == "deltacomb": # Global stack.
|
||||||
parser["containers"]["7"] = "deltacomb_dc20"
|
parser["containers"]["7"] = "deltacomb_dc20"
|
||||||
parser["containers"]["3"] = "deltacomb_global_C"
|
parser["containers"]["3"] = "deltacomb_global_C"
|
||||||
|
|
||||||
result_serialized = []
|
result_serialized = []
|
||||||
for result_parser in result_parsers:
|
result_filenames = []
|
||||||
|
for result_parser, result_filename in results:
|
||||||
result_ss = io.StringIO()
|
result_ss = io.StringIO()
|
||||||
result_parser.write(result_ss)
|
result_parser.write(result_ss)
|
||||||
result_serialized.append(result_ss.getvalue())
|
result_serialized.append(result_ss.getvalue())
|
||||||
|
result_filenames.append(result_filename)
|
||||||
|
|
||||||
return result_filenames, result_serialized
|
return result_filenames, result_serialized
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue