Fix custom quality profile upgrade for UM2 family

The custom quality profiles for the UM2 family used to be saved as
profiles for "fdmprinter". They now should be updated to set for
"ultimaker2".
This commit is contained in:
Lipu Fei 2017-10-16 13:59:20 +02:00
parent a10390dbf1
commit aa7b456594

View File

@ -118,24 +118,23 @@ class VersionUpgrade27to30(VersionUpgrade):
if not parser.has_section("general"):
parser.add_section("general")
# Need to exclude the following names:
# - ultimaker2_plus
# - ultimaker2_go
# - ultimaker2_extended
# - ultimaker2_extended_plus
exclude_prefix_list = ["ultimaker2_plus_",
"ultimaker2_go_",
"ultimaker2_extended_",
"ultimaker2_extended_plus_"]
# The ultimaker 2 family
ultimaker2_prefix_list = ["ultimaker2_extended_",
"ultimaker2_go_",
"ultimaker2_"]
# ultimaker 2+ is a different family, so don't do anything with those
exclude_prefix_list = ["ultimaker2_extended_plus_",
"ultimaker2_plus_"]
# set machine definition to "ultimaker2" for the custom quality profiles that can be for the ultimaker 2 family
file_base_name = os.path.basename(filename)
if file_base_name.startswith("ultimaker2_"):
skip_this = False
for exclude_prefix in exclude_prefix_list:
if file_base_name.startswith(exclude_prefix):
skip_this = True
break
if not skip_this:
parser["general"]["definition"] = "ultimaker2"
is_ultimaker2_family = not any(file_base_name.startswith(ep) for ep in exclude_prefix_list)
if not is_ultimaker2_family:
is_ultimaker2_family = any(file_base_name.startswith(ep) for ep in ultimaker2_prefix_list)
# ultimaker2 family quality profiles used to set as "fdmprinter" profiles
if is_ultimaker2_family and parser["general"]["definition"] == "fdmprinter":
parser["general"]["definition"] = "ultimaker2"
# Update version numbers
parser["general"]["version"] = "2"