198 Commits

Author SHA1 Message Date
ChrisTerBeke
657a91c525 Merge pull request #2685 from Ultimaker/container_stack_improvements
Container stack improvements
2017-11-20 17:42:26 +01:00
Lipu Fei
69cd00d1c7 Do not take into account the active materials when importing a quality profile
CURA-4451

When importing a quality profile, it should not fail/succeed based on
which materials are activated at the moment. The imported quality
profile will be available when the user switches to a compatible
settings.
2017-10-30 13:13:54 +01:00
Ghostkeeper
6c4c7fff4d
Use findContainersMetadata whenever possible
This ensures that we only load those containers that we actually need the data of.

Contributes to issue CURA-4243.
2017-10-20 15:09:45 +02:00
Mark
9a193ad5c5 Changing AGPLv3 to LGPLv3 2017-09-28 13:00:43 +02:00
Ghostkeeper
382fcdb4fe
Better title for export succeeded message 2017-09-21 12:54:04 +02:00
alekseisasin
204019702d Added Title for messages
CURA-4203
2017-09-13 13:58:08 +02:00
Ghostkeeper
3316f3aa13
Add warning contexts to not translate XML tags
This went wrong a few times with previous translations. Let's hope that this prevents it from happening again.

Contributes to issue CURA-4113.
2017-08-14 14:06:20 +02:00
Ghostkeeper
7ab6a551c1
Clarify that XML material tags don't get translated
Some of the translators got this wrong last time. Let's see how good they read this next time...

Contributes to issue CURA-4113.
2017-08-14 13:54:11 +02:00
Lipu Fei
4bac499c22 Use QualityManager._getFilteredContainersForStack() to get qualities
CURA-4151

The quality searching code in _configureProfile() for importing quality
profiles doesn't take into account base materials. Use the function in
QualityManager to solve this problem.
2017-08-10 12:14:43 +02:00
Arjen Hiemstra
b839cb74f4 Do not only check if activeMaterialId is None, also check for empty
Fixes CURA-4065
2017-07-20 12:01:21 +02:00
Ghostkeeper
81e07b1530
Use stack properties instead of .findContainer(type = ...)
Recently we changed the empty containers such that there is only one empty container instance and it doesn't have the proper type any more. Instead we have properties on the stack that allows us to find the container with the proper type. It's faster and easier to use.
We've had a few bugs about this so I decided to update all of them to remove those for the future, except the ones in plugins/MachineSettingsAction/MachineSettingsAction.py because we have a pending pull request that fixes those. Fixing them would give merge conflicts for fieldOfView.

It doesn't really belong to CURA-4024 but I'm sticking it under that nomer anyway to get it reviewed.
2017-07-10 10:35:03 +02:00
Lipu Fei
585bc78892 Only set material for imported quality profile if there is an active material
CURA-3881

CuraContainerRegistry._activeMaterialId() can return an empty string
if there is no active material, and in this case, importing a custom
quality file will fail.
2017-05-29 15:52:29 +02:00
Arjen Hiemstra
9bda7dbaae Error out when trying to import a profile witha quality_type we dont have
Rather than successfully importing the profile and then not showing
anything, we now display an error. Not the perfect solution but the
easiest for now.

Contributes to #1873
2017-05-24 15:43:49 +02:00
Lipu Fei
40d70b5f39 Fix version upgrade for project loading
CURA-3756
2017-05-16 14:38:27 +02:00
Ghostkeeper
ccda155882
Add setting_version every time we create InstanceContainer
Except when we fill the instancecontainer via deserialising. Because then we want to retain the original version number.

Contributes to issue CURA-3427.
2017-05-15 10:39:53 +02:00
Ghostkeeper
5bc613c3e0
Don't use string for default version
No need to go via string and cast that to int, just return int directly.

Contributes to issue CURA-3427.
2017-05-12 14:44:46 +02:00
Ghostkeeper
0f5814e52f
Add setting_version and check against it
This breaks all profiles since they have the wrong setting version, of course. Have to change that in every instance container now...

Contributes to issue CURA-3427.
2017-05-12 12:58:15 +02:00
Lipu Fei
91b22edb06 Fix missing imports in CuraContainerRegistry
CURA-3497
2017-05-04 16:19:18 +02:00
Arjen Hiemstra
230740ed64 Fixup extruders that were converted from ContainerStack on load
We need to make sure the extruder stacks get the proper next stack set,
even when converting them from ContainerStack. Since the conversion can
make no guarantees about the loading order, we need to add an extra step
to post-process the extruders.

Contributes to CURA-3497
2017-05-04 15:44:16 +02:00
Arjen Hiemstra
ab1044de7b Some more documentation 2017-04-19 14:41:32 +02:00
Arjen Hiemstra
37b4326e99 Mark addContainer as override 2017-03-21 17:43:14 +01:00
Arjen Hiemstra
f32f8b60df Explictly import Extruder/Global stack
For some reason, things were not being imported properly. This fixes
that.
2017-03-21 17:42:57 +01:00
Arjen Hiemstra
b9f01b30c8 Convert generic "ContainerStack" to an Extruder or Global stack
Dependendant on the "type" metadata key, we create either an
ExtruderStack or a GlobalStack instance to replace the ContainerStack
instance. This should allow for transparent upgrades to the new classes.

