Commit graph

27293 commits

Author SHA1 Message Date
Ghostkeeper
7a1c3e1bd5
Use customised TableView for Keep/Discard Changes dialogue
Had to make some more modifications to get it to work again this time, due to the way the width of the table scales with the dialogue. But it's nice now.

Contributes to issue CURA-8686.
2022-01-26 16:30:50 +01:00
Ghostkeeper
ec21b167d0
Resize columns when TableView is resized
They should retain their width proportionally.
This also fixes a case where the width of the TableView was initialised as 0 but then changed for some anchors due to weird bindings. Because it now updates the tableView when the width is changed.

Contributes to issue CURA-8686.
2022-01-26 16:29:09 +01:00
Ghostkeeper
fa177f5192
Implement section headers
I'm not real happy with the limitations I had to work with here. The TableView can only accept a table of strings, so I basically had to fit everything into editing this dictionary of strings. Not the best. But it's very effective.

Contributes to issue CURA-8686.
2022-01-26 15:37:17 +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
c973be3115
Use new TableView for profile overview
This requires some more changes that are not yet implemented: Italic text for things that were changed in the profile, and section headers. Let's see what I can do...

Contributes to issue CURA-8686.
2022-01-26 11:39:23 +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
e607ae7b92
Show tooltip if text got elided
This way you can still see the whole text, even if the cell is too small. Handy.

Contributes to issue CURA-8686.
2022-01-26 11:24:41 +01:00
Ghostkeeper
f22fea5f22
Scroll back to top when contents of table change
Contributes to issue CURA-8686.
2022-01-25 19:05:54 +01:00
Ghostkeeper
2a5abfdb01
Downgrade UM version, re-implementing scroll bar
This plug-in needs to be compatible with Cura 4.9 and up, which means we can't use UM.ScrollBar.

Contributes to issue CURA-8686.
2022-01-25 18:53:52 +01:00
Ghostkeeper
c6eb1e668d
Rename tableScrollView to tableBase
It is no longer a scrollview, after all, since the TableView itself already scrolls (and leaves the header nicely at the top this way).

Contributes to issue CURA-8686.
2022-01-25 18:51:03 +01:00
Ghostkeeper
83953b03b4
Use new table element for saving files as well
Re-using that component.

Contributes to issue CURA-8686.
2022-01-25 18:48:45 +01:00
Ghostkeeper
a4ef86609f
Implement option to disable selections
Sometimes you don't want the user to be able to highlight certain rows.

Contributes to issue CURA-8686.
2022-01-25 18:48:06 +01:00
Ghostkeeper
6457410a53
Copy new Table implementation to Cura.TableView
There we can re-use it. We can't re-use that implementation from the Digital Library itself, since that plug-in needs to be compatible with older Cura versions as well.

Contributes to issue CURA-8686.
2022-01-25 18:37:34 +01:00
Ghostkeeper
39e29ae768
Fix QML warning of 0 height from before table is filled
If there is no model data, the cells will be empty and would have a height of 0. The table warns us that a height of 0 is not allowed.

Contributes to issue CURA-8686.
2022-01-25 18:34:04 +01:00
Ghostkeeper
2429f28b7f
Limit column widths to not exceed the total width of the table
A bit clunky, but very effective!

This way we don't have to deal with clipping or scrolling horizontally.

Contributes to issue CURA-8686.
2022-01-25 18:31:43 +01:00
Ghostkeeper
279c23f5aa
Elide header text too
Otherwise it just overlaps with the next column.

Contributes to issue CURA-8686.
2022-01-25 18:26:15 +01:00
Ghostkeeper
c6717c67f4
Don't let table overlap lining
Contributes to issue CURA-8686.
2022-01-25 18:24:38 +01:00
Ghostkeeper
88bf1995c0
Fix cell height adjusting to content
To be honest, I'm not entirely sure why it only works here if I use implicitHeight instead of height.

Contributes to issue CURA-8686.
2022-01-25 18:22:38 +01:00
Ghostkeeper
bbb40d9b11
Allow double-clicking on a file to open it
Contributes to issue CURA-8686.
2022-01-25 18:19:08 +01:00
Ghostkeeper
a7da4e4ef9
Fix integration with new table view
Only a single selected item for the moment.

Contributes to issue CURA-8686.
2022-01-25 18:11:30 +01:00
Ghostkeeper
59494cdace
Implement selection
Contributes to issue CURA-8686.
2022-01-25 18:03:45 +01:00
Ghostkeeper
5671b6c61f
Replace TableView with custom implementation
I intend to copy this implementation to mainline Cura when it's done.

Contributes to issue CURA-8686.
2022-01-25 17:51:48 +01:00
Ghostkeeper
2758957d5c
Use TabRow for material page selection
The contents of the page is done with a simple page that becomes visible or not. The easiest solution I could think of. No StackLayout necessary here.

Contributes to issue CURA-8686.
2022-01-25 13:57:47 +01:00
Ghostkeeper
cfafdf878a
Move contents of ProfileTab to ProfileOverview file
This way it is re-useable, and no longer connected to the concept of a tab view.

We can then display it in the profile manager.

Contributes to issue CURA-8686.
2022-01-25 13:34:13 +01:00
Ghostkeeper
50960ce5cf
Use UM.TabRow instead of a tab view
This styles it for us automatically.
However the contents of the tab disappears now. I'll have to restore that, but since that moves a bunch of code I'd rather do that in a separate commit.
I also changed the item to a column so that we don't have to link up the anchors very weirdly/difficulty with all of the buttons and messages that are optional. This just automatically makes space if there need to be extra buttons and messages in between, and even deals with the spacing correctly.

