947 Commits

Author SHA1 Message Date
Jaime van Kessel
50ae33c42d
Force an re-evaluation of a setting when extruder has been disabled
CURA-7770
2020-10-16 10:50:05 +02:00
Kostas Karmas
f25bfd717e Recalculate the number of user settings after setting the quality group
So that the dialog ensures actually knows that there are no changed settings and will not show up.

CURA-7728
2020-10-06 09:55:11 +02:00
Jaime van Kessel
dd359da1cf
Prevent crash when material is unknown
Fixes CURA-GV
2020-09-16 16:37:09 +02:00
Jelle Spijker
0725bdcd64
Merge pull request #8335
Speed up disable extruder
2020-09-09 09:42:36 +02:00
Ghostkeeper
6e2738a254
Don't update extruders that Cura doesn't have
This is a bit of defensive coding. If the position is out of bounds for Cura it should now ignore those extruders.
This could be due to broken firmware, or maybe someone MITM-ing the connection and changing it, or perhaps because the printer was changed while the sync was ongoing? Whatever the cause, it now puts a warning in the log about it and doesn't crash any more.

Fixes Sentry issue CURA-156.
2020-09-08 12:53:30 +02:00
Jaime van Kessel
175244fdc8
No longer spam the GUI with hasUserSettingsUpdates
The QML profiler showed me that it was causing a *lot* of issues
when switching between extruders. More than 10% of the time in QML
was spent on just updating ine property in the workspace summary dialog.
There were other properties that were also being updated without there being a point.

Contributes to #8250
2020-09-04 17:23:52 +02:00
Jaime van Kessel
6dbdee8d98
Don't switch away from disabled extruder
In some situations this could cause a slowdown, since halfway through
calculating the values the extruder switch would happen. If this is
split up a bit, it's at least less noticeable

Contributes to #8250
2020-09-04 16:43:53 +02:00
Jaime van Kessel
c383fe9656
Don't force an update when disabling an extruder
All the settings that are changed get a notification from the settingRelation.
There should be no need to re-fire all of those settings again!

Contributes to #8250
2020-09-04 16:39:06 +02:00
Jaime van Kessel
8ecdce3b26
Remove postponeEmit that didn't do anything
The signals it was postponing weren't ever being triggered
2020-09-04 16:38:15 +02:00
Jaime van Kessel
1097dbdfa5
Fix copypaste mistake 2020-08-24 10:11:49 +02:00
Jaime van Kessel
13600504d4
Fix mypy failure 2020-08-24 09:33:56 +02:00
Jaime van Kessel
87fb495e07
Add some property tests for MachineManager 2020-08-21 16:36:04 +02:00
Jaime van Kessel
4a47606176
Fix mypy issue 2020-08-21 15:52:13 +02:00
Jaime van Kessel
ce930220e9
Add tests for SetActiveMachine 2020-08-21 15:14:44 +02:00
Jaime van Kessel
907caa53f0
Ensure that changing material type results in profile re-evaluation
CURA-7657
2020-08-18 13:54:21 +02:00
Jaime van Kessel
724498cba7
Reset quality if none was found
CURA-7589
2020-08-06 17:12:14 +02:00
Kostas Karmas
d0d7e671ed Make the deletion of the definitionChanges safer
Just in case findContainerStacks returns an empty list
2020-06-23 10:56:48 +02:00
Kostas Karmas
364769d821 Remove only the hidden printers when removing a printers
When printers share the same group_id, they are removed, regardless if
they are hidden or not. This was resulting in sometimes removing
multiple printers when removing a printer that was created by a project
file.
This PR fixes that by actually checking whether the printer to be
removed is hidden.

CURA-7522
2020-06-18 13:49:50 +02:00
Jaime van Kessel
466ec7c42a
Remove duplicated variable
It was holding the same data as extruders_to_disable
2020-06-18 11:08:17 +02:00
Jaime van Kessel
930d92869a
Fix syncing empty material with cloud
For some reason the cloud gives a 0000 guid when the material is empty.
2020-06-18 11:03:40 +02:00
Kostas Karmas
984426fabb Merge branch 'master' into CURA-7454_Add_remove_printers_button_in_removed_printers_from_account_message 2020-06-10 12:06:41 +02:00
Nino van Hooff
feeeb972f7
Merge pull request #7873 from Ultimaker/CURA-7438_Show_cloud_connection_not_available_printer_removed_from_account
CURA-7438 Handle the case when a cloud printer is removed from the account
2020-06-10 11:46:10 +02:00
Jaime van Kessel
ed53557044
Merge branch 'master' of github.com:Ultimaker/Cura 2020-06-09 16:53:33 +02:00
Kostas Karmas
8c6a7d3098 Remove definitionChanges before removing a printer
When removing a printer, the files in %appdata%/cura/<version>/
/definition_changes/ remained intact. This commit fixes that by
making sure that the definitionChanges are removed before removing
the machine.
2020-06-09 15:56:13 +02:00
Kostas Karmas
5c898b8c57 Allow the machine manager to set an empty active machine
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
2020-06-09 15:33:22 +02:00
Nino van Hooff
1024879f9d Process Review feedback for CURA-7438
Renames UltimakerCloudAuthentication to UltimakerCloudConstants

