2372 Commits

Author SHA1 Message Date
Ghostkeeper
121bf5897d
Deprecate _updateMaterialContainer
There are better alternatives nowadays.

Discovered during CURA-2822.
2017-06-22 18:17:15 +02:00
Ghostkeeper
fc96dfec4e
Expose approximateMaterialDiameter of the definition
This way we can request that from QML.

Contributes to issue CURA-2822.
2017-06-22 18:17:15 +02:00
Jaime van Kessel
41c5aaed69 Merge branch '2.6' of github.com:Ultimaker/Cura 2017-06-16 13:53:05 +02:00
Jaime van Kessel
2adf97ba2d Also apply the filtering on the quality and user profiles model
CURA-3935
2017-06-15 17:18:04 +02:00
Jaime van Kessel
c93acc12e7 Merge branch '2.6' of github.com:Ultimaker/Cura 2017-06-15 15:28:34 +02:00
Ghostkeeper
e003abf895
Only display global quality changes profiles
There's one copy for every stack. It doesn't matter which one we take as long as they have the same name. Global is always present, even in single extrusion. Seems the most logical one to display.

Contributes to issue CURA-3935.
2017-06-15 14:38:04 +02:00
Ghostkeeper
66f5b236d6
Merge branch '2.6' 2017-06-15 09:54:19 +02:00
Jaime van Kessel
7551c83612 QualityChanges are now also removed if a machine has a parentDefinition
CURA-3929
2017-06-14 11:04:22 +02:00
Ghostkeeper
8bce6e060c
Merge branch '2.6' 2017-06-14 10:58:11 +02:00
fieldOfView
49f2fb2cea
Fix filtering maerials after editing materials
NB: previously the "approximate_diameter" metadata was stored as a number. This caused some issues passing arguments from QML to Python. Now "approximate_diameter" is stored as a string.
2017-06-14 10:42:04 +02:00
fieldOfView
8f7471a892
Remove debug statement 2017-06-14 10:41:53 +02:00
fieldOfView
ed6f4d851c
Update documentation 2017-06-14 10:41:39 +02:00
fieldOfView
c9998ca6fe
Set properties for all containers with the same base_file metadata entry 2017-06-14 10:41:23 +02:00
fieldOfView
1f49a87acb
Update material_diameter when editing the material in MaterialView.qml 2017-06-14 10:41:02 +02:00
Jaime van Kessel
a7a2740690 No longer add material to qualityChanges
QualityChanges are never supposed to have Material.

CURA-3929
2017-06-14 09:41:33 +02:00
Lipu Fei
0e09094a3d Merge branch '2.6' 2017-06-13 15:06:37 +02:00
Lipu Fei
dd65248968 Only set metadata/material for quality_changes if material is not None
CURA-3929
2017-06-13 14:35:27 +02:00
Jaime van Kessel
c8d9720a8a Merge branch '2.6' of github.com:Ultimaker/Cura 2017-06-13 13:51:55 +02:00
Jaime van Kessel
ec73abecb5 Custom material now defaults to PLA.
This is not an ideal solution, but it bandaids a problem for the moment.

CURA-3911
2017-06-13 13:48:34 +02:00
Jaime van Kessel
df67ae18f1 Merge branch '2.6' of github.com:Ultimaker/Cura 2017-06-12 15:25:35 +02:00
Jaime van Kessel
9a54ff426b FindAllQualitiesForMachineMaterial only looks with basic materials if it found them
CURA-3911
2017-06-12 15:14:25 +02:00
Jaime van Kessel
a306b4dada We now properly fall back if no basic material is found
CURA-3911
2017-06-12 13:53:35 +02:00
Lipu Fei
82224c0ed0 Copy material into metadata if machine has specific material profiles when duplicating a quality profile
CURA-3929
2017-06-12 10:56:01 +02:00
Ghostkeeper
cbe4891784
Merge branch '2.6' 2017-05-30 13:36:04 +02:00
Ghostkeeper
9132a025d6
Merge branch 'feature_CURA-3810_material_info_button' of https://github.com/LipuFei/Cura into LipuFei-feature_CURA-3810_material_info_button 2017-05-30 13:32:03 +02:00
Lipu Fei
8af1cc886f Use .definition to access DefinitionContainer in qml
CURA-3810
2017-05-30 12:49:12 +02:00
Ghostkeeper
bbd852ceb7
Merge branch '2.6' 2017-05-29 15:56:02 +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
Lipu Fei
85e875257b Use "/<version>/<machineName>" as the material info URL suffix
CURA-3810
2017-05-29 15:23:52 +02:00
Arjen Hiemstra
586050552b Merge branch '2.6'
* 2.6:
  Error out when trying to import a profile witha quality_type we dont have
  Add default for colour code of material
  When trying to convert None to RGBA, log it and return a usable default
