Commit graph

1674 commits

Author SHA1 Message Date
Jack Ha
cd54552498 Merge branch 'master' of github.com:Ultimaker/Cura 2017-02-20 09:45:51 +01:00
Jack Ha
b229d38a88 LayerView checkboxes are not remembered; added switching Legend on for compatibility mode. CURA-3273 2017-02-20 09:45:37 +01:00
Jaime van Kessel
8e05ba46a6 Merge branch 'fix_slot_property_confusion' of https://github.com/fieldOfView/Cura 2017-02-17 15:26:40 +01:00
fieldOfView
9229027001 Refactor properties that start with 'get' to avoid confusion between slots & properties
Case in point: LayerViewProxy.getLayerViewType was decorated as a property but was used/intended as a slot.
2017-02-17 13:35:01 +01:00
Ghostkeeper
83b290b8d3
Use full import path for parent class
Something seems off with the build for some reason. I'm trying to fix it this way.
2017-02-17 12:42:11 +01:00
Ghostkeeper
cec3eebace
Replace list-to-set cast with normal set literal
Don't know who did this but he did wrong, yo.
2017-02-17 10:16:11 +01:00
Jack Ha
bb030c724b Fixed layerview extruder choice checkboxes. CURA-3273 2017-02-16 15:56:37 +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
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
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
Jack Ha
78de5412a2 Merge branch 'master' into layer_view3_cleanup 2017-02-15 10:57:24 +01:00
Simon Edwards
cb400f0257 Fix for a recent merge problem. 2017-02-14 13:36:03 +01:00
Simon Edwards
92cee4a9d7 Merge branch 'master' into python_type_hinting 2017-02-13 16:31:31 +01:00
Jaime van Kessel
e6c8a11017 Merge branch 'master' of github.com:Ultimaker/Cura 2017-02-13 14:16:59 +01:00
Jaime van Kessel
e8c5f81c79 Merge branch 'feature_preheat_bed' of github.com:Ultimaker/Cura 2017-02-13 14:16:50 +01:00
Simon Edwards
2020ff5622 Removed the debug which we no longer need.
CURA-3335 Single instance Cura and model reloading
2017-02-13 13:27:10 +01:00
Jack Ha
106cb6ded9 Fixed compatibility mode. CURA-3273 2017-02-13 12:47:04 +01:00
Simon Edwards
234130eb7a Added a static "app version" method.
CURA-3335 Single instance Cura and model reloading
2017-02-13 11:58:14 +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
Jaime van Kessel
94439eddd4 Merge branch 'switching_performance_fixes' of github.com:Ultimaker/Cura 2017-02-13 11:07:36 +01:00
Simon Edwards
88395ebb6a Reliability fix and more debug for testing purposes.
CURA-3335 Single instance Cura and model reloading
2017-02-12 20:37:48 +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
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
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
Jack Ha
47ab49795f Added comments, changed small layout and id thing. CURA-3273 2017-02-08 11:48:00 +01:00
Simon Edwards
34793e06fb Removed debug. Toned down a FIXME.
CURA-3335 Single instance Cura and model reloading
2017-02-08 11:41:30 +01:00
Jack Ha
50ba236e66 Removed unused option in LayerPolygon, added comments 2017-02-08 11:24:41 +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
Arjen Hiemstra
a63b4646e9 Postpone containersChanged signals of all active stacks
This avoids things taking longer because the not-active extruder stack
was still emitting containersChanged.
2017-02-07 17:01:52 +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
Arjen Hiemstra
0292756ad7 Do not limit containersChanged methods to a single container type
This may trigger a few extra updates, but allows us to use signal
compression in the postponesignals context manager, which greatly
improves performance.
2017-02-07 16:28:08 +01:00
Arjen Hiemstra
927055806c Postpone containersChanged signals when doign setActive* calls
This makes sure we do not trigger everything three times when switching
variants.
2017-02-07 16:26:44 +01:00
Simon Edwards
8a4b6adfb3 Flash the window icon instead of trying (and failing) to make it visible directly.
CURA-3335 Single instance Cura and model reloading
2017-02-07 15:47:45 +01:00
Simon Edwards
71d2990ca9 Merge branch 'single_instance' 2017-02-07 13:45:11 +01:00
Simon Edwards
412e299f0c Cleaned up and bug fixed the command loop.
CURA-3335 Single instance Cura and model reloading
2017-02-07 13:33:37 +01:00
Jack Ha
1d77864915 Added force layer view compatibility mode. CURA-3273 2017-02-07 09:36:21 +01:00
Ghostkeeper
ee3e0ba6ab
Add material indication to extruder boxes
Only if a material is known of course. But the case where it is unknown is not tested.

Contributes to issue CURA-3161.
2017-02-03 14:52:09 +01:00
Simon Edwards
0e306df1bc Initial basic version of this feature.
CURA-3335
2017-02-02 15:59:09 +01:00
Ghostkeeper
425dbf1ad8
Only check for validationState changes if it's not already a value change
No need to check the second if-statement in most cases.

Contributes to issue CURA-3291.
2017-02-01 16:29:59 +01:00
Ghostkeeper
3ac9036b4a
Only listen for other container stack errors if multi-extrusion
It's not even necessary to check otherwise. Requesting an extruder stack would give None anyway, which would give errors.

Contributes to issue CURA-3291.
2017-02-01 16:28:45 +01:00
Ghostkeeper
a0ba1188a1
Always listen to changes on all extruder stacks of the current machine
We need to listen for changes on all extruder stacks because the values might change and therefore the validation states might change. The value of a different extruder stack could change if you change a global value that has impact on a per-extruder value via inheritance, or in this case if a limit-to-extruder property specifies that the setting should be changed on a different stack. It could change on the stack that is not active in either case.
This might have some performance impact, but it is very small. Other than layer_height there aren't many global settings that have impact on multiple extruders via inheritance. And via limit-to-extruder there will typically only be one changed value which you want to update for. Changing layer height will be a bit slower though.

Contributes to issue CURA-3291.
2017-02-01 16:17:12 +01:00
Simon Edwards
4715afdad6 Fixed one new class variable. Updated the script to run mypy. 2017-02-01 14:53:22 +01:00
Ghostkeeper
362c5835ee
Don't use limit_to_extruder if it evaluates to -1
The default value for the limit_to_extruder property is -1. So no need to check if the property exists. Just check if it is positive.

Contributes to issue CURA-3291.
2017-02-01 14:42:06 +01:00
Ghostkeeper
ed2b09c975
Fix getting limit to extruder property
Apparently it didn't even reach this code up until now. Well, now it does.

Contributes to issue CURA-3291.
2017-02-01 14:26:37 +01:00
Ghostkeeper
039015e3df
Don't unnecessarily copy extruder stacks to list
You're just looping over it. No need to actually make a list out of it.

Contributes to issue CURA-3291.
2017-02-01 14:24:03 +01:00
Ghostkeeper
7d536e2f8b
Clarify global container stack checking code in _checkStacksHaveErrors
The order of operations was a bit weird. This made the code unclear and also required an extra check in an if-statement. This is simpler and theoretically even a bit faster.

Contributes sorta to issue CURA-3291.
2017-02-01 14:17:23 +01:00
Ghostkeeper
31e88aa5af
Also check for errors via limit_to_extruder settings
The error should then not be checked in the active stack but in the stack which has the correct setting value.

Contributes to issue CURA-3291.
2017-02-01 14:14:50 +01:00
Ghostkeeper
307896cb41
Fix converting URL to local path in setDefaultPath
It is a method, not a static function.

Contributes to issue CURA-3297.
2017-02-01 09:48:06 +01:00