6818 Commits

Author SHA1 Message Date
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
0c9b9a3033
Add fallback name property in PrinterOutputDevice
It'll call this property, which gives an empty string, if the device doesn't implement giving a name.

Contributes to issue CURA-3161.
2017-02-09 17:34:51 +01:00
Ghostkeeper
27c30006da
Give no address instead of a wrong address if unknown
Contributes to issue CURA-3161.
2017-02-09 10:33:14 +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
c5655d4d8c
Document preheatBedTimeout
Must've slipped through the cracks.

Contributes to issue CURA-3161.
2017-02-09 09:32:14 +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
1395735ece
No longer mention printer name in status
The printer name is displayed right above it, so mentioning the name again is double.

Contributes to issue CURA-3161.
2017-02-08 12:53:54 +01:00
Ghostkeeper
d7b0336c24
Fix colour of unknown material
The other colour was just used for debugging.

Contributes to issue CURA-3161.
2017-02-08 12:42:40 +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
da4574cb32
Use fallback without time-out if preheating bed on old firmware
It manually sets the temperature just like what happens when you print via USB.

Contributes to issue CURA-3161.
2017-02-08 11:38:03 +01:00
Ghostkeeper
28e488dad7
Fix setting target bed temperature
The previous implementation just emitted the signal twice, once in setTargetBedTemperature and once in _setTargetBedTemperature. I've made the private one actually set the temperature.

Contributes to issue CURA-3161.
2017-02-08 11:37:04 +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
Ghostkeeper
7cf81412ae
Implement bed pre-heating via USB
It just calls the bed heating command without implementing the time-out. Implementing the time-out is impossible via just g-code.

Contributes to issue CURA-3161.
2017-02-07 17:26:44 +01:00
Ghostkeeper
b05697b0d5
Also cancel pre-heating bed from Cura after time-out
Printers that don't automatically turn off their heated bed will get the task to do so by Cura then.

Contributes to issue CURA-3161.
2017-02-07 17:21:14 +01:00
Ghostkeeper
9354a80504
Document no longer that pre-heating defaults to 15m
Because that was removed.

Contributes to issue CURA-3161.
2017-02-07 17:17:45 +01:00
Ghostkeeper
d30430381f
Add default implementations for preheatBed and cancelPreheatBed
It is a no-op implementation that gives a warning. I'd rather give an exception and have that handled by whatever calls it, but this is how the other methods here do it.

Contributes to issue CURA-3161.
2017-02-07 17:16:19 +01:00
Ghostkeeper
57ec987cd9
Disable pre-heat if temperature is invalid
Contributes to issue CURA-3161.
2017-02-07 17:13:36 +01:00
Ghostkeeper
4ccadc6208
Round pre-heat temperature and duration to integer but allow floats
We want to allow floats in the interface since the interface needs to be agnostic of what device it is connected to. But the UM3 API only allows integers, so we still need to round it to the nearest integer.

Contributes to issue CURA-3161.
2017-02-07 16:57:20 +01:00
Ghostkeeper
785f10966e
Don't send a time-out for preheat if timeout is 0
The printer doesn't accept 0.

Contributes to issue CURA-3161.
2017-02-07 16:48:27 +01:00
Ghostkeeper
8d09c53896
Make pre-heat button cancel if currently heating
This is based on the timer, which is locally. Eventually we'd want to make the timer update every now and then or so.

Contributes to issue CURA-3161.
2017-02-07 16:46:22 +01:00
Ghostkeeper
9b235aebf2
Add clock icon to pre-heat countdown
It's aligned left of the pre-heat countdown and only visible if the countdown is visible.

Contributes to issue CURA-3161.
2017-02-07 16:38:28 +01:00
Ghostkeeper
8e25a1c73f
Also use central pre-heat time when sending time to printer
Oops.

Contributes to issue CURA-3161.
2017-02-07 16:32:36 +01:00
Ghostkeeper
1a902b21bb
Store default pre-heat time in central location
Its default is 900s or 15 minutes. QML now requests the time-out time and sends it on to the printer.

Contributes to issue CURA-3161.
2017-02-07 16:29:41 +01:00
Ghostkeeper
d705fb1d76
Document why we set endTime to the current date initially
Contributes to issue CURA-3161.
2017-02-07 16:24:28 +01:00
Ghostkeeper
d3d36d47eb
Add countdown timer for pre-heat time
Not happy with how there is '900' in multiple places in the code. I might do something about that later.

Contributes to issue CURA-3161.
2017-02-07 16:22:47 +01:00
Ghostkeeper
d751285713
Provide pre-heat command with integer parameters
The firmware only accepts integers, apparently.

Contributes to issue CURA-3161.
2017-02-07 14:44:28 +01:00
Ghostkeeper
b27a9e6535
Implement tracking target bed temperature
I had already assumed it was tracking this but apparently it wasn't. This works though.

Contributes to issue CURA-3161.
2017-02-07 13:52:44 +01:00
Ghostkeeper
3618ae0d4f
Properly float-format input of preheatBed
It rounds to 3 digits. The specification of the feature in the API doesn't mention how detailed the temperature and duration can go, but thousands seems more than enough. This also eliminates pesky problems with the JSON brackets in the format function.

Contributes to issue CURA-3161.
2017-02-07 13:35:09 +01:00
Ghostkeeper
559b40867e
Call pre-heat if pre-heat button is pressed
Contributes to issue CURA-3161.
2017-02-07 13:29:57 +01:00
Ghostkeeper
0df4afff33
Convert parameters to string before including them
This way you can provide normal floating point values instead of providing strings with numbers in them.

Contributes to issue CURA-3161.
2017-02-07 13:26:10 +01:00
Ghostkeeper
d7bf23ca21
Add function to cancel pre-heating the bed
You could also do this by calling preheatBed with a temperature of 0. In fact, that's what this function does.

Contributes to issue CURA-3161.
2017-02-07 13:23:56 +01:00
Ghostkeeper
9d8034d14f
Add default for duration parameter of preheatBed
It defaults to 15 minutes.

Contributes to issue CURA-3161.
2017-02-07 13:22:21 +01:00
Ghostkeeper
cfbcf56739
Add function to pre-head bed
This makes a PUT-request to the printer with the new API function call.

Contributes to issue CURA-3161.
2017-02-07 13:18:41 +01:00
Ghostkeeper
f24d778cc5
Disable pre-heat button when not connected
This covers the case when there is no printer added as well as the case where a printer is added but not connected.

Contributes to issue CURA-3161.
2017-02-07 12:51:02 +01:00
Ghostkeeper
b1448887ba
Add button to pre-heat build plate
This is the one. The actual commit that implements the issue. It doesn't do anything yet, this button, but it's how it should look.

Contributes to issue CURA-3161.
2017-02-06 16:45:52 +01:00
Ghostkeeper
b1a8b28e87
Bind default pre-heat temperature to current build plate temperature
Currently the setting 'resets' when you go out of the print monitor mode. That wasn't the original intention but it works kind of nicely. We'll bring it up in a meeting whether this needs to be changed.

Contributes to issue CURA-3161.
2017-02-06 15:44:40 +01:00