8737 Commits

Author SHA1 Message Date
Ghostkeeper
8c086b9fd7
Align everything to top
This seems to be the alignment in the design. Also gets rid of binding loops because we automatically adjust the height so you can't align to the centre or the bottom then.

Contributes to issue CURA-8561.
2021-11-09 15:58:37 +01:00
Ghostkeeper
abe8347523
Fix QML warning about not having parents
It seems that the ListView doesn't always set the parent element correctly if it's not yet in view. This is a workaround that seems to work fine to remove the QML warnings about parent not being defined.

Contributes to issue CURA-8561.
2021-11-09 15:54:42 +01:00
Ghostkeeper
2ce31d0e71
Add placeholder image
The 'CicleOutline' image doesn't exist. There is no design for this image so I'm adding the placeholder that the previous Marketplace had.

Contributes to issue CURA-8561.
2021-11-09 15:51:34 +01:00
Ghostkeeper
4014562cdc
Use rows and columns instead of anchors for layout
This is in my opinion much easier to follow and maintain.

It also fixes the layout. The original code had a lot of overlapping parts.

Contributes to issue CURA-8561.
2021-11-09 15:47:09 +01:00
Ghostkeeper
e0508b0f4f
Correct size and margins for package icon
Contributes to issue CURA-8561.
2021-11-09 15:08:33 +01:00
Remco Burema
51c5572f0f
Add draw-range behaviour to legacy-mode shaders. 2021-11-08 21:39:12 +01:00
Remco Burema
f486177465
Remove dead (shader) code.
These shader (files) are now only used for compatability mode. The 'modern' code is found in the '...3d.shader' versions of these files.
2021-11-08 21:37:57 +01:00
Ghostkeeper
dcf78b4885
Merge branch '4.12'
Conflicts:
	resources/i18n/de_DE/fdmprinter.def.json.po -> German translations got some fixes in master while we also updated the new translations for 4.12.
2021-11-08 13:55:09 +01:00
Ghostkeeper
db637802bd
First translate, then process replacement keys
If we first process the replacement keys, the replaced string can't be found in the translation database, so you don't get a translation of the phrase 'Finishes x at y'.

Fixes #10718.
2021-11-08 13:49:54 +01:00
Jaime van Kessel
561d0784f8 Merge branch 'CURA-8522_pause_extrusion_interruption' of github.com:Ultimaker/Cura 2021-11-08 10:23:49 +01:00
Remco Burema
4f20dc4c5d
Add documentation. 2021-11-07 22:26:34 +01:00
Remco Burema
6dff2bebb5
Merge branch 'master' into bremco-graphics_buffer_update 2021-11-07 22:12:17 +01:00
Ghostkeeper
fd5b248296
Don't register a new layer if not extruding a line
We do retracts/unretracts on different heights sometimes, for instance after a pause. This would get seen as a new layer. It's quite safe to say that purely retracts and unretracts on a different height do not constitute a layer in a normal g-code file. There would be nothing to draw anyway.

Contributes to issue CURA-8522. Fixes #10282.
2021-11-05 21:04:37 +01:00
Ghostkeeper
74ff28cbea
Only unretract/retract when necessary for priming
Otherwise this is quite a useless move and would only cause blobs on the print.

Found during work on CURA-8522.
2021-11-05 21:03:03 +01:00
Remco Burema
bb51dc7d14
Gather and show required information.
Also add 'Downalod' icon. Still very much WIP and nonfunctional.

