Commit graph

26823 commits

Author SHA1 Message Date
Ghostkeeper
6b6b6f613f
Remove superfluous pyqtSlot marking
This can already be set via the isLoading property. What's more, it really only ever needs to be called from Python. I just added the fset because we have the setter anyway.

Contributes to issue CURA-8556.
2021-10-25 15:43:41 +02:00
Ghostkeeper
476321be5c
Remove log entry for when Marketplace QML fails to load
This is already logged with a warning by the QML engine.

Contributes to issue CURA-8556.
2021-10-25 15:38:54 +02:00
Ghostkeeper
77d1bebbdb
Put PackageList in Marketplace namespace
This way it's not available to the rest of Cura, especially since PackageList is not such an uncommon name. It could give name collisions. Moreover, the rest of Cura doesn't need to have a list of packages from the Marketplace, so it's better separation.

Contributes to issue CURA-8556.
2021-10-25 15:35:28 +02:00
Ghostkeeper
797ff9c573
Turn new Marketplace button into button with text instead of icon
The Marketplace icon is apparently confusing to use for the Marketplace in Cura and should only be used for the website version.

Contributes to issue CURA-8556.
2021-10-25 11:08:14 +02:00
Jaime van Kessel
43b8476572 Remove unneeded parenthesis
CURA-8556
2021-10-25 10:38:36 +02:00
Jaime van Kessel
37ccf5b823 Add missing return types on init
CURA-8556
2021-10-25 10:37:02 +02:00
Ghostkeeper
daf450142b
Implement error handling and showing error state
If an error occurs, the error message is stored in the list model, so that it can be shown with the list.

Contributes to issue CURA-8556.
2021-10-25 01:56:57 +02:00
Ghostkeeper
bca2f36186
Use states rather than individually switching properties
This is necessary because we'll add a fourth state here: An error state. This would get quite complex otherwise.

Contributes to issue CURA-8556.
2021-10-25 01:28:37 +02:00
Ghostkeeper
aed52cea74
Split functionality of the two marketplace buttons
One now opens the old one again. One still opens the new one (but with a new name).

Contributes to issue CURA-8556.
2021-10-25 01:11:26 +02:00
Ghostkeeper
7796abd55b
Revert "Revert "Add new button to open the Marketplace""
This reverts commit aa4b7ddb8b.
Apparently it is now in scope again for the button to be there. It's in the requirements and the requirements are holy. Whoopteedoo.

Contributes to issue CURA-8556.
2021-10-25 00:51:26 +02:00
Ghostkeeper
1ab677f5dd
Add state for when it's loading
This has a slight bug in that the icon will immediately change to an arrow once loading has completed, but will slowly rotate back to angle 0. You don't see this, since the new plug-ins will come in between. The new plug-ins will always be a full page, or otherwise the icon disappears altogether and it's not visible anyway. But if you hold down the scrollbar while loading and quickly scroll down when loading completed, you can see this happen. I don't think anyone will really mind though.

Contributes to issue CURA-8556.
2021-10-21 18:37:02 +02:00
Ghostkeeper
e3cd5606f0
Make load more button load more packages
This adds the functionality of the button.

Contributes to issue CURA-8556.
2021-10-21 18:26:29 +02:00
Ghostkeeper
46ad1ad077
Add disabled state for load more button
Can't click on the button then.

Contributes to issue CURA-8556.
2021-10-21 18:25:33 +02:00
Ghostkeeper
8776294932
Set loading state to False once parsing has completed
This allows the user to request the next one.

Contributes to issue CURA-8556.
2021-10-21 18:23:19 +02:00
Ghostkeeper
35ec8f7190
Add basic layout for button to load more packages
Contributes to issue CURA-8556.
2021-10-21 18:06:52 +02:00
Ghostkeeper
27da03d862
Add a property to see whether there are any more packages to load
Contributes to issue CURA-8556.
2021-10-21 17:10:32 +02:00
Ghostkeeper
1320d8c9f4
Add a simplistic design for a card for each package
It just displays the package name for now.

Contributes to issue CURA-8556.
2021-10-21 17:09:12 +02:00
Ghostkeeper
031c8efbe6
Implement pagination for package list
The simplest way I can think of.
Currently we only call the request function once, so we can only get the first page. Before calling it multiple times, we should check if there are more pages by checking if the request URL is an empty string.

