137 Commits

Author SHA1 Message Date
Ghostkeeper
f956436c32
Align tooltips better
We want the tooltip area to point at the vertical centre. However, we want the tooltip of pure text elements to point at the vertical centre between the base line and the middle line (centre of lowercase letters). Therefore the offset for those elements is a quarter of the height rather than half (which is good enough of an approximation).

Contributes to issue CURA-3161.
2017-02-16 15:02:48 +01:00
Ghostkeeper
b77e5f5d0c
Fix border colour hovering of preheat temperature input
The ID was wrong.

Contributes to issue CURA-3161.
2017-02-16 14:47:47 +01:00
Ghostkeeper
67b72ee6df
Add tooltips for elements of extruder box
All things that need a tooltip now have their tooltip. The tooltips don't seem to align well though.

Contributes to issue CURA-3161.
2017-02-16 14:46:15 +01:00
Ghostkeeper
3d8afa9deb
Add tooltip for target bed temperature
Contributes to issue CURA-3161.
2017-02-16 14:36:40 +01:00
Ghostkeeper
739775421a
Add tooltip for current bed temperature
Contributes to issue CURA-3161.
2017-02-16 14:34:16 +01:00
Ghostkeeper
e142f51e12
Add tooltip for pre-heat input field
Just to clarify what you need to put there.

Contributes to issue CURA-3161.
2017-02-16 14:30:19 +01:00
Ghostkeeper
c7793238f7
Disallow pre-heat temperature of 0 explicitly
Because that signals to the printer that it should cancel pre-heating.

Contributes to issue CURA-3161.
2017-02-16 14:20:35 +01:00
Ghostkeeper
253b4bce03
Don't disable pre-heat text if temperature is invalid
Otherwise you can't change the temperature to make it valid again...

Contributes to issue CURA-3161.
2017-02-16 14:17:13 +01:00
Ghostkeeper
84f695821d
Disable text field when pre-heat button is disabled
More consistent user experience.

Contributes to issue CURA-3161.
2017-02-16 14:01:42 +01:00
Ghostkeeper
2498ee9726
Also disable pre-heat if printer is paused or pausing
The UM3 also doesn't allow pre-heating during this period. Other printers tend to keep the bed hot during pausing.

Contributes to issue CURA-3161.
2017-02-16 13:37:44 +01:00
Ghostkeeper
abf092512a
Don't show temperature if print core is removed in UM3
The empty string as hotend ID is interpreted as there being no hotend, since this is what the UM3 returns in that case.

Contributes to issue CURA-3161.
2017-02-16 13:23:20 +01:00
Ghostkeeper
140d5204c3
Fix error message when not connected in preheatUpdateTimer
Can't get preheatBedRemainingTime from null.

Contributes to issue CURA-3161.
2017-02-16 12:58:40 +01:00
Ghostkeeper
b002e367e3
Only update bed temperature on switching to tab
The problem was that the bed temperature for pre-heat was being updated when focus was lost. It now only updates on component being completed. Since print monitor is a component that is switched out with a Loader, it is completed every time the monitor tab is clicked, thus causing this update. It is not pretty to be dependent on this, but it's quite practical considering the alternatives.

This causes the pre-heat temperature to not update when you switch machines. Whether this is desirable or not is up for debate. In any case the bed temperature is now always equal for all machines so it doesn't matter anyway.

Contributes to issue CURA-3161.
2017-02-16 12:58:39 +01:00
Ghostkeeper
d2fa6dbae2
Notify to update remaining time when it drastically changes
When the time passes normally it doesn't trigger this signal but just go on counting, but when the pre-heat starts or cancels it updates via this signal. This is handy for the future, when we want to update the remaining time from the printer information. However for now it is also nice because we can make the pre-heat timer dependent on this signal so we know when to have it running. This fixes the problem that the pre-heat seems to have been cancelled in the GUI when you switch away the tab, because the timer running is now dependent on the property rather than always false.

Contributes to issue CURA-3161.
2017-02-16 12:58:39 +01:00
Ghostkeeper
9a5b355f2b
Make countdown visibility dependent on its own text
No need to 'update' that in the update timer. We can just link it and it updates on its own.