part of CURA-8561
2021-11-05 18:44:31 +01:00
Lorenzo Romagnoli
2cdda695e9
adjusted style of hover and button sizes (#10739)
adjusted style of hover and button sizes

Co-authored-by: Jaime van Kessel <nallath@gmail.com>
2021-11-05 10:15:35 +01:00
Remco Burema
e93ecd3699
Move what is already there of 'package card' to it's own file.
part of CURA-8561
2021-11-05 09:26:27 +01:00
Jelle Spijker
64271d0a0c
Merge pull request #10712 from Ultimaker/fix_undo_redo_support_blocker
Fix undo and redo for support blocker
2021-11-05 09:22:11 +01:00
Jelle Spijker
a0467cd66f
Fixed hard crash when deconstructing RemotePackageList while parsing
Contributes to CURA-8558
2021-11-04 10:39:00 +01:00
Jelle Spijker
fd409215c4
Tooltip shows point
Per UX request

Contributes to CURA-8558
2021-11-04 10:05:35 +01:00
Jelle Spijker
cbf83e500d
Changed behaviour of hoover over button
Per request of UX

Contributes to CURA-8558
2021-11-04 10:04:59 +01:00
Jelle Spijker
a58891ce58
Fixed the loading spinner not spinning at first construction
Contributes to CURA-8558
2021-11-04 08:23:47 +01:00
Jelle Spijker
11b3b08198
Implemented code review suggestions
Contributes to CURA-8558
2021-11-04 08:23:46 +01:00
Jelle Spijker
e01e47b8fa
Performance increase for obtaining LocalPackages
The speed increase on the function when running Yappi
`LocalPackageList.updatePackages`
| original | now  |
|----------|------|
|  14 ms   | 4 ms |

Contributes to CURA-8558
2021-11-04 08:23:46 +01:00
Jelle Spijker
3a94fc0ced
Apply suggestions from code review
Applied code review comments

Co-authored-by: Jaime van Kessel <nallath@gmail.com>
2021-11-03 17:58:16 +01:00
Jelle Spijker
e7aecb6c06
Fixed mypy typing failure
@ghostkeeper being nerd snipped
It's giving that typing failure because the section variable is re-used.
First as elements from self._getSections (strs) and then as elements
from sorted_sections.values() (List[PackageModel]s). Python has no
variable scopes within functions so the variable still exists after the
first for loop.

Contributes to CURA-8558
2021-11-03 16:29:35 +01:00
Jelle Spijker
07fcf8b533
Fixed missing qoutes
:face_palm:

Contributes to CURA-8558
2021-11-03 16:01:43 +01:00
Jelle Spijker
8785198a0e
Merge branch 'marketplace_redesign' into CURA-8558_introduce_manage_package_list 2021-11-03 15:54:40 +01:00
j.spijker@ultimaker.com
f9f43b79b0
Don't pollute the package_info with section_title
The previous implementation added a section_title to the package_info
which was also stored in the packages.json. The section_title is now
provided to the PackageModel as an extra optional argument.

Contributes to CURA-8558
2021-11-03 15:15:46 +01:00
j.spijker@ultimaker.com
edc71f12a3
Updated documentation and typing
Contributes to CURA-8558
2021-11-03 15:15:46 +01:00
j.spijker@ultimaker.com
0218703592
To be installed packages are still listed for the current session
A user might still need to interact with a **to be installed** package.
But the current package list doesn't list that package anymore.

Introduced a `getPackagesToInstall()` method in the Uranium PackageManager
to circumvent this issue.

Contributes to CURA-8558
2021-11-03 15:15:45 +01:00
j.spijker@ultimaker.com
080e3b9f27
To be removed packages are still listed for the current session
A user might still need to interact with a **to be removed** package and
it is also still being used in the current Cura session. But the current
package list doesn't list that package anymore.

Introduced a `getPackagesToRemove()` method in the Uranium PackageManager
to circumvent this issue.

Contributes to CURA-8558
2021-11-03 15:15:45 +01:00
j.spijker@ultimaker.com
8fad2e0f39
Changed section header for Installed Plugins
As agreed with UX changed: `Installed Cura Plugins` to `Installed Plugins`

Contributes to CURA-8558
2021-11-03 15:15:45 +01:00
Jaime van Kessel
7c5bfef318 Fix crash when switching between material & plugin tab 2021-11-02 16:47:08 +01:00
j.spijker@ultimaker.com
5db6e50dee
Fixed typo
not plug-ins but plugins

Contributes to CURA-8558
2021-11-02 16:21:27 +01:00
j.spijker@ultimaker.com
1b7b0b9caf
Sort the different sections and packages
The order in which UX defined the different sections are:
- Installed Cura Plugins
- Installed Materials
- Bundled Plugins
- Bundled Materials

All packages need to be order at least by section, but I also took
the liberty to sort the packages in these sections by Alphabet.

Contributes to CURA-8558
2021-11-02 16:21:27 +01:00
j.spijker@ultimaker.com
3f700e5d0c
Only show Footer when the packagelist is paginated
It doesn't make sense to show a footer when items are retrieved in one
go. Except when an error occurs.

Contributes to CURA-8558
2021-11-02 14:34:36 +01:00
j.spijker@ultimaker.com
c4c99f6657
Added sections to the packagelists
By providing a `section_title` with a string to the `package_data`
packages can be subdivided in sections, each with its own header.
For remote packages this will be `None` and therefore no sections are
created there.

Contributes to CURA-8558
2021-11-02 14:34:35 +01:00
j.spijker@ultimaker.com
397baebda4
Changed deprecated qml syntax
Contributes to CURA-8558
2021-11-02 14:34:35 +01:00
j.spijker@ultimaker.com
b53a9840f3
Moved ManagePackagesButton to its own file
For better readability

Contributes to CURA-8558
2021-11-02 14:34:35 +01:00
Remco Burema
89ab394dc0
Code-style, revert unilateral descisions.
- Capitalization for camelCase.
- Indentation.
- We don't really even _have_ a concept of what a 'Beta' for a script is, and this was a unilateral descision from a single contributor instead of validated by the proper channels like QA, V&V, etc.
- Pretty sure that while those labels aren't used _within_ Cura proper, other people (and maybe plugins?) rely on them for (further)post-processing. Also the distinction between CAZO and CAZD was lost.

part of CURA-8655
2021-11-02 09:09:02 +01:00
Remco Burema
e286b17bd9
Merge branch 'master' of https://github.com/legend069/Cura into legend069-master 2021-11-02 08:45:27 +01:00
Jelle Spijker
86d5d315bc
Differentiate between local and remote packages
There is a distinction between packages which are already
installed on the local machine and packages which are
available on the remote server. Even with this difference
it is important that they are handled the same and can be
reused in the same GUI elements.

In order to reduce code duplication I created a parent object
PackageList which contains the base logic and interface for
the QML and let both RemotePackageList and LocalPackageList
inherit from this.

UX specified that the gear icon (Settings.svg) should be
separate from the tabs of material and plugins. This also
ment that the current tab  item couldn't set the pageTitle
anymore. This is now defined in the Package component and
set when the loader has loaded the external QML file.

Contributes to CURA-8558
2021-11-01 17:12:18 +01:00
Jaime van Kessel
cd68434611 Merge branch '4.12' of github.com:Ultimaker/Cura 2021-11-01 11:50:47 +01:00
Jaime van Kessel
366ef4ca06 Fix undo and redo for support blocker
The translate wasn't done via an operation, so it wouldn't go back to the same
state after an undo / redo

Fixes #10648
2021-10-31 17:21:51 +01:00
Ghostkeeper
03e1fc34b4
Change page title depending on selected tab
Contributes to issue CURA-8557.
2021-10-29 15:51:41 +02:00
Jaime van Kessel
7e674a18b3 Change the logging of operationcancelled to debug instead of error
THe operation being cancelled is not an error; it's an expected action, since
it happens after the user closes the window.

CURA-8557
2021-10-29 11:34:11 +02:00
Jaime van Kessel
afe9c0c633 Change naming from plugin to packages
CURA-8557
2021-10-29 11:22:00 +02:00
Jaime van Kessel
87db24f14c Don't check validation for settings in error state
CURA-8656
2021-10-29 10:39:00 +02:00
Ghostkeeper
3e64b7cb66
Abort request when PackageList gets deleted
This is a consequence of lazy loading and the re-loading we do when the Marketplace window gets closed. This solves a crash with reproduction steps:
1. Open the Marketplace.
2. Quickly close the Marketplace.
3. Quickly re-open the Marketplace.
4. The API responds to the request made by the first opening of the Marketplace.

This crashed because when the Marketplace first opened, it made a request to the API with the HttpRequestManager. This request takes a while to respond to. If you close and re-open the Marketplace, the PackageList gets destroyed and a new one gets made. The HttpRequestManager eventually gets a response and wants to call the callback of the first PackageList, but that one got destroyed in the Qt engine so it'll throw an error saying that the object doesn't exist any more.

Contributes to issue CURA-8557.
2021-10-29 10:10:57 +02:00