Contributes to issue CURA-8556.
2021-10-21 16:56:53 +02:00
Ghostkeeper
b585c02207
Add background to page content, and restructure margins
To display the background across the entire bottom side and not with the margins of the column, we have to restructure where the margins are a bit.

Contributes to issue CURA-8556.
2021-10-21 16:35:54 +02:00
Ghostkeeper
38038b3752
Store items directly in listModel when parsing them
No need to use a custom list in Python and update the ListModel from that. This is much simpler and more efficient.

Contributes to issue CURA-8556.
2021-10-21 16:10:23 +02:00
Ghostkeeper
6415a2649e
Parse responses from package API call
Only positive responses so far. Error handling is not implemented yet.

Contributes to issue CURA-8556.
2021-10-21 16:02:46 +02:00
Ghostkeeper
3138452f94
Allow PackageList to be used as a model from QML
QML is leading here and holding the pointers for creation and destruction.

Contributes to issue CURA-8556.
2021-10-21 15:46:46 +02:00
Ghostkeeper
4337e81b77
Make request to Marketplace API when package list loads
We don't parse the response just yet, but this is part of the work.

Contributes to issue CURA-8556.
2021-10-21 15:33:37 +02:00
Ghostkeeper
5851ad52c6
Add property to tell if the list is currently loading or loading more
We'll need to display a spinner of some kind in the front-end, I think.

Contributes to issue CURA-8556.
2021-10-21 15:15:56 +02:00
Ghostkeeper
0f5c923d93
Add model to represent packages and export information to QML
We'll construct a bunch of these when we receive information from the API.

Contributes to issue CURA-8556.
2021-10-21 15:03:41 +02:00
Ghostkeeper
cf2b0d2777
Add empty ListModel to store list of packages with
This model does nothing yet.

Contributes to issue CURA-8556.
2021-10-19 17:48:21 +02:00
Ghostkeeper
ffce865c85
Add constant for API URLs
I figured this out now. Don't want to forget it. We'll need it later anyway.

Contributes to issue CURA-8556.
2021-10-19 17:47:40 +02:00
Ghostkeeper
97edf59660
High-level layout of Marketplace window
Currently just a title and a page. The title is separate because in between there will be the tabs selecting which page is shown. The title will also change depending on that, but that'll have to be implemented separately. The page is loaded with a loader to make it efficient, and also to make it extensible when the tabs get implemented in a follow-up ticket.

Contributes to issue CURA-8556.
2021-10-19 16:50:57 +02:00
Ghostkeeper
8beac74417
Let Marketplace button open Marketplace instead of Toolbox
This hijacks the button to open something else. The old Toolbox is no longer accessible now.

Contributes to issue CURA-8556.
2021-10-19 13:46:21 +02:00
Ghostkeeper
c35b1f4135
Bring window into focus when it opens
It can be behind the Cura main window now, where the user won't see it if it was already open.

Contributes to issue CURA-8556.
2021-10-19 13:45:25 +02:00
Ghostkeeper
5897b3de38
Add function to open Marketplace window
This will now load in a QML file, cache it, and create an empty window with the title 'Marketplace'.

Contributes to issue CURA-8556.
2021-10-19 13:43:41 +02:00
Ghostkeeper
aa4b7ddb8b
Revert "Add new button to open the Marketplace"
This reverts commit 648aa3d84c.
Apparently we don't want to retain the old Toolbox alongside, not even during development.

Contributes to issue CURA-8556.
2021-10-19 13:09:22 +02:00
Ghostkeeper
73ad2a4e08
Add Marketplace plug-in, starting a rewrite from the Toolbox
This plug-in will be a complete re-write of the previous Toolbox plug-in. It's intended to solve some of the inherent architectural problems with the Toolbox.
We're calling it Marketplace now as well.

Contributes to issue CURA-8556.
2021-10-19 13:06:04 +02:00
Ghostkeeper
648aa3d84c
Add new button to open the Marketplace
For now this button opens the same Marketplace. I must maintain both Marketplaces side-by-side for the moment though.

