UCPDialog.qml 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. // Copyright (c) 2024 Ultimaker B.V.
  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 QtQuick.Layouts 1.3
  6. import QtQuick.Window 2.2
  7. import UM 1.5 as UM
  8. import Cura 1.1 as Cura
  9. UM.Dialog
  10. {
  11. id: exportDialog
  12. title: catalog.i18nc("@title:window", "Export Universal Cura Project")
  13. margin: UM.Theme.getSize("default_margin").width
  14. minimumWidth: UM.Theme.getSize("modal_window_minimum").width
  15. minimumHeight: UM.Theme.getSize("modal_window_minimum").height
  16. backgroundColor: UM.Theme.getColor("detail_background")
  17. headerComponent: Rectangle
  18. {
  19. height: childrenRect.height + 2 * UM.Theme.getSize("default_margin").height
  20. color: UM.Theme.getColor("main_background")
  21. ColumnLayout
  22. {
  23. id: headerColumn
  24. anchors.top: parent.top
  25. anchors.left: parent.left
  26. anchors.right: parent.right
  27. anchors.topMargin: UM.Theme.getSize("default_margin").height
  28. anchors.leftMargin: UM.Theme.getSize("default_margin").width
  29. anchors.rightMargin: anchors.leftMargin
  30. UM.Label
  31. {
  32. id: titleLabel
  33. text: catalog.i18nc("@action:title", "Summary - Universal Cura Project")
  34. font: UM.Theme.getFont("large")
  35. }
  36. UM.Label
  37. {
  38. id: descriptionLabel
  39. text: catalog.i18nc("@action:description", "When exporting a Universal Cura Project, all the models present on the build plate will be included with their current position, orientation and scale. You can also select which per-extruder or per-model settings should be included to ensure a proper printing of the batch, even on different printers.")
  40. font: UM.Theme.getFont("default")
  41. wrapMode: Text.Wrap
  42. Layout.maximumWidth: headerColumn.width
  43. }
  44. }
  45. }
  46. Rectangle
  47. {
  48. anchors.fill: parent
  49. color: UM.Theme.getColor("main_background")
  50. UM.I18nCatalog { id: catalog; name: "cura" }
  51. ListView
  52. {
  53. id: settingsExportList
  54. anchors.fill: parent
  55. anchors.margins: UM.Theme.getSize("default_margin").width
  56. spacing: UM.Theme.getSize("thick_margin").height
  57. model: settingsExportModel.settingsGroups
  58. clip: true
  59. ScrollBar.vertical: UM.ScrollBar { id: verticalScrollBar }
  60. delegate: SettingsSelectionGroup { Layout.margins: 0 }
  61. }
  62. }
  63. rightButtons:
  64. [
  65. Cura.TertiaryButton
  66. {
  67. text: catalog.i18nc("@action:button", "Cancel")
  68. onClicked: reject()
  69. },
  70. Cura.PrimaryButton
  71. {
  72. text: catalog.i18nc("@action:button", "Save project")
  73. onClicked: accept()
  74. }
  75. ]
  76. buttonSpacing: UM.Theme.getSize("wide_margin").width
  77. onClosing:
  78. {
  79. manager.notifyClosed()
  80. }
  81. }