Cura-7438
2020-06-09 13:41:30 +02:00
Kostas Karmas
458b439a9a Rename META_REMOVED_FROM_ACCOUNT to META_LINKED_TO_ACCOUNT
The meta data entry was rename to be more representative of its
function. In addition, the bool metadata entry is now properly
handled using the parseBool function.

CURA-7438
2020-06-04 16:14:09 +02:00
Kostas Karmas
4bebaaaddb Display an appropriate tooltip when device is removed from the account
The tooltip is updated to reflect the case where a cloud printer is
removed from the users account.

CURA-7438
2020-06-04 15:08:27 +02:00
Nino van Hooff
80a5b53aad Store the printer cluster size as a metadata entry on the machine
This makes the cluster size also available when the machine is offline.
Also fixes an issue where the cluster size is improperly restored
once the internet connection comes back online, resulting in the printer
showing as a single printer until next sync

CURA-7347
2020-06-03 13:59:51 +02:00
Nino van Hooff
89f0970a88 Remove trailing whitespace from Python files 2020-05-29 14:30:33 +02:00
Nino van Hooff
58ffc9dcae Merge remote-tracking branch 'origin/master' into doxygen_to_restructuredtext_comments
# Conflicts:
#	cura/API/__init__.py
#	cura/Settings/CuraContainerRegistry.py
#	cura/Settings/ExtruderManager.py
#	plugins/PostProcessingPlugin/scripts/PauseAtHeight.py
#	plugins/UM3NetworkPrinting/src/Cloud/CloudApiClient.py
#	plugins/UM3NetworkPrinting/src/Cloud/ToolPathUploader.py
#	plugins/UM3NetworkPrinting/src/Network/LocalClusterOutputDeviceManager.py
2020-05-28 17:31:24 +02:00
Nino van Hooff
c2c96faf5f Convert remaining doxygen to rst 2020-05-28 17:13:44 +02:00
Nino van Hooff
eef347ed6c Add an cloud unavailable icon to the active printer icon
CURA-7437
2020-05-20 17:20:40 +02:00
Ghostkeeper
d499c6fdfe
Keep this position a string
We've set up enough defensive coding that this kept working, but the typing checker fails on it.
2020-05-15 18:50:20 +02:00
Ghostkeeper
acc8e24cb4
Use extruderList rather than extruders dictionary
The extruders dictionary has been deprecated.

Done during Turbo Testing and Tooling to reduce the amount of warnings in our log.
2020-05-15 16:07:19 +02:00
Ghostkeeper
17762cb431
Use extruderList rather than extruders to switch userChanges over
It's a bit weird that it switches the user changes over though. Won't it be a different printer type then?
2020-05-15 16:04:42 +02:00
Ghostkeeper
33c1901070
Replace another extruders() call with extruderList
The extruders function is deprecated.

Done during Turbo Testing and Tooling to reduce the number of warnings in our log.
2020-05-15 15:51:49 +02:00
Ghostkeeper
174a8e5411
Use extruderList rather than deprecated extruders
Done during Turbo Testing and Tooling to reduce the number of warnings in our log.
2020-05-15 15:50:03 +02:00
Ghostkeeper
a6d7b97abc
Use extruderList rather than deprecated extruders
Done during Turbo Testing and Tooling to reduce the number of warnings in our log.
2020-05-15 15:39:28 +02:00
Ghostkeeper
fe0bae4c25
MORE usage of extruderList, LESS of extruders
Extruders has been deprecated.

Done during Turbo Testing and Tooling to reduce the number of warnings in our log.
2020-05-15 15:23:29 +02:00
Ghostkeeper
afde5353eb
Use extruderList rather than extruders
Extruders is deprecated. Always use the extruderList.
In fact, the else case beneath was already using extruderList in the same way.
Hopefully we can one day get rid of all the string conversion for the position in this class. I don't dare to refactor that without having a review though.

Done during Turbo Testing and Tooling to reduce the number of warnings in our log.
2020-05-15 15:20:46 +02:00
Ghostkeeper
88bf80c424
Don't provide setVariant with None as variant
That is not allowed as per the type. This could happen if the preferred variant of a printer also doesn't exist.

Fixes Sentry issue CURA-NP.
2020-05-07 08:53:52 +02:00
Jaime van Kessel
8269ae9501
Use base_file to check if a material is known
Fixes #7490
2020-04-14 09:49:34 +02:00
Jaime van Kessel
cfc2cc3692
Fix crash when printer definition could not be found 2020-04-08 17:14:58 +02:00
Jaime van Kessel
caa348265d
Add check to prevent unknown materials from being active
This should really resolve the key error for anycubics
2020-04-08 17:00:11 +02:00
Ghostkeeper
2ee3e5b386
Don't remove machines that don't exist
Fixes Sentry issue CURA-EM.
2020-03-30 14:10:59 +02:00
Jaime van Kessel
2fc8c0e5b5
Fix variant from extruder not restoring correctly 2020-03-13 10:37:08 +01:00
Ghostkeeper
548c02772d
Gracefully fail if the profile can't be set currently
Discovered during work on CURA-7283.
2020-03-06 13:40:28 +01:00
Jaime van Kessel
670a106957
Be a bit more gracefull when adding a machine failed
This seems to happen for people that manually add machines to cura
but mess something up when copying the files.

CURA-3X
2020-02-28 17:03:38 +01:00
Jaime van Kessel
f4d1d5d936
Add a check that fixes wrong variants upon setting an active machine 2020-02-28 15:06:11 +01:00