Menu's didn't always close, and on newer Macs users wouldnt be able to even close the menu, making this a blocker. Will fix this properly before the final, but at least the beta should be usable now.
CURA-8142
Or else the LocalFileOutputDevice will output a mesh 3mf file and not a Cura 3mf project when
being called from the 'File -> Save Project -> To Disk' submenu item.
CURA-7865
Ctrl+O was assigned as a shortcut in two places:
1. To the "File->Open File(s)" menu item, which is visible when only the local file
provider is enabled (i.e. the DF file provider is disabled)
2. To the "File->Open File(s)->From Disk" menu item, which is visible when there are
more than one file providers enabled.
This was creating an ambiguous shortcut, thus never opening the local file dialog.
This is now fixed by disabling the shortcuts when the respective items are not visible.
CURA-7868
This adds a function 'triggerFirst' to the file provider that triggers the first file provider in the model. That should then be the local file provider, but if the plug-in is disabled for some reason it would use another plug-in.
Contributes to issue CURA-7868.
As Ghostkeeper suspected correctly in the review comment https://github.com/Ultimaker/Cura/pull/9012#discussion_r549707433
the binding wasn't working because the model was being retrieved using a function
(CuraApplication.getFileProviderModel()).
Separating this model into a variable allows us to properly bind the "visible" properties of the
menu items with the count property of the model without a problem.
CURA-7868
When there is only one file provider (i.e. the local file provider), the Open File(s) will be a
simple item in the File menu.
When there are more than one file providers, the Open File(s) will become a submenu in the File
menu, which will contain all the file providers as submenu items.
CURA-7868
This doesn't actually speed up the process, but it does give some indication
that something is going on while the changes are happening
Contributes to #8250
This fixes the issue of the "Select configuration" label appearing on
top of the extruders in the configuration menu. This could be observed
when adding a UM2 with Olsson block.
Gracefully handle the case where the machine manager is requested to
delete the last machine in Cura. In this case, instead of deleting
everything of this machine and still keep it as an active machine,
the machine manager will set the active machine to None.
The QML files which depend on the active machine were changed to
properly handle themselves when there is no active machine.
CURA-7454
I have no idea why i thought a listview was needed for this when
this was made. The data shouldn't be flicable, so it makes way more sense to
use a row layout
CURA-7480
This happens when the printer is changed, such as when changing the Machine Width in the machine settings dialogue. It updates these menus then and if not all extruders are defined it'll give the following errors:
2020-03-20 16:56:57,839 - WARNING - [MainThread] UM.Qt.QtApplication.__onQmlWarning [406]: file:///home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingsMenu.qml:51: TypeError: Cannot read property 'isEnabled' of undefined
2020-03-20 16:56:57,840 - WARNING - [MainThread] UM.Qt.QtApplication.__onQmlWarning [406]: file:///home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/SettingsMenu.qml:44: TypeError: Cannot read property 'isEnabled' of undefined
2020-03-20 16:56:57,841 - WARNING - [MainThread] UM.Qt.QtApplication.__onQmlWarning [406]: file:///home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/MaterialMenu.qml:26: TypeError: Cannot read property 'isEnabled' of undefined
2020-03-20 16:56:57,841 - WARNING - [MainThread] UM.Qt.QtApplication.__onQmlWarning [406]: file:///home/trin/Gedeeld/Projects/Cura/resources/qml/Menus/MaterialMenu.qml:28: TypeError: Cannot read property 'material' of undefined
Done during Turbo Testing and Tooling.
This commit adds a button "Add more materials from Marketplace" in the
menu that pops up in the material list while configuring the materials
into custom ones. The button redirects the user to the Marketplace
materials page (https://marketplace.ultimaker.com/app/cura/materials)
CURA-7027