99 Commits

Author SHA1 Message Date
Lipu Fei
a303f394c8 Move VariantType to VariantType.py
Less circular dependencies for imports.
2018-08-02 16:11:55 +02:00
Lipu Fei
af02dc2758 Only use setMetaDataEntry() 2018-07-11 11:14:57 +02:00
Jack Ha
44e9d1e334 CURA-5334 factor out the need for material_diameter in machine definition for getDefaultMaterial 2018-06-12 11:25:02 +02:00
Ghostkeeper
4157636552
Merge branch '3.4' 2018-06-01 14:03:05 +02:00
Ghostkeeper
2fbcc22123
Fix adding printers due to unused 'parent' parameter
The 'parent' parameter was unused, so I removed it. But I didn't remove all things that called it, apparently. I just removed some. I didn't try the stackbuilder.

Contributes to issue CURA-5330.
2018-06-01 14:02:32 +02:00
Lipu Fei
e859861517 No need to set parent for ExtruderStack 2018-06-01 13:55:28 +02:00
Lipu Fei
051dd7a6e9 WIP: Make application initialization and start up more clear
- Create SingleInstance class to handling single instance stuff.
 - Instead of calling getInstance() everywhere, initialize each object
   explicitly in order when application starts and getInstance()s do not
   create instances any more and they merely return the created
   instances.
 - Only set initial values in construtor functions __init__(). Move the
   initialization of context-aware (i.e. things that depend on other
   things) to separate functions.
 - Split application creation and initialziation into several steps and
   them should be called explicitly in the correct order.
2018-05-04 09:57:02 +02:00
Ghostkeeper
d6205d5d85
Show configuration error when extruder positions don't match
When any extruder position doesn't match when adding a container, don't add any of the extruders. Don't add faulty half-data to the registry!

Contributes to issue CURA-5045.
2018-03-27 14:38:15 +02:00
Ghostkeeper
013bb04a7d
Show configuration error if finding definition to add wasn't found
It must've gotten this ID from somewhere.

Contributes to issue CURA-5045.
2018-03-27 14:32:13 +02:00
Ghostkeeper
544c2c69b4
Remove unused imports
Contributes to issue CURA-5045.
2018-03-27 14:30:48 +02:00
Ghostkeeper
6d3fed8f52
Allow getContainer() to return None
And in the rest of the locations we must then check if it's None and handle that gracefully.
Here we assume that the getContainer message shows a message to the user if necessary. For now we'll just log it.

Contributes to issue CURA-5045.
2018-03-26 15:48:03 +02:00
Lipu Fei
6db26eaca5 Add getDefaultMaterial() in MaterialManager 2018-03-03 15:29:49 +01:00
Lipu Fei
86e12fc437 Add getDefaultVariantNode() in VariantManager 2018-03-03 15:21:29 +01:00
Lipu Fei
85e3857785 Use getters to get managers for CuraStackBuilder 2018-02-27 16:12:28 +01:00
Lipu Fei
ab8fda8812 Fix createMachine: evaluate material diameter if it is a function 2018-02-22 15:21:48 +01:00
Jack Ha
631b72c007 CURA-4606 in all quality profiles, rename all the specific 1.75mm materials back to the generic material 2018-02-21 14:16:26 +01:00
Lipu Fei
fa37a48caa WIP: Fix default buildplate lookup 2018-02-20 11:25:42 +01:00
Lipu Fei
c432d4ffbb WIP: Simplify global stack and extruder stack activation and fixes 2018-02-20 11:16:51 +01:00
Lipu Fei
4af176dbf3 WIP: Rename function to getVariantNode() 2018-02-16 14:23:11 +01:00
Lipu Fei
df1d2f137b WIP: Add material-diameter mapping to fix preferred material lookup 2018-02-16 14:23:11 +01:00
Lipu Fei
c79dd313ac WIP: Refactor duplicated code and clean up 2018-02-16 14:23:11 +01:00
Lipu Fei
730cbb25bf WIP: Simplify machine creation 2018-02-16 14:23:11 +01:00
ChrisTerBeke
e4a111dd2e Delay adding global stack when creating new machine until after extruder stacks are created - CURA-4828 2018-01-19 10:36:25 +01:00
Ghostkeeper
dad99f5292
Merge branch 'master' into feature_local_container_server
Contributes to issue CURA-4243.
2017-11-29 13:06:08 +01:00
ChrisTerBeke
9e6704a162 Fix extruder stack machine definition link for per extruder settings resolvement - CURA-4627 2017-11-27 15:14:32 +01:00
ChrisTerBeke
8082c092e5 Fix setting extruder definition in user changes container 2017-11-27 09:54:10 +01:00
Ghostkeeper
ebe766a7c8
Set definition by their ID
The new function for setting the definition just adds the ID to the metadata.

