DataCollectionsContent.qml 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121
  1. // Copyright (c) 2022 UltiMaker
  2. // Cura is released under the terms of the LGPLv3 or higher.
  3. import QtQuick 2.10
  4. import QtQuick.Controls 2.3
  5. import UM 1.5 as UM
  6. import Cura 1.1 as Cura
  7. //
  8. // This component contains the content for the "Help us to improve Ultimaker Cura" page of the welcome on-boarding process.
  9. //
  10. Item
  11. {
  12. UM.I18nCatalog { id: catalog; name: "cura" }
  13. UM.Label
  14. {
  15. id: titleLabel
  16. anchors.top: parent.top
  17. anchors.horizontalCenter: parent.horizontalCenter
  18. horizontalAlignment: Text.AlignHCenter
  19. text: catalog.i18nc("@label", "Help us to improve UltiMaker Cura")
  20. color: UM.Theme.getColor("primary_button")
  21. font: UM.Theme.getFont("huge")
  22. }
  23. // Area where the cloud contents can be put. Pictures, texts and such.
  24. Item
  25. {
  26. id: contentsArea
  27. anchors
  28. {
  29. top: titleLabel.bottom
  30. bottom: getStartedButton.top
  31. left: parent.left
  32. right: parent.right
  33. topMargin: UM.Theme.getSize("default_margin").width
  34. }
  35. Column
  36. {
  37. anchors.centerIn: parent
  38. width: parent.width
  39. spacing: UM.Theme.getSize("wide_margin").height
  40. UM.Label
  41. {
  42. id: topLabel
  43. width: parent.width
  44. anchors.horizontalCenter: parent.horizontalCenter
  45. horizontalAlignment: Text.AlignHCenter
  46. text: catalog.i18nc("@text", "UltiMaker Cura collects anonymous data to improve print quality and user experience, including:")
  47. wrapMode: Text.WordWrap
  48. font: UM.Theme.getFont("medium")
  49. }
  50. Grid {
  51. columns: 2
  52. spacing: UM.Theme.getSize("wide_margin").height
  53. anchors.horizontalCenter: parent.horizontalCenter
  54. ImageTile
  55. {
  56. text: catalog.i18nc("@text", "Machine types")
  57. imageSource: UM.Theme.getImage("first_run_machine_types")
  58. }
  59. ImageTile
  60. {
  61. text: catalog.i18nc("@text", "Material usage")
  62. imageSource: UM.Theme.getImage("first_run_material_usage")
  63. }
  64. ImageTile
  65. {
  66. text: catalog.i18nc("@text", "Number of slices")
  67. imageSource: UM.Theme.getImage("first_run_number_slices")
  68. }
  69. ImageTile
  70. {
  71. text: catalog.i18nc("@text", "Print settings")
  72. imageSource: UM.Theme.getImage("first_run_print_settings")
  73. }
  74. }
  75. UM.Label
  76. {
  77. id: bottomLabel
  78. width: parent.width
  79. anchors.horizontalCenter: parent.horizontalCenter
  80. horizontalAlignment: Text.AlignHCenter
  81. text:
  82. {
  83. var t = catalog.i18nc("@text", "Data collected by UltiMaker Cura will not contain any personal information.")
  84. var t2 = catalog.i18nc("@text", "More information")
  85. t += " <a href='https://notusedref'>" + t2 + "</a>"
  86. return t
  87. }
  88. textFormat: Text.RichText
  89. wrapMode: Text.WordWrap
  90. font: UM.Theme.getFont("medium")
  91. linkColor: UM.Theme.getColor("text_link")
  92. onLinkActivated: CuraApplication.showMoreInformationDialogForAnonymousDataCollection()
  93. }
  94. }
  95. }
  96. Cura.PrimaryButton
  97. {
  98. id: getStartedButton
  99. anchors.right: parent.right
  100. anchors.bottom: parent.bottom
  101. text: catalog.i18nc("@button", "Next")
  102. onClicked: base.showNextPage()
  103. }
  104. }