Contributes to issue CURA-3161.
2017-02-16 12:58:39 +01:00
Ghostkeeper
d363736fdd
Rename preheatCountdownTimer to preheatUpdateTimer
It is a timer that triggers every 100ms to update the state of the pre-heating process, after all.

Contributes to issue CURA-3161.
2017-02-16 12:58:39 +01:00
Ghostkeeper
75a50b73c2
Move pre-heat timer into PrinterOutputDevice
If it's held inside the device that has two advantages: It's being held per-device, so switching connection doesn't stop the timer. And also, the logic is no longer in the GUI.

Contributes to issue CURA-3161.
2017-02-16 12:58:32 +01:00
fieldOfView
25fb3fed16 Add missing label color
One of the labels in the newly redesigned printmonitor is lacking a color, thus making the hotend temperature unstylable.
2017-02-14 10:38:33 +01:00
Ghostkeeper
2724af7508
Add lining between bottom of extruders and build plate boxes
Using margins for this is not applicable since it was the background of the rectangle around the flow that has the correct lining colour. So this is manually adding a line.

Contributes to issue CURA-3161.
2017-02-13 12:01:27 +01:00
Ghostkeeper
34dccfd6a6
Fix updating extruder names on machine switch
The extruder name is asked from the extruder manager, so that the signal from extruder manager properly updates it once the new name is available.

Contributes to issue CURA-3161.
2017-02-13 11:57:01 +01:00
Ghostkeeper
77f07bbc1d
Use Flow for extruder boxes instead of GridLayout
Flow makes things a lot more simple with the double-width item at the bottom.

Contributes to issue CURA-3161.
2017-02-13 11:54:12 +01:00
Ghostkeeper
adbcd874a8
Add SettingPropertyProvider for machineExtruderCount here too
It's not necessary, but this keeps it more localised.

Contributes to issue CURA-3161.
2017-02-13 11:52:46 +01:00
Ghostkeeper
40f32449c6
Remove unnecessary watched properties from machineExtruderCount
Since we don't change the colour of the input box right now, we won't need the warning values.

Contributes to issue CURA-3161.
2017-02-13 09:38:02 +01:00
Ghostkeeper
c2c61c4331
Improve condition for extruder name fallback
In effect this has no change. But semantically it is better: If there are no extruders or the extruders have no name, use 'hotend'. Otherwise use the available name. It has nothing to do with the amount of extruders.

Contributes to issue CURA-3161.
2017-02-13 09:35:09 +01:00
Ghostkeeper
2722ac5a8f
Re-use repeater count instead of listening to machineExtruderCount everywhere
Might be slightly more efficient and/or update stuff in the correct order.

Contributes to issue CURA-3161.
2017-02-13 09:32:16 +01:00
Ghostkeeper
a3170041f8
Fix typo of theme
This was giving a warning that we couldn't get a font from undefined.

Contributes to issue CURA-3161.
2017-02-13 09:15:58 +01:00
Ghostkeeper
d3147a6e97
Add font for extruder name label
This allows it to get stylised.

Contributes to issue CURA-3161.
2017-02-10 16:07:16 +01:00
Ghostkeeper
440508f002
Don't display material if an unknown material is given
This makes it more clear for the cases other than UM3.

Contributes to issue CURA-3161.
2017-02-10 16:05:18 +01:00
Ghostkeeper
6629c8d0cf
Anchor last-row extruder box to left and right to stretch it
Layout.fillwidth seems to only stretch the box to full width on the first row, but without it the entire thing doesn't stretch. Leaving the width out will make the entire left column stretch so that the right column is no longer visible. It's all a bit weird, this QML stuff.

Contributes to issue CURA-3161.
2017-02-10 15:29:58 +01:00
Ghostkeeper
b69ec56f66
Make extruder name recover if it returns null
If it returns null, you'd get an error that it can't assign [undefined] to a text field.

Contributes to issue CURA-3161.
2017-02-10 14:55:06 +01:00
Ghostkeeper
2f8fc05181
Fix button enabled state depending on printer connection
I think I made a mistake when I removed one of the global variables here.

Contributes to issue CURA-3161.
2017-02-10 14:43:31 +01:00
Ghostkeeper
b3bd488c07
Use stylised tooltip for pre-heat button
Took some figuring out, this one... But it works.