2017-05-24 15:47:46 +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
374b6d4e35 Merge branch '2.6' 2017-05-24 14:10:26 +02:00
Jaime van Kessel
3c14545e08 Merge branch 'fix_machine_name_conflicts' of https://github.com/fieldOfView/Cura 2017-05-24 11:27:05 +02:00
Ghostkeeper
1f33a0d4cd
Use per-parameter-value compression for signals
This will only emit one signal for each unique combination of parameters.

Contributes to issue CURA-3803.
2017-05-22 15:36:46 +02:00
Ghostkeeper
bec43d5b9a
Make sure that the preferred material name variable exists
Another small bug I found when looking through this MachineManager code. My IDE was complaining that the preferred_material_name was not always initialised and that preferred_material was an unused variable.

Doesn't contribute to issue CURA-3803.
2017-05-22 15:36:46 +02:00
Jaime van Kessel
c474642744 Removed debug ID
CURA-3814
2017-05-22 14:25:29 +02:00
Jaime van Kessel
92192ff411 Merge branch 'master' of github.com:Ultimaker/Cura 2017-05-22 14:10:27 +02:00
Jaime van Kessel
5aba1731f5 Renamed useOptionalExtruder to addOptional extruder
This is more in line with the other properties

CURA-3814
2017-05-22 14:05:10 +02:00
Ghostkeeper
c14294d1f7
Merge branch '2.6'
Conflicts:
cura/Settings/ExtrudersModel.py

Contributes to issue CURA-3803.
2017-05-22 14:02:48 +02:00
Ghostkeeper
5f0fb3f9bd
Don't squash signals updating materials and variants
These may have different parameters, such as which machine and extruder they are updating the material and variant of. If we only pass the last signal on, then we're missing the update of other extruders.

Contributes to issue CURA-3803.
2017-05-22 14:01:58 +02:00
Ghostkeeper
8c166ea770
Use CuraContainerStack.definition instead of ContainerStack.getBottom()
We know now that it must be a Cura Container Stack. This should be a bit faster, and makes the error message I was getting a bit more clear.

Contributes to issue CURA-3803.
2017-05-22 14:01:58 +02:00
Ghostkeeper
5ae02fb4c6
Listen to changes on all extruders
Not just the active extruder. The non-active extruder may change when loading a project file which happened to have the same printer (so no new printer is created) and the same material and variant in the active extruder but not the same material or variant in another extruder.

Contributes to issue CURA-3803.
2017-05-22 14:01:58 +02:00
Ghostkeeper
6315947156
Modify parameter types from DefinitionContainer to DefinitionContainerInterface
It may also be any other class that implements the Definition Container Interface.

Not really related to CURA-3803 but I'm putting it there anyway as I found it during that development.
2017-05-22 14:01:57 +02:00
Jaime van Kessel
b69ced5766 Set color of "Not Overriden" option to white
CURA-3814
2017-05-22 13:45:28 +02:00
Jaime van Kessel
20cb3ea01f Added "optional_extruder" setting type
CURA-3814
2017-05-22 13:24:41 +02:00
Lipu Fei
df36c7a18b Check global_stack before updating in SettingInheritanceManager
CURA-3756
2017-05-19 15:24:09 +02:00
Lipu Fei
862cbe0211 Check global_stack before updating in SettingInheritanceManager
CURA-3756
2017-05-19 15:23:30 +02:00
Ghostkeeper
76a9a9a9ab
Erase changed hotends/materials after applying changes
Otherwise we may only change one of the extruders next time, and it'll still have the other change in this dictionary from the previous time we are syncing from the printer.

Contributes to issue CURA-3788.
2017-05-19 14:39:22 +02:00
Lipu Fei
9ff7852055 Only use limit_to_extruder when the extruder exists
CURA-3756
2017-05-19 13:37:38 +02:00
fieldOfView
a134779627 Fix creating conflicting machine names 2017-05-18 13:52:20 +02:00