Contributes to CURA-5465
Fixed bug by preventing read jobs for 3mf files from being auto-arranged.
Boyscout changes:
- Fixed typo in `ThreeMFReader.py` (`splitted` → `split`)
- Fixed code style in `CuraApplication.py` (`filename` → `file_name`)
CURA-5334
- In project file writer, it says the mime type is "application/x-curaproject+xml",
and we decided to use this as THE mime type.
- Pass preferred_mimetype to save project file dialog so it
automatically adds the file extension upon open.
CURA-5334
- In project file writer, it says the mime type is "application/x-curaproject+xml",
and we decided to use this as THE mime type.
- Pass preferred_mimetype to save project file dialog so it
automatically adds the file extension upon open.
several instances need to be created.
- In the ThreeMFWorkspaceReader we need to create some temporal
instances of Preferences that makes it not singleton anymore.
- The current preferences are kept in the Application class and so all
the calls to the preferences are changed to get the preferences from
Application.
- The method getInstance in Preferences is kept as deprecated since some
external plugins.
CURA-5229
- Move @call_on_qt_thread to a separate module
- Make sure that project writer runs on Qt thread because itself and the
calls it makes can create new QObjects such as InstanceContainers, and
this must happen on the Qt thread.
That was the whole point of this change. Instead degrade gracefully. It won't load the material file but give an error message saying that the material is corrupt. Then it won't be able to load the stack as well because the material doesn't exist, and give an error about the stack as well.
Contributes to issue CURA-5045.
CURA-5045
- If a container cannot be deserialized in project loading, it should fail
right on the spot because even if it continues, it still won't work.
- In other places, at least log deserialization errors if any of them show
up.
Only the deserialize() functions themselves may pass the ContainerFormatError on, because their callers will have to handle those errors anyway.
Contributes to issue CURA-5045.