To do this, I'm giving more power to the NumericTextFieldWithUnit QML element, to allow an arbitrary minimum and maximum. Enforcing this minimum and maximum is fairly simple with a JavaScript hook. This hook is necessary because the DoubleValidator allows intermediary values which defeats the purpose, essentially allowing any number as long as it has the correct number of digits.
Printers larger than 2km would start to give overflow errors in its X and Y coordinates. Z is okay up to about 9 billion kilometres in theory, since we don't need to do any squaring math on those coordinates afaik. In practice I'm doing this because at very high values the Arranger also gives errors because Numpy can't handle those extremely big arrays (since the arranger creates a 2mm grid).
Fixes Sentry issue CURA-CB.
Given that:
* stair stepping is intended to be used to reduce the adhesion between support and the model, where the support rests on the model, and to reduce scarring, and
* PVA doesn't suffer from scarring or adhesion issues due to its water-solubility, and
* our current stair stepping algorithm has some bugs, causing support to disappear sometimes
we've decided to set stair stepping to 0 for all PVA profiles for UM3, UMS5 and UMS3.
Contributes to issue CURA-7311.
The problem: When infill mesh is set, wall_thickness and
top_bottom_thickness are added to the settings. Then these settings are
set to visible on the visibility_handler.
It appears however, that the visibility_handler considers all added
settings to be visible. It thus concludes that no UI update is necessary
because the settings are already added.
This way you can still sort of see what is being supported under there. Handy!
However because the layer view is rendered on top of everything else, the Z buffering is a bit messed up. This makes the support always exactly the transparency value in the theme regardless of how many layers of support are drawn. That's nice, because it makes it so that you can always see through the support.
This doesn't work when the colour scheme of layer view is not set to Line Type. There is no differentiation between support and other things then. Support infill seems to not be used at all by layer view, but I've also made the support interface transparent just like the normal support.