Also, renamed anchor_skin_distance to anchor_skin_expand_distance.
The idea behind the shrink distance is that when the slope of the model surface
is steep, very slim skin areas are created close to the wall and if they
are expanded we end up with skin inside the infill that isn't required. So
by shrinking the skin polygons slightly first, the very slim areas are removed
before the skin is expanded. The amount to shrink defaults to half the wall
width which appears to work OK but may as well make it a setting so that it
can be tweaked if required.
This is the one. The actual commit that implements the issue. It doesn't do anything yet, this button, but it's how it should look.
Contributes to issue CURA-3161.
Currently the setting 'resets' when you go out of the print monitor mode. That wasn't the original intention but it works kind of nicely. We'll bring it up in a meeting whether this needs to be changed.
Contributes to issue CURA-3161.
The 'hovered' property was taken from the example of the setting item, but that doesn't exist apparently. I looked up how it is normally done in QML.
Contributes to issue CURA-3161.
This is done by fitting tightly a rectangle around the grid of boxes. The boxes themselves have a white background but there is spacing between the boxes, which results in the little border.
Contributes to issue CURA-3161.
As address it uses the serial port, which would be COM# for Windows and /dev/ttyUSB# for Linux. I don't know what it would display there on OSX, probably a drive directory.
Contributes to issue CURA-3161.
Also fixed the indenting of the previous two labels to use spaces instead of tabs. I knew I was going to forget putting it back to spaces after working on a different project that uses tabs.
The information is duplicated now. I'll remove the old one promptly.
Contributes to issue CURA-3161.
It lists the name of the printer it is connected to, and the address on the right side. This won't work for USB printing (it'll give errors there). I'll solve that later.
Contributes to issue CURA-3161.
It's not even necessary to check otherwise. Requesting an extruder stack would give None anyway, which would give errors.
Contributes to issue CURA-3291.
We need to listen for changes on all extruder stacks because the values might change and therefore the validation states might change. The value of a different extruder stack could change if you change a global value that has impact on a per-extruder value via inheritance, or in this case if a limit-to-extruder property specifies that the setting should be changed on a different stack. It could change on the stack that is not active in either case.
This might have some performance impact, but it is very small. Other than layer_height there aren't many global settings that have impact on multiple extruders via inheritance. And via limit-to-extruder there will typically only be one changed value which you want to update for. Changing layer height will be a bit slower though.
Contributes to issue CURA-3291.
The default value for the limit_to_extruder property is -1. So no need to check if the property exists. Just check if it is positive.
Contributes to issue CURA-3291.
The order of operations was a bit weird. This made the code unclear and also required an extra check in an if-statement. This is simpler and theoretically even a bit faster.
Contributes sorta to issue CURA-3291.