Commit graph

2372 commits

Author SHA1 Message Date
Lipu Fei
78b9a14007 Fix all possible quality changes containers for single extrusion
In the current fix, the quality changes that are applicable to the
machine may not have been fixed yet because they are not active at that
moment. This commit makes sure that for a single extrusion machine which
has just been updated to have an ExtruderStack, all the quality changes
containers that are applicable to this machine will be updated as well.
2018-01-09 13:30:01 +01:00
Lipu Fei
c91eb30de9 Skip loaded instance containers
When trying to apply the fix for single extrusion machines by creating a
new ExtruderStack, skip the quality changes container that has already
been loaded.
2018-01-09 13:30:01 +01:00
Lipu Fei
8e5167be76 Use the same machine def for extruder quality changes containers 2018-01-09 13:30:00 +01:00
Lipu Fei
59d7cc663a Fix creating ExtruderStack for single-extrusion machine at runtime
Move per-extruder settings from the machine's quality changes container
to the extruder's quality changes container.
2018-01-09 13:30:00 +01:00
Jaime van Kessel
ed9634ebe0 Merge branch 'master' of github.com:Ultimaker/Cura into network_rewrite 2018-01-08 10:56:12 +01:00
ChrisTerBeke
7a7b4d2b63 Merge branch 'master' into feature_headless_docker 2018-01-05 14:27:58 +01:00
Ghostkeeper
b20c6c6ac7
Use isinstance instead of type checking for SceneNode
isinstance also checks for subclasses. In our case, SceneNode was just extended to CuraSceneNode so this test was failing.

Contributes to issue CURA-4766.
2018-01-05 13:02:30 +01:00
ChrisTerBeke
c7c989f2a0 Fix merge conflicts after multi-buildplate refactor 2018-01-04 10:52:01 +01:00
ChrisTerBeke
182e7de07d
Merge branch 'master' into network_rewrite 2018-01-03 14:17:48 +01:00
Lipu Fei
70d5d4415f
Merge branch 'master' into CURA-4708_fix_definition_changes_extruder_stacks 2018-01-02 10:41:44 +01:00
Ghostkeeper
2e197f0f34
Move all per-extruder settings
Also move things that we didn't think of previously, such as extruder offsets. You can't enter them as a user in the interface if it was single-extrusion, but you could've edited the files.

Contributes to issue CURA-4708.
2018-01-02 08:36:46 +01:00
Ghostkeeper
a87465186e
Fix off-by-one bug when importing profiles with extruder stacks
Since machine_extruders contains only the extruder stacks (not the global stack) but profile_index counts through all stacks including the global stack, we need to increase the length of machine_extruders by 1 when comparing.
I also swapped the comparison around since I think it's more logical this way around.

Contributes to issue CURA-4738.
2018-01-02 08:19:31 +01:00
Lipu Fei
0c28c61e05 Create new SettingInstances when moving user changes settings
CURA-4708
2017-12-22 14:09:13 +01:00
Lipu Fei
0cd392fbd2 Create new SettingInstance when moving extruder DC settings
CURA-4708
2017-12-22 14:08:22 +01:00
Lipu Fei
a7d51326c0 Move extruder-specific DC settings
CURA-4708

Read code comments.
2017-12-22 14:06:11 +01:00
Lipu Fei
3fb3b5826f Make sure user containers have unique IDs
CURA-4708
2017-12-22 12:26:30 +01:00
Lipu Fei
3f9f00673a Fix addExtruderStackForSingleExtrusionMachine()
CURA-4708

- Create definition_changes container for the newly created
  ExtruderStacks.
- Move extruder-specific definition_changes settings from the machine's
  container to the extruder's container
2017-12-22 12:26:29 +01:00
ChrisTerBeke
56435f12c0 Add additional debug logging in machine manager for changing stack setup 2017-12-21 17:12:39 +01:00
ChrisTerBeke
0e1cd99578 Add flag to ignore discard or keep dialog when changing print setup 2017-12-21 17:08:44 +01:00
Jaime van Kessel
c6458358ba Merge branch 'master' of github.com:Ultimaker/Cura into network_rewrite 2017-12-21 15:38:17 +01:00
Jaime van Kessel
9754aa5397 Material & hotend updated callback is enabled for LegacyUM3 again
CL-541
2017-12-21 13:16:44 +01:00
Lipu Fei
0a0db39f02 deepcopy value from the stack
CURA-4705
2017-12-21 09:27:53 +01:00
Lipu Fei
588335c6db Make sure only single-extrusion machines will be fixed
CURA-4713
2017-12-20 13:42:58 +01:00
Lipu Fei
1a6a6f74d5 Fix SettingOverrideDecorator for non printing meshes
CURA-4705

- Do not set a "secret" property in the SceneNode to indicate whether a
  node is a non-printing-mesh because SceneNode will not copy that
  property during a deepcopy. Store it in the SettingOverrideDecorator
  and make it accessible through a decorator call
- Try to trigger an auto-slice AFTER the non-printing-meshes flag is
  updated, not before.
