585 Commits

Author SHA1 Message Date
Jaime van Kessel
262520f193 Remove setting parent from basematerial 2022-04-07 18:05:27 +02:00
Jelle Spijker
3f8907d02a
Merge branch 'master' into CURA-8640_PyQt6
# Conflicts:
#	cura/CuraApplication.py
#	resources/qml/Preferences/Materials/MaterialsSyncDialog.qml
#	resources/qml/Preferences/Materials/MaterialsView.qml
2022-03-24 11:53:44 +01:00
Jaime van Kessel
1632527651 Prevent crash when switching extruder in profiles page 2022-02-21 15:40:08 +01:00
Ghostkeeper
c7d7dd11d1
Merge branch 'master' into PyQt6_upgrade
Conflicts:
	cura/PlatformPhysics.py -> Removed shapely on master, while QTimer import got updated to Qt6.
	plugins/Toolbox -> Entire folder is deleted in master, but it was updated to Qt6 here. This can all be removed.
2022-02-21 11:52:28 +01:00
Ghostkeeper
5c71671585
Make setting names italic if changed in quality-changes profile
This was the behaviour before.

Contributes to issue CURA-8686.
2022-01-26 14:00:29 +01:00
Ghostkeeper
5e5e0febb9
Format calculated functions in QualitySettingsModel itself
That way we don't have to re-format it in the display in the table.

Contributes to issue CURA-8686.
2022-01-26 11:33:42 +01:00
Ghostkeeper
f4d60b38ee
Shorten two texts of 'Sync materials with printers'
In most languages this doesn't properly fit in the space we have for these buttons.
The same text in the window title and header was not changed. There we do have space for it. The button in the material manager was also not adjusted since it's different and already about as short as can be (but needs to refer to printers instead of materials due to the context of already being in the material manager).

Contributes to issue CURA-8753.
2022-01-10 17:28:45 +01:00
Remco Burema
32b52c6166
Qt5->Qt6: Rectify constant locations: UserRole, CppOwnership
part of CURA-8591
2021-12-28 14:54:56 +01:00
Remco Burema
abe7c1bf7f
Search/replace Qt5->Qt6.
part of upgrading Qt to v6.2: CURA-8591
2021-12-28 14:46:02 +01:00
Jaime van Kessel
fe8a3fc61d Prevent crash when setting non default intent category 2021-12-10 09:51:09 +01:00
Jaime van Kessel
8f92f049d1 Emit signal when property changed
The signals weren't being emitted when the property was set.

CURA-8671
2021-12-06 09:43:53 +01:00
Ghostkeeper
0477ba44b2
Encode capabilities as comma-separated list
Previously it was encoded as a stringified Python list of strings, which is much harder to parse.
This would go wrong if any of these capabilities have a comma in them, but I think that would be bad practice for keywords like this anyway.

Contributes to issue CURA-8671.
2021-12-03 13:25:41 +01:00
Ghostkeeper
b76df21b4b
Filter printer list by capabilities
And an example of such usage: In the material sync via cloud we only want to sync with printers that can receive those materials.

We might want to add a message for the user to also make sure the firmware is up to date. Because if the firmware is not up to date now it will show no printers and instruct the user how to connect the printer to the cloud.

Contributes to issue CURA-8671.
2021-12-02 17:55:53 +01:00
Jaime van Kessel
42e066a5a8 Merge branch '4.12' of github.com:Ultimaker/Cura 2021-10-28 13:54:58 +02:00
Jaime van Kessel
59be3e195d Use category as fallback translation for intents instead of "unkown" 2021-10-28 13:48:09 +02:00
Jaime van Kessel
8f1cf4a963 Move openSYncAllWindow to the right class
CURA-8609
2021-10-28 09:43:12 +02:00
Jaime van Kessel
79117d5898 Fix merge mistakes
CURA-8609
2021-10-27 14:48:12 +02:00
Ghostkeeper
88d08b27d1
Merge branch 'master' into CURA-8609_sync_materials_to_printer
Conflicts:
	cura/Machines/Models/MaterialManagementModel.py -> On Master we had temporarily reverted the action of this button because it became apparent that the sync wasn't going to be in 4.12. That revert is no longer necessary if this is merged.
2021-10-27 14:21:05 +02:00
Ghostkeeper
273e933145
Reset sync status when closing and re-opening sync window
Otherwise when you want to sync again, it'll just say that you're done. Not what a user would expect, I reckon.

Contributes to issue CURA-8609.
2021-10-27 14:13:49 +02:00
Ghostkeeper
82441f97b1
Clarify context of error message for translators
This should improve the translation for next time.

Contributes to issue CURA-8638.
2021-10-25 15:22:28 +02:00
Jaime van Kessel
1f6e1942d7 Disable the material sync message again
CURA-8639
2021-10-21 10:39:47 +02:00
Jaime van Kessel
2baada8a70 Use the material name instead of brand + type + color
CURA-8514
Fixes #10421
2021-10-19 11:23:21 +02:00
Ghostkeeper
0d350b5f96
Merge branch '4.12' into CURA-8609_sync_materials_to_printer 2021-10-18 13:23:29 +02:00
Ghostkeeper
0378531f13
Handle QML exposing of filterConnectionType if not filtering
It should expose it as -1 then.

