Commit graph

1768 commits

Author SHA1 Message Date
Jaime van Kessel
b689a84bcb
Add explicit typing 2022-08-30 13:09:53 +02:00
Jaime van Kessel
718d3790e2
Clean up iterating over cluster list
CURA-8463
2022-08-30 13:07:19 +02:00
Jaime van Kessel
7eabbd7b5c
Convert _updateOnlinePrinters to static
CURA-8463
2022-08-30 11:52:13 +02:00
Jaime van Kessel
f4c4b52d9b
Update typing to reflect new message that is being used
CURA-8463
2022-08-30 11:49:09 +02:00
Jaime van Kessel
ce3ab62c91
Move RemovedprintersMessage to it's own class
The OutputDeviceManager is just too bloated to properly make sense of.
So I'm trying to move as much code out of it so I can start to make sense of it

CURA-8463
2022-08-30 11:45:30 +02:00
Jaime van Kessel
45e7d15c80
Add documentation for _onDiscoveredDeviceRemoved 2022-08-30 11:36:47 +02:00
Jaime van Kessel
7f9984cd16
Also move remainder of NewPrinterDetected logic to it's own class
This should make the CloudOutputDeviceManager a bit more readable

CURA-8463
2022-08-30 11:33:20 +02:00
Jaime van Kessel
a429a93e94
Move new printers detected message to it's own class
CURA-8463
2022-08-30 11:26:09 +02:00
Jaime van Kessel
8e9056df71
Rename function to better reflect what it does
CURA-8463
2022-08-30 11:11:00 +02:00
Jaime van Kessel
d35441603b
Rename variables so it's easier to understand what is what
CURA-8463
2022-08-30 11:06:09 +02:00
Jaime van Kessel
30bc0d04bf
Add more typing & documentation
Even more boyscouting. This code seems to be far too complex for what it should be...

CURA-8463
2022-08-30 11:04:15 +02:00
Jaime van Kessel
21b8f083f2
Ensure that UI actually updates when adding remote printers
More boyscouting. The documentation that it had before was actually false...
CURA-8463
2022-08-30 11:03:04 +02:00
Jaime van Kessel
24f85bae06
Use new style string formating
Moar boyscouting

CURA-8463
2022-08-30 10:52:21 +02:00
Jaime van Kessel
ed33596357
Rename device to global_stack
Device was used in the rest of this class for the output device, not
for a machine. This was a bit confusing

CURA-8463
2022-08-30 10:46:10 +02:00
Jaime van Kessel
f8ebf98df3
Update typing hints to new style
More boyscouting as I try to understand this code
CURA-8463
2022-08-30 10:43:53 +02:00
Jaime van Kessel
4ac8229c33
Clean up codestyle violations
Boyscouting! CURA-8463
2022-08-30 10:28:22 +02:00
Jaime van Kessel
36d3a92fc0
Fix gramar mistake in documentation
CURA-8463
2022-08-26 13:27:58 +02:00
joeydelarago
17e6bccf51 Create abstract printers when adding lan printers.
CURA-9514
2022-08-24 10:07:17 +02:00
jspijker
54e9dbf827 Show device name of failed machine creation in log
CURA-9277 Detect and Load Specific printers and Cloud Printer Types
2022-08-22 14:57:37 +02:00
Casper Lamboo
12f3581337
Assign result of createAbstractMachine to a variable
With prepended underscore to highlight the result of the function is not being used.

CURA-9277
2022-08-22 14:44:45 +02:00
c.lamboo
d7f119415f Use pretty-printed string for the AbstractMachine name
Cura-9277

Co-authored-by: joeydelarago <joeydelarago@gmail.com>
2022-08-19 16:35:00 +02:00
c.lamboo
761bf3b8fa Fix creating abstract machines on account sync
Cura-9277

Co-authored-by: joeydelarago <joeydelarago@gmail.com>
2022-08-19 14:44:19 +02:00
joeydelarago
b82f1f4a8c Add new Abstract machine stack type. This represents a type of printers (ultimaker_s3 etc).
These are created whenever a cloud printer of a new printer type is added.

CURA-9277

Co-authored-by: casperlamboo <c.lamboo@ultimaker.com>
2022-08-19 13:53:43 +02:00
Ghostkeeper
8a55a2aff6
Further review suggestions
Contributes to issue CURA-9220.
2022-08-01 10:49:29 +02:00
Ghostkeeper
7c1a254812
Add newlines before properties
As suggested in the code review.

Contributes to issue CURA-9220.

Co-authored-by: Jelle Spijker <j.spijker@ultimaker.com>
2022-08-01 10:47:57 +02:00
Ghostkeeper
615f16bda0
Hide 'show in browser' when the user can't visit the printer overview
No use then. They can't visit that page.

Contributes to issue CURA-9220.
2022-07-26 16:57:07 +02:00
Ghostkeeper
19ba092340
Add property of whether the printer details can be read
We'd assume so, but there is a permissions node for it. If it can't be read by the user, they can't navigate to the printer's overview page. So we should hide the button then.

Contributes to issue CURA-9220.
2022-07-26 16:56:19 +02:00
Ghostkeeper
e9f9730364
Don't show context menu button if it is empty
It will likely be empty for guest accounts on networks where the administrator is the only one with rights to access other people's prints.