Contributes to issue CURA-8556.
2021-10-18 17:49:55 +02:00
Ghostkeeper
7680124f7e
Merge branch 'master' of https://github.com/mlapkin/Cura into mlapkin-master 2021-10-18 17:36:46 +02:00
Jelle Spijker
666880ad20
Only show certain App Switcher icons when account has DF access
Added a dictionary where additional user rights can be set.
A plugin such as the DigitalFactory can update this dictionary
if certain account rights change. The `account.additionalRights`
is intended to allow us some flexibility, without breaking the API
in the future.

The Application Switcher now queries the additional account rights,
which is updated by the DF plugin to only show `My printers`,
`Digital Library` and `Print jobs` when the user has access to the
DF.

Contributes to CURA-8624
2021-10-18 15:37:06 +02:00
Jelle Spijker
629f695ef7
Only show certain Application Switcher links when logged in
Some links in the application only make sense to
forward a user when they are logged into the DF.
Since we don't expose yet if the user has access
to the DF it will now only check if they are
logged in.

Contributes to CURA-8624
2021-10-18 15:37:06 +02:00
mlapkin
efa292e28d
Update fdmprinter.def.json.po
Fix translation of 'order'.
2021-10-18 18:37:56 +07:00
Ghostkeeper
89c5a38afa
Use a neutral e-mail address
If I end up under a bus, these e-mails will then still arrive somewhere.
2021-10-16 11:52:29 +02:00
Ghostkeeper
a349606fef
Make my name more anonymous
Yes, it's my name. I'm okay with people learning that if they are really looking. I'm less okay with search engines learning that. Removing my name here linked to my nickname will eventually cause search engines to unlink it too.
2021-10-16 11:45:48 +02:00
Ghostkeeper
a1a4d421ca
Consistent user-visible naming of Arjun Pro printers
Contributes to issue CURA-8580.
2021-10-15 16:13:31 +02:00
Ghostkeeper
57f4807f98
Update setting_version to 19
This was committed before we implemented that version upgrade. But we do it now. This requires that we update references to the FLSun SR printer, but obviously there are none in here.

Contributes to issue CURA-8580.
2021-10-15 16:12:27 +02:00
Ghostkeeper
41e662fb6a
Merge branch 'master' of https://github.com/venkatkamesh/Cura into venkatkamesh-master 2021-10-15 16:07:59 +02:00
Ghostkeeper
c6d92dc8d6
Fix combing mode override
This needs quotes, since it's a Python expression. Otherwise it would get interpreted as a variable name which doesn't exist.

Contributes to issue CURA-8627.
2021-10-13 17:23:09 +02:00
Ghostkeeper
f0262abbb5
Combine two property overrides in one setting, for proper JSON
Otherwise the maximum gets ignored because the JSON results in a dict where the keys are unique. So the second one happens to get skipped then.

Contributes to issue CURA-8627.
2021-10-13 15:46:35 +02:00
Ghostkeeper
43897b60d8
Properly use strings as values for enums in setting overrides
This is interpreted as a Python function, so if it doesn't have those quotes it'll be interpreted as a variable name, and that variable doesn't exist.

Contributes to issue CURA-8627.
2021-10-13 15:42:46 +02:00
Jelle Spijker
246c986d95
Merge pull request #10605 from Ultimaker/CURA-8550_lightning_infill
CURA-8550 Added lightning infill description and sub-settings level.
2021-10-13 12:21:29 +02:00
Konstantinos Karmas
f68d915235
Merge pull request #10509 from Ultimaker/PP-1-Improved_print_profiles
Various print profile improvements for the UM3, S3 and S5
2021-10-12 16:10:48 +02:00
p.kuiper
7deb31db98 Bug fixes.
- Removed default value when value is already set.
 - Make sure UM3 and UM3 extended variants are the same
2021-10-12 12:54:26 +02:00
p.kuiper
17ea8d0de7 Merge remote-tracking branch 'origin/PP-1-Improved_print_profiles' into PP-1-Improved_print_profiles
# Conflicts:
#	resources/definitions/ultimaker3.def.json
#	resources/definitions/ultimaker_s3.def.json
#	resources/definitions/ultimaker_s5.def.json
2021-10-12 09:31:20 +02:00