Contributes to issue CURA-8686.
2022-01-25 12:09:59 +01:00
Ghostkeeper
5f101e8233
Set checked tab for TabRowButton
We're changing this so that the button doesn't set this by itself. This is necessary so that I can use this TabRowButton also when it's not in a repeater (for the global stack in the profile manager).

Contributes to issue CURA-8686.
2022-01-25 11:58:44 +01:00
Ghostkeeper
0f61e25a77
Fix anchoring width of network printer view to scrollbar
You can't anchor to something that's not a parent or sibling, and the scrollbar was an... uncle?

Contributes to issue CURA-8686.
2022-01-21 17:07:10 +01:00
Ghostkeeper
7a5db88fd8
Update slider to Controls 2
Because Controls 1 is going out.
The rest of the controls elements here are left as they were since they need to be styled.

Contributes to issue CURA-8686.
2022-01-20 17:58:11 +01:00
Ghostkeeper
643f6e7d27
Customise scrollbar for combobox widgets
Contributes to issue CURA-8686.
2022-01-20 17:28:31 +01:00
Ghostkeeper
4f82137035
Customise scrollbar for extruder selectors
Contributes to issue CURA-8686.
2022-01-20 17:26:49 +01:00
Ghostkeeper
08b8dcfa43
Use custom scroll bar for object selector
Contributes to issue CURA-8686.
2022-01-19 17:59:41 +01:00
Ghostkeeper
796779316f
Fix scrolling through post-processing scripts list
It turns out this has been broken for a while. I don't think anyone adds that many scripts that they'd need to scroll this, but if they want to they can now.

Contributes to issue CURA-8686.
2022-01-19 17:33:10 +01:00
Ghostkeeper
efc748cc99
Remove unused ScrollView widget
We were not using Cura.ScrollView anywhere.

Contributes to issue CURA-8686.
2022-01-19 17:16:39 +01:00
Ghostkeeper
f1db69a36a
Remove extra ScrollView and customise ListView instead
Contributes to issue CURA-8686.
2022-01-19 17:14:30 +01:00
Ghostkeeper
5b76cf5689
Merge branch 'replace_controls_1_for_controls_2' into CURA-8686_views_controls2 2022-01-19 16:37:24 +01:00
Ghostkeeper
8f87b7c4bb
Merge branch 'master' into replace_controls_1_for_controls_2 2022-01-19 16:37:08 +01:00
Ghostkeeper
6e81dba501
Add cura-camera-position plug-in to commonly installed plug-ins
I've had it on for a while to make sure we keep maintaining it.
2022-01-19 16:36:33 +01:00
Ghostkeeper
e7671823be
Add new resources from cura-binary-data to Gitignore
We shouldn't add these here any more. Add them to cura-binary-data instead.
2022-01-19 16:35:49 +01:00
Ghostkeeper
26b40e6669
Remove what's new images again
These have been moved to cura-binary-data.
2022-01-19 16:34:14 +01:00
Ghostkeeper
9124f213ea
Prevent QML errors when model is not yet initialised
I'm not sure when this happens, but it updates this text twice: Once with 'undefined' name and once with the proper name. For the user it displays the name correctly, but it may be so fast that nothing was visible.

Discovered during work on CURA-8686.
2022-01-19 16:31:36 +01:00
Ghostkeeper
fa2fbb99c7
Fix height and scrolling of add printer menus
This fixes the irritating scrolling behaviour of the local printer menu, as well as the disappearing items (former issue which had a workaround) and makes it use a styled scroll bar.

Contributes to issue CURA-8686.
2022-01-19 16:26:48 +01:00
Ghostkeeper
f94b7ce753
Replace ScrollView+Column+Repeater by ListView with correct scrollbar
Much simpler. And looks more consistent too.

Contributes to issue CURA-8686.
2022-01-19 14:59:48 +01:00
Ghostkeeper
5041162a99
Use custom scroll bar for qualities+intents menu
Contributes to issue CURA-8686.
2022-01-19 14:47:55 +01:00
Ghostkeeper
c57126fb00
Use re-useable scrollbar and remove ScrollView
The machine selector has the scroll view inside of the listview. It just needs to use our new scrollbar element instead of the default.

Contributes to issue CURA-8686.
2022-01-19 14:32:12 +01:00
Ghostkeeper
7e1b92953c
Update ScrollView to Controls 2 and customise with scrollbar
Contributes to issue CURA-8686.
2022-01-19 14:14:03 +01:00
Ghostkeeper
509c9068eb
Convert all ScrollViews to Controls2
This was a bit of a doozy. One was really simple but the other one had me stumped for a while: The Controls2 version doesn't have the viewport property any more, so just use the width.

Contributes to issue CURA-8686.
2022-01-19 13:48:21 +01:00
Ghostkeeper
4d9039288b
Use new ScrollBar for material sync dialogue
Contributes to issue CURA-8686.
2022-01-18 19:10:06 +01:00
Ghostkeeper
52f5b91621
Upgrade material list ScrollView to Controls2
Took some effort. This was a weird one. I had to manually set the contentHeight to the height of the contents. Perhaps the ScrollBar itself was messing with it?

Contributes to issue CURA-8686.
2022-01-18 19:01:22 +01:00
Ghostkeeper
bb32f25b49
Replace old ScrollView with new ListView
I also swapped out the old NewControls import to just be the actual Controls, and used OldControls to import the Controls1 module. This is consistent with the rest of the code base as far as I could find.

Contributes to issue CURA-8686.
2022-01-18 18:43:27 +01:00
Ghostkeeper
4614b3a9e1
Use new ListView instead of ScrollView, with correct scrollbar
I also fixed an undefined reference for whether a button needed to be enabled, if no profile was selected yet. The button was invisible if it was undefined, but it was still giving QML warnings.

Contributes to issue CURA-8686.
2022-01-18 18:37:34 +01:00