This way we don't have to use the html in the setting item and we
dont have to re-do the whole hover logic in the search text field.
THis also makes the search magnifier themed, so it looks a lot better
in the dark theme
CURA-8498
The icon existed only in the UM3NetworkPrinting plugin but it was also used in the ConfigurationItem.qml in Cura, so it had to be moved to the Cura icons.
CURA-8520
Although the ExpandablePopup already sets the anchors of the `headerItem` to account for the arrow icon on the right side, the ConfigurationMenu's extruder row was ignoring it, thus making the elided text of the last extruder to overlap with the arrow icon a bit.
This commit fixes that by explicitly accounting for the width of the arrow in the extruders row.
**Note:** if the Cura window gets resized way too much, the extruder icons will still overlap with the arrow, since there is no space to fit everything.
CURA-8496
A style had to be prepended in the text to make sure that it adheres to the style we want instead of using the OS-based link style.
Note: For some reason QML ignores all other link-style tags (such as `a:hover`, `a:focus` etc) apart from `a:link`, so we can only change the style for the normal link and NOT for when it is clicked or hovered.
CURA-8380
When the labels were getting truncated and invisible after reducing the width of Cura's window, their visibility wasn't being restored back and, as a result, the `materialTypeLabel` was the only one that was remaining visible, even if there was enough space for the full `materialBrandColorTypeLabel`.
Changing the ColumnLayout to a Column, where the width is inherited from the parent, fixes that issue.
CURA-8496
Both the `preferredWidth` AND the `width` need to be set for the labels to be properly elided if there is no more room in the ColumnLayout. In addition, the ColumnLayout that contains the variants and material names needs to be visible only if width>0, otherwise when the width is negative, for some reason the `materialTypeLabel` appears again.
CURA-8496
It was not being displayed with Qt 5.15 due to the following error:
MaterialsView.qml:34:5: Unable to assign QStringList to QString
This is correct. And it should not just concatenate all of these material names; it should add a comma between them for human-readable display in the text label above the button.
Fixes#10235.
When it was in the outer item, it was causing the label to disappear when then extruder icon was getting disabled. Moving it inside the child item which has the opacity change seems to fix that issue.
CURA-8417
Instead of updating the storage path every time you add or remove a removable drive, we now update the storage path every time you press the button to sync. That way this detail has no impact on performance of other parts of Cura if they don't use this button. It also makes the code a bit simpler.
The only downside is that this FileDialog then contains state, instead of automatically syncing with the MaterialManagement property for its folder property. I see that as a lesser of two evils.
Contributes to issue CURA-8055.
There's a suspicion that this is causing a crash on exit. From the traceback it seems like it's attempting to find a certain property on a deleted item. I'm thinking it might be trying to update properties on an item that was already deleted by the system here because the item got moved to a system-specific menu. Qt doesn't realise that. By not translating that property, it's not necessary to update and hopefully this prevents the need to look up data on the deleted item.
Not translating it is not an issue anyway, since the menu will also be renamed by Qt to some system-specific name, which is then also translated to the user's system-language by MacOS itself.
It's not at all sure if this will fix it. Tests are necessary.
Contributes to issue CURA-8245.