Contributes to CURA-3497
2017-03-20 17:28:01 +01:00
Jaime van Kessel
ac708d54b6 Importing invalid filetypes now gives proper error messages
CURA-2883
2016-11-18 16:46:54 +01:00
Jaime van Kessel
b4339bda0e Fixed logger isuse with importing profile
CURA-2785
2016-10-25 16:26:52 +02:00
Ghostkeeper
3e3e6e6b1b
Fix call to _configureProfile
The footprint of the function changed, but the call wasn't updated, apparently. I pulled new_name up from one of the if-statements since they need to be computed for both branches now (and they are the same).

Contributes to issue CURA-2785.
2016-10-24 17:39:36 +02:00
Jaime van Kessel
95f2b84fb5 Fixed importing profiles for machines with inheritance 2016-10-16 14:20:04 +02:00
fieldOfView
71c22e8369 Ensure profiles are always exported in order (global, ex. 0, ex. 1, ...)
The order is important because the importer expects this order.

CURA-2478
2016-10-06 17:28:33 +02:00
fieldOfView
6d0da0d754 Revert "global_profile" reference changes while refixing import
CURA-2518 and CURA-2478
2016-10-04 17:21:33 +02:00
fieldOfView
f55c35df6e Load extruder profiles into the correct extruder
CURA-2478
2016-10-03 22:40:05 +02:00
fieldOfView
144dcb5a65 Slightly more defensive programming in case of extruder mismatch 2016-10-03 22:18:38 +02:00
fieldOfView
e1d70ed4b6 Fix selecting quality_changes profiles for extruders
Now that containers in a quality_changes set don't share a common name, the quality_changes containers for extruders have a metadata entry "global_profile" pointing to the global quality_changes container id.

Contributes to CURA-2478 and CURA-2484
2016-10-03 21:58:34 +02:00
fieldOfView
2f57d0fb6e Import profiles for the current machine
Takes into consideration printers that use quality-profiles from other printers, while gracefully handling mismatches in the number of extruders

Fixes CURA-2500, contributes to CURA-2478
2016-10-03 15:29:25 +02:00
fieldOfView
3c30275201 Import profiles as quality_changes profiles
CURA-2478
2016-10-03 11:52:28 +02:00
fieldOfView
3982dc2046 Merge branch 'master' of https://github.com/Ultimaker/Cura 2016-09-29 16:05:32 +02:00
fieldOfView
4fbd82cb6d Create name that conflicts with neither quality or quality changes
The same method is used when creating/duplicating profiles
CURA-2478
2016-09-29 16:05:20 +02:00
Jaime van Kessel
d4bb0d4a0b Only use profile reader if extension matches with filename
CURA-2462
2016-09-29 14:44:34 +02:00
fieldOfView
299d05fa71 Prepend extruder id to extruder quality profiles
extruder quality profiles are not shown to the user, so the prepended extruder id is never visible. This way imported profiles behave the same way as normally created profiles.

CURA-2478
2016-09-28 14:23:29 +02:00
Jaime van Kessel
bf1cfe9e7e Importing profile now works again if profile name already existed
CURA-2478
2016-09-28 12:02:33 +02:00
Jaime van Kessel
829d341f7f When import multi extrusion profile, they now all get the same name
CURA-2462
2016-09-27 14:13:06 +02:00
Jaime van Kessel
821c915ce6 Imported profiles are now directly set as dirty so they are saved to storage upon exit
CURA-2099
2016-08-30 09:49:07 +02:00
Jack Ha
191a318df6 ContainerRegistry only getInstance once. 2016-08-29 16:44:37 +02:00
Jaime van Kessel
fcfbf78f9e Implemented importing multiple profiles from .curaprofile file
CURA-2099
2016-08-26 14:37:21 +02:00
Jaime van Kessel
ced6cd7320 Exporting a profile now exports all profiles in a zipped container
CURA-2099
2016-08-26 12:55:31 +02:00
Jaime van Kessel
e3d4a33954 Fixed legacy profile reader
Updated some settings that were changed from 2.1 to 2.2. Also fixed some
architecture changes that were not changed correctly (or at all)

CURA-1493 and CURA-1779
2016-08-19 10:38:18 +02:00
Simon Edwards
64ecb114b8 Store the Quality profile for the 'global' and extruders in the gcode. Read in all of the quality profile during import.
Contributes to CURA-1727 GCode Profile reading/writing: Broken and needs update
2016-07-12 12:41:49 +02:00
Arjen Hiemstra
d8555fe57d Merge branch 'master' of github.com:ultimaker/Cura into feature_material_editing
* 'master' of github.com:ultimaker/Cura: (38 commits)
  Fixed profile file case-sensitivity.
  Fix UMO Checkup button size
  Remove debug statement and commented-out code CURA-1385
  Show "ready" state when a printer is connected but jobstate is not yet set
  Added deepcopy function
  Made exception handling of slice info plugin way more robust
  Restart timer after slicing is performed when not enabled.
  Update GUID for PLA to match the GUID in the official repository
  Set default extruder index to -1 (so global is default)
  Ensure that the display matches with the backend active extruder data
  Update UM2 Extended build volume height to value published in marketing materials
  Fixed firmware upgrade for um2+
  Capitalise setting label
  CHeckup action now correctly resets every time you start it
  Remove unused name/id when importing a profile from a gcode file
  Just a little typo
  BQ Hephestos2: Heat up nozzle while leveling
  Saving g-code no longer crashes
  Removed update firmware from extensions; This is now handled by machine actions
  Changing active extruder no longer trigger re-slice
  ...
2016-07-07 11:29:18 +02:00
Arjen Hiemstra
0e28b331fb Move Cura setting related classes to cura/Settings
Contributes to CURA-342
2016-07-04 12:07:29 +02:00