587 Commits

Author SHA1 Message Date
Remco Burema
a56a21cf93 W.I.P.: Press print on abstract cloud printer. User should see dialog.
Start of implementation. When printing on an abstract printer, a user should see a dialog with the matching concrete cloud printers to pick from to actually print. Names are not final. Very much a work in progress. Very not finished also.

start of implementation for CURA-9278
2022-09-02 17:49:39 +02:00
c.lamboo
6d0acbe095 Always show correct number of connected machines
Calculate number of connected machines _after_ the abstract machine its connected is removed from the list

CURA-9277
2022-09-02 16:28:10 +02:00
c.lamboo
27fc11b840 Prevent abstract machines from being deleted in the config menu
CURA-9277
2022-09-02 16:26:17 +02:00
c.lamboo
8bb2671a28 Don't show abstract machines in configuration page
So they cannot be removed through the preferences

CURA-9289
2022-09-02 16:26:17 +02:00
Jaime van Kessel
ded3873249
Fix abstract machines being displayed twice 2022-08-31 15:12:25 +02:00
Remco Burema
a713b1e9e9
Merge pull request #13165 from Ultimaker/CURA-8463_cloud_configuration
Show all configurations in "abstract" printer from cloud
2022-08-31 14:50:13 +02:00
joeydelarago
ab722eb93c Default printers should be collapsed
CURA-9514
2022-08-31 13:19:12 +02:00
Casper Lamboo
dccffdeca3
Update cura/Machines/Models/MachineListModel.py 2022-08-31 11:08:37 +02:00
joeydelarago
19835844bf Change listType -> componentType. Makes it a bit more clear that this variable decides which component should be used for the model.
CURA-9514
2022-08-31 10:50:20 +02:00
Jaime van Kessel
4c55befad7
Merge branch 'main' of github.com:Ultimaker/Cura into CURA-8463_cloud_configuration 2022-08-31 10:39:05 +02:00
joeydelarago
b999a88b26 Update function name to match code style
CURA-9514
2022-08-31 10:26:57 +02:00
joeydelarago
9f204f2e43 Update isAbstractMachine to match Role name format.
CURA-9514
2022-08-31 10:20:50 +02:00
joeydelarago
760e53c401 Fix indentation
Remove debug statement

CURA-9514
2022-08-31 10:19:02 +02:00
joeydelarago
daab1aae71 QML was attempting to fetch variables that were emtpy. Using self.clear() properly removed unused items when the list is resized to be smaller.
Also add some dummy variables inside cloud printer expand and contract buttons.

CURA-9514
2022-08-31 10:05:41 +02:00
c.lamboo
aa1c09591f Typo
CURA-9514
2022-08-31 08:15:13 +02:00
c.lamboo
60b12b9247 Use list model to display show hide buttons
CURA-9514
2022-08-31 07:58:05 +02:00
c.lamboo
ac732e9604 Add button to hide/show connected printers
CURA-9514
2022-08-30 23:15:54 +02:00
joeydelarago
f3b9040561 Add sanity check for printers that are online. They must have an online connection type. This can pop up when adding a printer from a 3mf since we do not store the connection_type but we do store is_online=True.
CURA-9277
2022-08-29 14:03:23 +02:00
Jaime van Kessel
506f2b9820
Remove code duplication in createAbstractMachine
This also caused a crash when an abstract machine with multiple extruders was selected

CURA-8463
2022-08-26 14:08:03 +02:00
c.lamboo
ff7c9eddde Add documentation
CURA-9514, CURA-9277
2022-08-26 11:34:34 +02:00
c.lamboo
f000b75661 Move getMachinesWithDefinition to MachinesManager
CURA-9514, CURA-9277
2022-08-26 11:16:10 +02:00
c.lamboo
8b84db7059 Remove AbstractMachine
Having a separate class for the AbstractMachine complicated things; it's behaviour was extremely similar to the GlobalStack so adding one more stack container type in addition to the many similar setting container types we already have adds complexity to the system. Having these different classes for machines and abstract machines also add complexity to the update script as the abstract machines were stored in a separate folder from the machine types.

Because of these reasons we decided to replace the AbstractMachine by a GlobalStack where the is_abstract_machine property metadata property is set to True.

CURA-9514, CURA-9277

Co-authored-by: joeydelarago <joeydelarago@gmail.com>
2022-08-26 10:45:45 +02:00
joeydelarago
04580b8fdc Simplify logic by having abstract printers always be online.
CURA-9221
2022-08-24 14:33:04 +02:00
joeydelarago
1e898ff930 Remove redundant comment
CURA-9514
2022-08-24 10:23:35 +02:00
joeydelarago
91b8c97dae Subtract online printers from list of all printers instead of searching for offline printers.
This prevents printers without "is_online" in the metadata from being left out, and is generally more defensive for uncertain states.

CURA-9514
2022-08-24 10:09:45 +02:00
joeydelarago
035fb27ab0 Code style
CURA-9514
2022-08-23 15:44:42 +02:00
joeydelarago
93e2bef303 Group printers by section (Connected Printers/Other Printers)
Cleanup redundant code.