Contributes to issue CURA-3161.
2017-02-10 14:40:31 +01:00
Ghostkeeper
be5b656ef7
Hide extruder information when hotend/material is not provided
This happens when there is no extruder in the machine or the machine simply doesn't provide enough information.

Contributes to issue CURA-3161.
2017-02-10 13:28:59 +01:00
Ghostkeeper
f6fe4f9fd3
Use Label for all text, not just labels
The fonts use better fallbacks if they fail to load for labels.

Contributes to issue CURA-3161.
2017-02-10 11:56:37 +01:00
Ghostkeeper
6ed0e81492
Remove unnecessary alignment
It is single-line text and already aligned to the right side via the anchors.

Contributes to issue CURA-3161.
2017-02-10 11:30:05 +01:00
Ghostkeeper
60812139b7
Use global margins instead of specific per cardinal direction
Makes it a bit shorter. But also makes it use the width of the margins for vertical margin, which is unintuitive.

Contributes to issue CURA-3161.
2017-02-10 11:27:45 +01:00
Ghostkeeper
17a03d777c
No longer use printerAcceptsCommands
It's an external variable we don't need. Just ask the currently connected printer.

Contributes to issue CURA-3161.
2017-02-10 11:14:28 +01:00
Ghostkeeper
4ce755021a
Don't use printerConnected from Sidebar.qml
We don't need it if we just check for connectedPrinter to not be null each time.

Contributes to issue CURA-3161.
2017-02-10 11:11:39 +01:00
Ghostkeeper
45c045131b
Fix rendering pre-heat button text twice
It was rendered by the button and again by the style for the button. I'm just using the style since it has the proper styling. Thanks, fieldOfView.

Contributes to issue CURA-3161.
2017-02-10 09:38:38 +01:00
Ghostkeeper
e37d8b949e
Add fallback in PrinterOutputDevice for getting address
The fallback gives a warning that it's not implemented.

Contributes to issue CURA-3161.
2017-02-09 10:31:35 +01:00
Ghostkeeper
4013b50063
Only allow pre-heating if authenticated
Contributes to issue CURA-3161.
2017-02-08 14:01:07 +01:00
Ghostkeeper
bcab0d7be9
Add unit to maximum temperature indication
Contributes to issue CURA-3161.
2017-02-08 14:00:45 +01:00
Ghostkeeper
2a114f1e53
Display last item with double width if there's room on the right side
If it's on the left side and it's the last item, it gets the entire width.

Contributes to issue CURA-3161.
2017-02-08 11:59:19 +01:00
Ghostkeeper
9f66ad1132
Remove superfluous empty item
Don't know where that came from.

Contributes to issue CURA-3161.
2017-02-08 11:40:40 +01:00
Ghostkeeper
98e3e2a25a
Allow pre-heating bed while pausing
It is allowed during the pause. So it should also be allowed when transitioning towards the pause.

Contributes to issue CURA-3161.
2017-02-08 10:19:20 +01:00
Ghostkeeper
34f929c9df
Disable preheat button if printer is busy
It is allowed to preheat the bed if the printer is waiting for the bed to clean up or for stuff to cool down after a print.

Contributes to issue CURA-3161.
2017-02-08 10:18:21 +01:00
Ghostkeeper
2cdf06413b
Remove margin on the left of print monitor
For the other side bar objects this margin was applied doubly, so that makes it very easy to remove.

Contributes to issue CURA-3161.
2017-02-08 09:41:42 +01:00
Ghostkeeper
be9823e94f
Hide maximum bed temperature if there is no maximum
Instead of the ugly 'None' it would display.

Contributes to issue CURA-3161.
2017-02-07 17:39:45 +01:00
Ghostkeeper
0b10df01b0
Don't check for min/max temperature if we have no min/max
If we have no minimum/maximum bed temperature, the property returns 'None'.

Contributes to issue CURA-3161.
2017-02-07 17:33:59 +01:00
Ghostkeeper
e9b30daad6
Write out pre-heat button enabled condition
It should be equivalent. This needs to be done because the line is getting long and I need to add additional checks for if the properties are even set.

Contributes to issue CURA-3161.
2017-02-07 17:30:15 +01:00