It is no longer a scrollview, after all, since the TableView itself already scrolls (and leaves the header nicely at the top this way).
Contributes to issue CURA-8686.
There we can re-use it. We can't re-use that implementation from the Digital Library itself, since that plug-in needs to be compatible with older Cura versions as well.
Contributes to issue CURA-8686.
If there is no model data, the cells will be empty and would have a height of 0. The table warns us that a height of 0 is not allowed.
Contributes to issue CURA-8686.
We're changing this so that the button doesn't set this by itself. This is necessary so that I can use this TabRowButton also when it's not in a repeater (for the global stack in the profile manager).
Contributes to issue CURA-8686.
Because Controls 1 is going out.
The rest of the controls elements here are left as they were since they need to be styled.
Contributes to issue CURA-8686.
It turns out this has been broken for a while. I don't think anyone adds that many scripts that they'd need to scroll this, but if they want to they can now.
Contributes to issue CURA-8686.
No need for a ScrollView in Controls 2. And specialise the scroll bar.
Be sure to also align the right side of the contents with the scroll bar though.
Contributes to issue CURA-8686.
I can't update the buttons (not part of this ticket) so I kept those Controls1.
The ScrollView is no longer necessary, just a ListView now with customised scroll bar.
Contributes to issue CURA-8686.
Conflicts:
plugins/SimulationView/SimulationPass.py -> Reverted layer view optimisation in Master while some whitespace changed in Arachne.
resources/definitions -> Bunch of conflicts with profile updates.
resources/quality -> Bunch of conflicts with profile updates.
resources/texts/change_log.txt -> Removed the Arachne change log (as they are internal versions). It'll have to be re-added when we release this version as stable.
Adds type checking here and there to catch such errors in the future.
This makes it handle the optional fields of this model better.
Contributes to issue CURA-8730.
This makes a few things easier. You could see None as being a signalling value to indicate that we don't know capabilities, but this signalling would get lost anyway in the serialising to the metadata. So just an empty list is fine for now.
Contributes to issue CURA-8671.
Previously it was encoded as a stringified Python list of strings, which is much harder to parse.
This would go wrong if any of these capabilities have a comma in them, but I think that would be bad practice for keywords like this anyway.
Contributes to issue CURA-8671.