diff --git a/cura/Machines/MaterialManager.py b/cura/Machines/MaterialManager.py
index 634f1ba2bd..2163cde623 100644
--- a/cura/Machines/MaterialManager.py
+++ b/cura/Machines/MaterialManager.py
@@ -103,6 +103,8 @@ class MaterialManager(QObject):
continue
root_material_id = material_metadata.get("base_file", "")
+ if root_material_id not in material_metadatas: #Not a registered material profile. Don't store this in the look-up tables.
+ continue
if root_material_id not in self._material_group_map:
self._material_group_map[root_material_id] = MaterialGroup(root_material_id, MaterialNode(material_metadatas[root_material_id]))
self._material_group_map[root_material_id].is_read_only = self._container_registry.isReadOnly(root_material_id)
diff --git a/plugins/SliceInfoPlugin/MoreInfoWindow.qml b/plugins/SliceInfoPlugin/MoreInfoWindow.qml
index 82d5044bed..f19e2cce19 100644
--- a/plugins/SliceInfoPlugin/MoreInfoWindow.qml
+++ b/plugins/SliceInfoPlugin/MoreInfoWindow.qml
@@ -71,7 +71,7 @@ Window
left: parent.left
right: parent.right
}
- text: catalog.i18nc("@text:window", "Cura sends anonymous data to Ultimaker in order to improve the print quality and user experience. Below is an example of all the data that is sent.")
+ text: catalog.i18nc("@text:window", "Ultimaker Cura collects anonymous data in order to improve the print quality and user experience. Below is an example of all the data that is sent:")
wrapMode: Text.WordWrap
renderType: Text.NativeRendering
}
@@ -89,6 +89,8 @@ Window
}
textArea.text: manager.getExampleData()
+ textArea.textFormat: Text.RichText
+ textArea.wrapMode: Text.Wrap
textArea.readOnly: true
}
}
diff --git a/plugins/SliceInfoPlugin/SliceInfo.py b/plugins/SliceInfoPlugin/SliceInfo.py
index fecf3d16bb..7501429796 100755
--- a/plugins/SliceInfoPlugin/SliceInfo.py
+++ b/plugins/SliceInfoPlugin/SliceInfo.py
@@ -77,7 +77,7 @@ class SliceInfo(QObject, Extension):
if not plugin_path:
Logger.log("e", "Could not get plugin path!", self.getPluginId())
return None
- file_path = os.path.join(plugin_path, "example_data.json")
+ file_path = os.path.join(plugin_path, "example_data.html")
if file_path:
with open(file_path, "r", encoding = "utf-8") as f:
self._example_data_content = f.read()
diff --git a/plugins/SliceInfoPlugin/example_data.html b/plugins/SliceInfoPlugin/example_data.html
new file mode 100644
index 0000000000..61090b06fe
--- /dev/null
+++ b/plugins/SliceInfoPlugin/example_data.html
@@ -0,0 +1,65 @@
+
+
+ Cura Version: 4.0
+ Operating System: Windows 10
+ Language: en_US
+ Machine Type: Ultimaker S5
+ Quality Profile: Fast
+ Using Custom Settings: No
+
+ Extruder 1:
+
+ Material Type: PLA
+ Print Core: AA 0.4
+ Material Used: 1240 mm
+
+
+ Extruder 2:
+
+ Material Type: PVA
+ Print Core: BB 0.4
+ Material Used: 432 mm
+
+
+ Print Settings:
+
+ Layer Height: 0.15
+ Wall Line Count: 3
+ Enable Retraction: no
+ Infill Density: 20%
+ Infill Pattern: triangles
+ Gradual Infill Steps: 0
+ Printing Temperature: 220 °C
+ Generate Support: yes
+ Support Extruder: 1
+ Build Plate Adhesion Type: brim
+ Enable Prime Tower: yes
+ Print Sequence: All at once
+ ...
+
+
+ Model Information:
+
+
+ Model 1
+
+ Hash: b72789b9b...
+ Transformation: [transformation matrix]
+ Bounding Box: [minimum x, y, z; maximum x, y, z]
+ Is Helper Mesh: no
+ Helper Mesh Type: support mesh
+ ...
+
+
+
+
+ Print Times:
+
+ Infill: 61200 sec.
+ Support: 25480 sec.
+ Travel: 6224 sec.
+ Walls: 10225 sec.
+ Total: 103129 sec.
+
+
+
diff --git a/plugins/SliceInfoPlugin/example_data.json b/plugins/SliceInfoPlugin/example_data.json
deleted file mode 100644
index 5fc4175e60..0000000000
--- a/plugins/SliceInfoPlugin/example_data.json
+++ /dev/null
@@ -1,114 +0,0 @@
-{
- "time_stamp": 1523973715.486928,
- "schema_version": 0,
- "cura_version": "3.3",
- "active_mode": "custom",
- "machine_settings_changed_by_user": true,
- "language": "en_US",
- "os": {
- "type": "Linux",
- "version": "#43~16.04.1-Ubuntu SMP Wed Mar 14 17:48:43 UTC 2018"
- },
- "active_machine": {
- "definition_id": "ultimaker3",
- "manufacturer": "Ultimaker B.V."
- },
- "extruders": [
- {
- "active": true,
- "material": {
- "GUID": "506c9f0d-e3aa-4bd4-b2d2-23e2425b1aa9",
- "type": "PLA",
- "brand": "Generic"
- },
- "material_used": 0.84,
- "variant": "AA 0.4",
- "nozzle_size": 0.4,
- "extruder_settings": {
- "wall_line_count": 3,
- "retraction_enable": true,
- "infill_sparse_density": 30,
- "infill_pattern": "triangles",
- "gradual_infill_steps": 0,
- "default_material_print_temperature": 200,
- "material_print_temperature": 200
- }
- },
- {
- "active": false,
- "material": {
- "GUID": "86a89ceb-4159-47f6-ab97-e9953803d70f",
- "type": "PVA",
- "brand": "Generic"
- },
- "material_used": 0.5,
- "variant": "BB 0.4",
- "nozzle_size": 0.4,
- "extruder_settings": {
- "wall_line_count": 3,
- "retraction_enable": true,
- "infill_sparse_density": 20,
- "infill_pattern": "triangles",
- "gradual_infill_steps": 0,
- "default_material_print_temperature": 215,
- "material_print_temperature": 220
- }
- }
- ],
- "quality_profile": "fast",
- "user_modified_setting_keys": ["layer_height", "wall_line_width", "infill_sparse_density"],
- "models": [
- {
- "hash": "b72789b9beb5366dff20b1cf501020c3d4d4df7dc2295ecd0fddd0a6436df070",
- "bounding_box": {
- "minimum": {
- "x": -10.0,
- "y": 0.0,
- "z": -5.0
- },
- "maximum": {
- "x": 9.999999046325684,
- "y": 40.0,
- "z": 5.0
- }
- },
- "transformation": {
- "data": "[[ 1. 0. 0. 0.] [ 0. 1. 0. 20.] [ 0. 0. 1. 0.] [ 0. 0. 0. 1.]]"
- },
- "extruder": 0,
- "model_settings": {
- "support_enabled": true,
- "support_extruder_nr": 1,
- "infill_mesh": false,
- "cutting_mesh": false,
- "support_mesh": false,
- "anti_overhang_mesh": false,
- "wall_line_count": 3,
- "retraction_enable": true,
- "infill_sparse_density": 30,
- "infill_pattern": "triangles",
- "gradual_infill_steps": 0
- }
- }
- ],
- "print_times": {
- "travel": 187,
- "support": 825,
- "infill": 351,
- "total": 7234
- },
- "print_settings": {
- "layer_height": 0.15,
- "support_enabled": true,
- "support_extruder_nr": 1,
- "adhesion_type": "brim",
- "wall_line_count": 3,
- "retraction_enable": true,
- "prime_tower_enable": true,
- "infill_sparse_density": 20,
- "infill_pattern": "triangles",
- "gradual_infill_steps": 0,
- "print_sequence": "all_at_once"
- },
- "output_to": "LocalFileOutputDevice"
-}
diff --git a/resources/qml/WelcomePages/DataCollectionsContent.qml b/resources/qml/WelcomePages/DataCollectionsContent.qml
index a2e54c1849..3f9819fee8 100644
--- a/resources/qml/WelcomePages/DataCollectionsContent.qml
+++ b/resources/qml/WelcomePages/DataCollectionsContent.qml
@@ -48,40 +48,69 @@ Item
spacing: UM.Theme.getSize("wide_margin").height
- Image
+ Label
{
- id: curaImage
+ id: topLabel
+ width: parent.width
anchors.horizontalCenter: parent.horizontalCenter
- source: UM.Theme.getImage("first_run_share_data")
+ horizontalAlignment: Text.AlignHCenter
+ text: catalog.i18nc("@text", "Ultimaker Cura collects anonymous data to improve print quality and user experience, including:")
+ wrapMode: Text.WordWrap
+ font: UM.Theme.getFont("medium")
+ color: UM.Theme.getColor("text")
+ renderType: Text.NativeRendering
+ }
+
+ Grid {
+ columns: 2
+ spacing: UM.Theme.getSize("wide_margin").height
+ anchors.horizontalCenter: parent.horizontalCenter
+
+ ImageTile
+ {
+ text: catalog.i18nc("@text", "Machine types")
+ imageSource: UM.Theme.getImage("first_run_machine_types")
+ }
+
+ ImageTile
+ {
+ text: catalog.i18nc("@text", "Material usage")
+ imageSource: UM.Theme.getImage("first_run_material_usage")
+ }
+
+ ImageTile
+ {
+ text: catalog.i18nc("@text", "Number of slices")
+ imageSource: UM.Theme.getImage("first_run_number_slices")
+ }
+
+ ImageTile
+ {
+ text: catalog.i18nc("@text", "Print settings")
+ imageSource: UM.Theme.getImage("first_run_print_settings")
+ }
}
Label
{
- id: textLabel
+ id: bottomLabel
width: parent.width
anchors.horizontalCenter: parent.horizontalCenter
horizontalAlignment: Text.AlignHCenter
text:
{
- var t = catalog.i18nc("@text", "Ultimaker Cura collects anonymous data to improve print quality and user experience.")
+ var t = catalog.i18nc("@text", "The data that Ultimaker Cura collects will not contain any information about your model.")
var t2 = catalog.i18nc("@text", "More information")
- t += " " + t2 + " "
+ t += " " + t2 + " "
return t
}
textFormat: Text.RichText
wrapMode: Text.WordWrap
font: UM.Theme.getFont("medium")
color: UM.Theme.getColor("text")
+ linkColor: UM.Theme.getColor("text_link")
+ onLinkActivated: CuraApplication.showMoreInformationDialogForAnonymousDataCollection()
renderType: Text.NativeRendering
-
- MouseArea
- {
- anchors.fill: parent
- onClicked:
- {
- CuraApplication.showMoreInformationDialogForAnonymousDataCollection()
- }
- }
}
}
}
diff --git a/resources/qml/WelcomePages/ImageTile.qml b/resources/qml/WelcomePages/ImageTile.qml
new file mode 100644
index 0000000000..7ed07304e6
--- /dev/null
+++ b/resources/qml/WelcomePages/ImageTile.qml
@@ -0,0 +1,39 @@
+// Copyright (c) 2019 Ultimaker B.V.
+// Cura is released under the terms of the LGPLv3 or higher.
+
+import QtQuick 2.10
+import QtQuick.Controls 2.3
+
+import UM 1.3 as UM
+
+
+//
+// This component places a text on top of an image.
+//
+Column
+{
+ leftPadding: UM.Theme.getSize("default_margin").width
+ rightPadding: UM.Theme.getSize("default_margin").width
+ spacing: UM.Theme.getSize("default_margin").height
+ property alias text: label.text
+ property alias imageSource: image.source
+
+ Label
+ {
+ id: label
+ width: image.width
+ anchors.horizontalCenter: image.horizontalCenter
+ horizontalAlignment: Text.AlignHCenter
+ text: ""
+ wrapMode: Text.WordWrap
+ font: UM.Theme.getFont("default")
+ color: UM.Theme.getColor("text")
+ renderType: Text.NativeRendering
+ }
+
+ Image
+ {
+ id: image
+ source: ""
+ }
+}
\ No newline at end of file
diff --git a/resources/qml/WelcomePages/WelcomeContent.qml b/resources/qml/WelcomePages/WelcomeContent.qml
index 0099c3db3d..1464e363a8 100644
--- a/resources/qml/WelcomePages/WelcomeContent.qml
+++ b/resources/qml/WelcomePages/WelcomeContent.qml
@@ -19,7 +19,7 @@ Item
{
anchors.centerIn: parent
width: parent.width
- spacing: UM.Theme.getSize("wide_margin").height
+ spacing: 2 * UM.Theme.getSize("wide_margin").height
Label
{
diff --git a/resources/themes/cura-light/images/first_run_machine_types.svg b/resources/themes/cura-light/images/first_run_machine_types.svg
new file mode 100644
index 0000000000..630fc426b6
--- /dev/null
+++ b/resources/themes/cura-light/images/first_run_machine_types.svg
@@ -0,0 +1,33 @@
+
+
+
+ Machine types
+ Created with Sketch.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/resources/themes/cura-light/images/first_run_material_usage.svg b/resources/themes/cura-light/images/first_run_material_usage.svg
new file mode 100644
index 0000000000..19be250c88
--- /dev/null
+++ b/resources/themes/cura-light/images/first_run_material_usage.svg
@@ -0,0 +1,67 @@
+
+
+
+ material usage
+ Created with Sketch.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/resources/themes/cura-light/images/first_run_number_slices.svg b/resources/themes/cura-light/images/first_run_number_slices.svg
new file mode 100644
index 0000000000..e8a7124ebc
--- /dev/null
+++ b/resources/themes/cura-light/images/first_run_number_slices.svg
@@ -0,0 +1,31 @@
+
+
+
+ number of slices
+ Created with Sketch.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/resources/themes/cura-light/images/first_run_print_settings.svg b/resources/themes/cura-light/images/first_run_print_settings.svg
new file mode 100644
index 0000000000..21ed4030e2
--- /dev/null
+++ b/resources/themes/cura-light/images/first_run_print_settings.svg
@@ -0,0 +1,29 @@
+
+
+
+ Print settings
+ Created with Sketch.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/resources/themes/cura-light/images/first_run_share_data.svg b/resources/themes/cura-light/images/first_run_share_data.svg
deleted file mode 100644
index cd87431067..0000000000
--- a/resources/themes/cura-light/images/first_run_share_data.svg
+++ /dev/null
@@ -1,67 +0,0 @@
-
-
-
- Group 2
- Created with Sketch.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file