Contributes to issue CURA-4243.
2017-11-24 16:45:09 +01:00
ChrisTerBeke
657a91c525 Merge pull request #2685 from Ultimaker/container_stack_improvements
Container stack improvements
2017-11-20 17:42:26 +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
Jaime van Kessel
bff3a5bb23 Naming of new machines now uses correct ordering again
CURA-4408
2017-10-03 13:16:04 +02:00
A.Sasin
3082038261 Fixed code style and machine default name is retrieved from machine definition
CURA-4345
2017-09-29 13:52:00 +02:00
alekseisasin
2a302a3e27 Merge branch '3.0' of github.com:Ultimaker/cura into 3.0 2017-09-28 13:24:13 +02:00
alekseisasin
5402092bb4 During adding a new printer the printer name generated from default name and not from custom name (changed by user)
CURA-4345
2017-09-28 13:22:15 +02:00
Mark
9a193ad5c5 Changing AGPLv3 to LGPLv3 2017-09-28 13:00:43 +02:00
Lipu Fei
09576241db Generate unique names for definition changes containers
CURA-4107
2017-08-07 10:59:24 +02:00
Lipu Fei
76e8090dbd Remove duplicated function createDefinitionChangesContainer()
CURA-4107
2017-08-07 10:59:24 +02:00
Ghostkeeper
584e1b6abb
Set the next stack before adding the user container
Since the user container may trigger a propertyChanged signal, which then requests the next stack.

Contributes to issue CURA-4121.
2017-08-07 09:45:16 +02:00
Lipu Fei
792feaade6 Always create a definition changes container for a newly created stack
CURA-4107

A newly created stack will have an empty definition changes container by
default, but when a machine or extruder gets activate, Cura will create
a definition changes container for it if it has an empty one. This lazy
creation caused the problem when after Cura creates a multi-extrusion
machine for the first time, switching to a different extruder tab will
cause an extruder stack change, which eventually triggers an unnecessary
auto-slice.
2017-08-01 09:40:51 +02:00
fieldOfView
a134779627 Fix creating conflicting machine names 2017-05-18 13:52:20 +02:00
Lipu Fei
121ebd79cf Fix circular import problem caused by moving SettingVersion into CuraApplication
CURA-3756
2017-05-16 14:55:34 +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
Jaime van Kessel
58ab9dcd09 Fixed wrong typehinting 2017-05-02 17:00:26 +02:00
Arjen Hiemstra
0467a8688a Make the UM3 work properly 2017-04-18 17:42:20 +02:00
Arjen Hiemstra
0a0353da82 Move code to set default variant/material/quality to CuraContainerStack
This allows us to eventually make sure everything uses the same code.
2017-04-18 17:41:48 +02:00
Arjen Hiemstra
f1b5098a0a Document CuraStackBuilder 2017-04-18 17:38:44 +02:00
Arjen Hiemstra
0fee41d519 Allow CuraStackBuilder to determine the "default" variant/material/quality 2017-04-13 01:39:11 +02:00
Arjen Hiemstra
f154db13b1 Add a createMachine method to CuraStackBuilder that creates a complete machine 2017-04-13 01:37:01 +02:00
Arjen Hiemstra
47a388fd2c Introduce a CuraStackBuilder class
It contains factory functions for creating new stacks with certain
quality/material/variant combinations.
2017-04-04 17:38:49 +02:00