FirmwareUpdateWindow.qml 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. // Copyright (c) 2017 Ultimaker B.V.
  2. // Cura is released under the terms of the LGPLv3 or higher.
  3. import QtQuick 2.2
  4. import QtQuick.Window 2.2
  5. import QtQuick.Controls 1.2
  6. import UM 1.1 as UM
  7. UM.Dialog
  8. {
  9. id: base;
  10. width: minimumWidth;
  11. minimumWidth: 500 * screenScaleFactor;
  12. height: minimumHeight;
  13. minimumHeight: 100 * screenScaleFactor;
  14. visible: true;
  15. modality: Qt.ApplicationModal;
  16. title: catalog.i18nc("@title:window","Firmware Update");
  17. Column
  18. {
  19. anchors.fill: parent;
  20. Label
  21. {
  22. anchors
  23. {
  24. left: parent.left;
  25. right: parent.right;
  26. }
  27. text: {
  28. switch (manager.firmwareUpdateState)
  29. {
  30. case 0:
  31. return "" //Not doing anything (eg; idling)
  32. case 1:
  33. return catalog.i18nc("@label","Updating firmware.")
  34. case 2:
  35. return catalog.i18nc("@label","Firmware update completed.")
  36. case 3:
  37. return catalog.i18nc("@label","Firmware update failed due to an unknown error.")
  38. case 4:
  39. return catalog.i18nc("@label","Firmware update failed due to an communication error.")
  40. case 5:
  41. return catalog.i18nc("@label","Firmware update failed due to an input/output error.")
  42. case 6:
  43. return catalog.i18nc("@label","Firmware update failed due to missing firmware.")
  44. }
  45. }
  46. wrapMode: Text.Wrap;
  47. }
  48. ProgressBar
  49. {
  50. id: prog
  51. value: manager.firmwareProgress
  52. minimumValue: 0
  53. maximumValue: 100
  54. indeterminate: manager.firmwareProgress < 1 && manager.firmwareProgress > 0
  55. anchors
  56. {
  57. left: parent.left;
  58. right: parent.right;
  59. }
  60. }
  61. SystemPalette
  62. {
  63. id: palette;
  64. }
  65. UM.I18nCatalog { id: catalog; name: "cura"; }
  66. }
  67. rightButtons: [
  68. Button
  69. {
  70. text: catalog.i18nc("@action:button","Close");
  71. enabled: manager.firmwareUpdateCompleteStatus;
  72. onClicked: base.visible = false;
  73. }
  74. ]
  75. }