If the legacy profile contains float values serialised to '0.0' or '0.00' instead of just '0', this now works correctly instead of evaluating the string comparison to false.
Contributes to issue CURA-37.
If the eval failed that is likely caused by a variable not existing. It now continues with evaluating other settings and just doesn't add the setting that depends on non-existing legacy settings. This happens when the imported profile is not complete or corrupt.
Contributes to issue CURA-37.
In the evaluation that's passed from the Dictionary of Doom, the settings are still strings so you can only parse the settings as string...
Contributes to issue CURA-37.
Retraction combing was an enum (a fact which was not documented). This enum must be parsed to a boolean. The 'no skin' option now evaluates to true since it is not implemented in the new Cura.
Contributes to issue CURA-37.
Something that was not in the translation document: If a speed setting for a specific part is 0 (such as infill_speed) then the global print speed should be used.
Contributes to issue CURA-37.
When reading a node of a JSON file, apparently it only lists the keys instead of key-value pairs. You have to get the values separately.
Contributes to issue CURA-37.
This shouldn't have been committed. I suspect this came in via checking out a branch where this was still on the working tree and then going to a branch where it wasn't, and it kept the files and I thought LegacySettings was the plugin I had to commit.
Contributes to issue CURA-37.
This plugin reads a profile from legacy Cura versions. It hasn't been tested much except that there are no syntax errors. It is currently being blocked by issue 34.
Contributes to issue CURA-37.
Instead of escaping it each time you read a function with that ugly inline for loop, escape the characters when initialising the dict itself.
Contributes to issue CURA-34.
The SaveFile is safer since it should save the file atomically. This safety has proven important in the past so use it here too.
Contributes to issue CURA-34.
The new name is more appropriate since it reads only the profiles from the g-code. In the future there might be some other plug-in that reads the actual g-code as for instance a mesh.
Contributes to issue CURA-34.
The artificial line-breaks for the 80-character limit were taken along with the read-by-line of reading the g-code file, apparently. This obviously produced errors in the config parser.
Contributes to issue CURA-34.
This code was more or less copied from the writer. It requires regular expressions and the application, but I didn't take the imports along.
Contributes to issue CURA-34.