Contributes to issue CURA-8609.
2021-10-15 16:24:43 +02:00
Ghostkeeper
2b4a31c9de
Change type of filter to Optional[ConnectionType]
It's a bit more semantic this way.

Contributes to issue CURA-8609.
2021-10-15 14:35:07 +02:00
Ghostkeeper
4661b02e4c
Move code and status related to uploading materials to separate class
There's quite a lot of status to track, errors and progress. It's better kept separate.

Contributes to issue CURA-8609.
2021-10-12 09:43:21 +02:00
Ghostkeeper
c3d392c5cf
Show upload error or success in header once completed
According to the brand new design.

Contributes to issue CURA-8609.
2021-10-11 15:27:54 +02:00
Ghostkeeper
ffd3277854
Show error if the upload failed
Contributes to issue CURA-8609.
2021-10-11 14:57:21 +02:00
Ghostkeeper
e7b49ee551
Disable sync button while in progress
Need to show a bit more feedback I think. Let's see what the design said...

Contributes to issue CURA-8609.
2021-10-11 13:11:54 +02:00
Ghostkeeper
9729f4f3d2
Set properties immediately upon constructing
Instead of afterwards. A bit more efficient.

Contributes to issue CURA-8609.
2021-10-08 17:46:10 +02:00
Ghostkeeper
599c59bd3a
Add a background job to upload material archives
It creates the archive now. It doesn't yet upload it.

Contributes to issue CURA-8609.
2021-10-08 15:15:57 +02:00
Ghostkeeper
07b2c1b777
Add option to only show printers that are online
I have a feeling this will be abused later. But fine. We currently need it for the list of printers that we can sync materials to via the cloud.

Contributes to issue CURA-8609.
2021-10-08 14:21:03 +02:00
Ghostkeeper
32c63c2757
Add isOnline role to GlobalStacksModel
This way we can filter for only online printers or display whether printers are online or not in the future.

Contributes to issue CURA-8609.
2021-10-08 14:09:12 +02:00
Jaime van Kessel
2c9f31cbde Remove unneeded signal connections 2021-10-08 13:50:21 +02:00
Ghostkeeper
038db1fc4f
Implement functionality of export to USB button
It now creates a similar dialogue of what the old button did. The dialogue is no longer necessary in the materials page, so I've moved it to here specifically.

Contributes to issue CURA-8609.
2021-10-06 15:20:26 +02:00
Ghostkeeper
5db964aed1
Link opening sync all window to the button that should open it
This is a new button just merged in from the Master branch. With the window implemented, we can now properly open it.

Contributes to issue CURA-8609.
2021-10-06 14:25:12 +02:00
Ghostkeeper
b98da6b538
Merge branch 'master' into CURA-8609_sync_materials_to_printer
Conflicts:
	cura/Machines/Models/MaterialManagementModel.py -> Both master and my branch added an __init__ function. I merged the two __init__s to do both things that need to be done.
2021-10-06 14:22:18 +02:00
Ghostkeeper
d16217c674
Implement filter for printer list to only show printers with certain configured connections
Because here we only want to show cloud-connected printers.

Contributes to issue CURA-8609.
2021-10-05 17:44:15 +02:00
Konstantinos Karmas
e4f6c1a440 Fix typing
CURA-8254

Co-Authored-By: Jaime van Kessel <3922611+nallath@users.noreply.github.com>
2021-10-05 14:53:38 +02:00
Konstantinos Karmas
587421f97a Make the installed_packages private
CURA-8254
2021-10-05 14:51:14 +02:00
Ghostkeeper
f2aba01eff
Reset page index to 0 when re-opening sync dialogue
When the user previously opened the dialog and advanced through the pages, but closes the window, then they'll probably have to restart when they want to try it again.

Contributes to issue CURA-8609.
2021-10-05 14:00:15 +02:00
Konstantinos Karmas
cb4d5ce6e5 Update message text
CURA-8254
2021-10-05 13:11:52 +02:00
Konstantinos Karmas
bdbac23fdf Add comment
CURA-8254
2021-10-05 11:43:36 +02:00
Konstantinos Karmas
8157cedfef Show the message only if there are printers that support material export
If none of the user's printers support exporting materials to it, then the message should not be shown.

CURA-8254
2021-10-05 11:42:00 +02:00
Konstantinos Karmas
658e54c8e5 Simplify the check for new materials
If there is at least one material, we can already show the message without checking the rest of the installed packages.

CURA-8254
2021-10-05 11:36:10 +02:00
Konstantinos Karmas
5732fc2b51 Update campaign tags
CURA-8254
2021-10-04 17:05:36 +02:00
Konstantinos Karmas
ce34e16cdd Add documentation
CURA-8254
2021-10-04 16:47:48 +02:00
Konstantinos Karmas
4b7f385077 Add external link to "Learn more" action
CURA-8254
2021-10-04 16:43:17 +02:00
Ghostkeeper
9ec731eaf6
Create MaterialsSyncDialog from a Python function
Rather than from the QML.
This allows creating this dialogue from a message button without needing to put it in the base application.

Contributes to issue CURA-8609.
2021-10-04 16:23:28 +02:00
Konstantinos Karmas
1f5672acca Check if new materials were installed on initialization
When the MaterialManagementModel is initialized, it will check whether during this startup new materials were installed. If that's the case, then it will show the prompt message to sync those materials with the printers, which should initiate the sync materials flow.

CURA-8254
2021-10-04 15:55:06 +02:00