2017-12-20 12:26:50 +01:00
Ghostkeeper
a860154831
Merge branch 'master' of github.com:Ultimaker/Cura 2017-12-20 10:20:30 +01:00
Diego Prado Gesto
8af52fb61b CURA-4726 Creating unique name for the per object stack. Keep the prefix so it is easy to trace when debugging instead of just a number 2017-12-19 19:44:04 +01:00
Diego Prado Gesto
fc78402146 CURA-4726 Using a string for the per object stack id instead of the id
of the instance (that is an integer) because the new ContainerRegistry
searches by string
2017-12-19 17:26:30 +01:00
Ghostkeeper
05e232b498
Move LegacyProfileReader-specific logic into the plug-in itself
This had the documentation that it should edit the profiles returned by LegacyProfileReader. Instead, just return correct profiles from the reader...

Contributes to issue CURA-4715.
2017-12-19 17:16:32 +01:00
Ghostkeeper
c6a2b1b9c9
Ignore any additional stacks in imported profile
When you import a multi-extrusion file into a single-extrusion printer, don't crash but simply ignore the additional stacks.

Contributes to issue CURA-4715.
2017-12-19 17:08:51 +01:00
Ghostkeeper
c5e33e45a4
Fix setting definition if importing profile without printer-specific profiles
Fixes a crash.
2017-12-19 13:24:20 +01:00
Jaime van Kessel
bc8741ef08 Merge branch 'master' of github.com:Ultimaker/Cura into network_rewrite 2017-12-19 10:40:32 +01:00
Jack Ha
d6c6aa1c71 CURA-4715 fix updating custom profile 2017-12-18 17:03:18 +01:00
Lipu Fei
248fe37ed9 setDefinition() takes the ID instead of the container
CURA-4713
2017-12-15 14:54:26 +01:00
Lipu Fei
f26872ec1f Apply fix for single extrusion machines when a new global stack is added
CURA-4713

Now the machines are not all loaded in the beginning, so the old way of
adding extruder stacks for old single-extrusion machines don't work.
With this fix, it now happens whenever a global stack is added to the
registry.
2017-12-15 14:51:48 +01:00
Aleksei S
2c18127cc1 Tests: Removed python circular import dependency and added empty containers
CURA-4687
2017-12-15 09:43:02 +01:00
Jaime van Kessel
24bd32477a Merge branch 'master' of github.com:Ultimaker/Cura into network_rewrite 2017-12-14 13:03:02 +01:00
Jack Ha
bae2193bfb Merge branch 'master' of github.com:Ultimaker/Cura 2017-12-13 13:39:22 +01:00
Jack Ha
19b56404c6 Fix empty quality slider on start.
It seemed that:
- MachineManager was not connected to all the correct signals
- After connecting to the correct signal, ProfilesModel was not yet updated when looping over it in SidebarSimple

Because ProfilesModel's constructor already requests the MachineManager, we cannot do connect itemsChanged the way around as well.

CURA-4707
2017-12-13 13:33:05 +01:00
Lipu Fei
6e6dc493f1 Fix material loading for unknown names 2017-12-13 12:27:55 +01:00
Ghostkeeper
097cc72d89
Document why we're only returning full profiles
It's a limitation of the quality manager that would require major refactoring there to fix.

Contributes to issue CURA-4243.
2017-12-11 09:44:56 +01:00
Ghostkeeper
430f3dad27
Use GlobalContainerStack.definition instead of .getBottom
If we know it's a CuraContainerStack we can use .definition safely.

Contributes to issue CURA-4243.
2017-12-08 16:57:48 +01:00
Ghostkeeper
1029d4509c
Merge branch 'master' into feature_local_container_server 2017-12-08 16:03:05 +01:00
Jaime van Kessel
9ccd643f64 Repaired the monitor icon not being updated
CL-541
2017-12-08 14:36:53 +01:00
Jaime van Kessel
c28c20dbd7 Merge branch 'master' of github.com:Ultimaker/Cura into network_rewrite 2017-12-08 10:22:16 +01:00
Diego Prado Gesto
9561827bda CURA-4680 Checking if there is global stack in the ExtruderManager.
Intead of checking for it in all the methods in MachineManager, now the
check is done in ExtruderManager when there is no printer in the list.
2017-12-06 14:12:51 +01:00
Jack Ha
f0c3aaf532 Add built-in profiles to profiles screen.
Contributes to issue CURA-4243.
2017-12-06 14:05:09 +01:00
Jaime van Kessel
aba8bd89c3 Merge branch 'master' of github.com:Ultimaker/Cura into network_rewrite 2017-12-06 13:33:20 +01:00
Lipu Fei
c0a502f99c Check if there is an active machine before doing anything else
CURA-4680
2017-12-06 11:48:14 +01:00
Jack Ha
20500b5c51 Merge branch 'feature_local_container_server' of github.com:Ultimaker/Cura into feature_local_container_server 2017-12-06 11:03:47 +01:00
Jack Ha
eb171231c2 Fix removeMaterial.
The base_file must be removed first, or it gets loaded halfway during remove containers.

Contributes to issue CURA-4243.
2017-12-06 11:02:50 +01:00