CURA-9514
2022-08-23 15:44:16 +02:00
joeydelarago
b18080c332 Rename AbstractStacksModel.py -> MachineListModel.py since this model includes both abstract machine stacks and regular machines
Add machineCount for displaying the number of machines of a type.

MachineSelectorButton is in use in other places, swapped it out for a new Component MachineListButton.

CURA-9514
2022-08-23 14:29:05 +02:00
joeydelarago
7ffa770fb4 Searching container registry returns ContainerStacks.
Made typing more generic to work with an ContainerStack to compensate.

Made AbstractMachine getMachines a classmethod so it can be called with ContainerStacks.

CURA-9514
2022-08-23 10:35:00 +02:00
joeydelarago
c016c23d10 Create model from abstract machine list
CURA-9514
2022-08-22 16:26:02 +02:00
Jaime van Kessel
3514c01b25 Remove duplicated code
CURA-9352
2022-06-17 15:21:30 +02:00
j.delarago
9dff733345 Remove todos that are no longer applicable
Remove debug print statement

CURA-9321
2022-06-16 15:32:33 +02:00
j.delarago
1a464051d4 On initial startup, when assigning your first printer the ActiveIntentQualitiesModel.py would not be updated. Causing an error unsupported configuration to show.
Fixed by updating the model when the globalContainer is changed as well.

CURA-8849
2022-06-16 14:27:13 +02:00
j.delarago
8c92ebfccd Add missing import
CURA-8849
2022-06-16 10:41:06 +02:00
j.delarago
f9dda40409 Better typing
CURA-8849
2022-06-15 17:41:21 +02:00
j.delarago
6f8470167f Suggested changes
CURA-8849
2022-06-15 17:40:07 +02:00
Joey de l'Arago
142f1823b3
Apply suggestions from code review
Co-authored-by: Casper Lamboo <c.lamboo@ultimaker.com>
2022-06-15 17:31:40 +02:00
Joey de l'Arago
b132b5c08c
Update cura/Machines/Models/IntentSelectionModel.py
Co-authored-by: Casper Lamboo <c.lamboo@ultimaker.com>
2022-06-15 17:29:59 +02:00
Joey de l'Arago
e47a2d1c99
Update cura/Machines/Models/IntentSelectionModel.py
Co-authored-by: Casper Lamboo <c.lamboo@ultimaker.com>
2022-06-15 17:29:26 +02:00
Joey de l'Arago
b4152d29d6
Update cura/Machines/Models/ActiveIntentQualitiesModel.py
Co-authored-by: Casper Lamboo <c.lamboo@ultimaker.com>
2022-06-15 17:29:16 +02:00
Joey de l'Arago
87afb117d0
Update cura/Machines/Models/ActiveIntentQualitiesModel.py
Co-authored-by: Casper Lamboo <c.lamboo@ultimaker.com>
2022-06-15 17:28:22 +02:00
Joey de l'Arago
760976159c
Update cura/Machines/Models/ActiveIntentQualitiesModel.py
Co-authored-by: Casper Lamboo <c.lamboo@ultimaker.com>
2022-06-15 17:28:13 +02:00
Joey de l'Arago
caa0c255aa
Update cura/Machines/Models/ActiveIntentQualitiesModel.py
Co-authored-by: Casper Lamboo <c.lamboo@ultimaker.com>
2022-06-15 17:28:06 +02:00
j.delarago
d19e89325f Stop returning quality types from inactive quality groups. This was causing the resolution drop down to show unavailable resolutions.
CURA-8849
2022-06-15 09:06:00 +02:00
Ghostkeeper
074e9a8607
Show profile group name in bold
That highlights it relative to the layer height.

Contributes to issue CURA-8849.
2022-06-14 15:36:29 +02:00
j.delarago
5cfb6f94e3 Update the resolution dropdown model whenever a custom profile is enabled. Otherwise it won't reflect the custom profiles parent resolution.
CURA-8849
2022-06-14 15:03:47 +02:00
j.delarago
a87695cd8d Added new intent selection buttons and resolution drop down to replace the matrix.
We are now selecting intents first and then quality, however the container hierarchy quality -> intents. This is the reason for the new functions inside machine manager.

CURA-8849
2022-06-14 11:41:38 +02:00
Jaime van Kessel
e6551821aa Use intent category if no translation is available
Previously we would only accept intents that had a translation. If we
could not find one, we would use "unknown" as the intent category. However,
we didn't really do this consistently. In some places it would show unkown
and in others we'd show the intent type.

This should make the behavior the same across the board. It will try to get a
translation for the intent category and show that. If it's unable to find that
it will use the category instead. Note that it will use the python title function
to ensure it has nice capitalisation

CURA-9297
2022-06-01 11:07:01 +02:00
Remco Burema
6b04c736e9 Revert "Disable the material sync message again"
This reverts commit 1f6e1942d775d47dd48be4fd83c5346271827a5e.
2022-05-31 12:34:55 +02:00
j.delarago
ba3913395c Add catalog to files that weren't translating
CURA-9141
2022-05-05 16:42:01 +02:00