Contributes to issue CURA-9220.
2022-07-26 16:36:38 +02:00
Ghostkeeper
5eb340e3f0
Check permissions before showing abort/pause/delete context buttons
The user needs permissions to do these things, so don't show them if the user can't use them.

Contributes to issue CURA-9220.
2022-07-25 17:34:34 +02:00
Ghostkeeper
99d93fa58a
Check if the user can change the queue before showing option
If the user can't change the queue of other prints, then it can't move prints to the top.

Contributes to issue CURA-9220.
2022-07-25 17:07:52 +02:00
Ghostkeeper
bef10b8b35
Hide print queue if the user can't read the print queue
If there are no permissions, this would result in an error and a supposedly empty queue. That's incorrect. It should make it more clear that the user has no permissions to view the queue, while appearing that it is the normal workflow (it is for that user). So hide the queue entirely, just like with the UM2+C.

Contributes to issue CURA-9220.
2022-07-25 16:57:47 +02:00
Ghostkeeper
9e1940dd4b
Move default behaviour up in inheritance hierarchy
This way, any new printer types we define will automatically get these properties that are used by the monitor stage anyway.

Contributes to issue CURA-9220.
2022-07-25 16:55:05 +02:00
Ghostkeeper
b4c4371929
Add properties of whether the queue can be manipulated
Not all printers can do that.

Contributes to issue CURA-9220.
2022-07-25 16:51:13 +02:00
Ghostkeeper
483911dc4a
Fix error of undefined property when using LAN printers
This property was defined for Cloud printers, but not for Network printers. In QML this then resulted in an error saying that null cannot be assigned to a bool (for the 'visible' property). The visible property then defaulted to its default, true. And so it was always visible, but still had an error.
The error is now solved so that I can also check for other properties in this visible check.

Contributes to issue CURA-9220.
2022-07-25 16:49:48 +02:00
Ghostkeeper
fb3f065fe0
Catch ValueErrors from removing callbacks that were already removed
This can happen from asynchronous access.

Fixes Sentry issue CURA-3YV.
2022-06-07 13:55:56 +02:00
c.lamboo
d5c0fde7f2 Render labels using Text.QtRendering on OSX
Fonts were looking a bit to thick on when using `Text.NativeRendering`, so using `Text.QtRendering` instead. After this the font weight looks identical to figma (as far as I can see).

In this commit I also changed all `Label`'s to `UM.Label`'s and removed default properties where I could.

CURA-9154
2022-05-10 15:40:09 +02:00
c.lamboo
35f5c3f959 Revert "Render labels using Text.QtRendering on OSX"
This reverts commit f0e3c19a34.
2022-05-10 15:39:02 +02:00
c.lamboo
f0e3c19a34 Render labels using Text.QtRendering on OSX
Fonts were looking a bit to thick on when using `Text.NativeRendering`, so using `Text.QtRendering` instead. After this the font weight looks identical to figma (as far as I can see).

In this commit I also changed all `Label`'s to `UM.Label`'s and removed default properties where I could.

CURA-9154
2022-05-10 15:36:50 +02:00
Jelle Spijker
334fca6691
Merge remote-tracking branch 'origin/gracefully_fail_cloud_printer' into 5.0 2022-05-09 10:54:07 +02:00
Jaime van Kessel
0c98ce2384 Use correct role for standardbutton
Otherwise the no won't register...

CURA-9229
2022-05-04 11:09:49 +02:00
fieldOfView
b622738ae3 Fix missing icons since move to PyQt6 2022-04-22 22:33:14 +02:00
Remco Burema
0232b4f639 Upgrade SDK version to 8.0.0 for Cura 5.0 2022-04-20 10:57:38 +02:00
Jaime van Kessel
e4e993a44e Fail gracefully when adding unknown cloud printer 2022-04-19 15:43:31 +02:00
Jaime van Kessel
c9e625767b Use right enum for message dialog 2022-04-13 16:40:14 +02:00
Ghostkeeper
70fdffb1c9
Allow redirects when talking with printer API
Because newer firmware will redirect this API call.

Contributes to issue CURA-9119.
2022-04-11 13:23:03 +02:00
Ghostkeeper
0deac84ec2
NetworkError is an enum, no longer comparable as int
With the Qt6 upgrade, we have to treat enums as full enums, within their normal class namespace and such. They are no longer just integer-globals static in the QtCore.Qt class. They are no longer treated as integers by PyQt.
Other places that checked for such errors were already doing it like this.

Contributes to issue CURA-9100.
2022-04-11 10:00:32 +02:00
c.lamboo
45bc498c7f Replace RecolorImage with ColorImage
CURA-8640
2022-04-08 15:55:34 +02:00
j.delarago
2ffcfafc77 Some place RegularExpressionValidator can't be found in QtQuick 2.10 but can be in 2.15 so all files using RegularExpressionValidator have been bumped to latest QtQuick
CURA-8640
2022-04-05 16:10:39 +02:00
j.delarago
2f96f7b410 RegularExpressionValidator requires newer version of QtQuick
CURA-8640
2022-04-04 10:45:00 +02:00
Jaime van Kessel
4520fc15f9 Fix display of UM monitor page 2022-04-01 13:45:11 +02:00