LayerView.qml 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. // Copyright (c) 2015 Ultimaker B.V.
  2. // Cura is released under the terms of the AGPLv3 or higher.
  3. import QtQuick 2.2
  4. import QtQuick.Controls 1.2
  5. import QtQuick.Layouts 1.1
  6. import QtQuick.Controls.Styles 1.1
  7. import UM 1.0 as UM
  8. Item
  9. {
  10. width: 250
  11. height: 250
  12. Slider
  13. {
  14. id: slider
  15. width: 10
  16. height: 250
  17. anchors.right : parent.right
  18. anchors.rightMargin: UM.Theme.sizes.slider_layerview_margin.width
  19. orientation: Qt.Vertical
  20. minimumValue: 0;
  21. maximumValue: UM.LayerView.numLayers;
  22. stepSize: 1
  23. value: UM.LayerView.currentLayer
  24. onValueChanged: UM.LayerView.setCurrentLayer(value)
  25. style: UM.Theme.styles.layerViewSlider
  26. }
  27. Rectangle {
  28. anchors.right: parent.right
  29. y: -UM.Theme.sizes.slider_layerview_background_extension.height
  30. z: slider.z - 1
  31. width: UM.Theme.sizes.button.width
  32. height: UM.Theme.sizes.slider_layerview_background_extension.height
  33. color: UM.Theme.colors.slider_text_background
  34. }
  35. UM.AngledCornerRectangle {
  36. anchors.right : parent.right
  37. anchors.verticalCenter: parent.verticalCenter
  38. z: slider.z - 1
  39. cornerSize: UM.Theme.sizes.default_margin.width;
  40. width: UM.Theme.sizes.slider_layerview_background.width
  41. height: slider.height + UM.Theme.sizes.default_margin.height * 2
  42. color: UM.Theme.colors.slider_text_background
  43. MouseArea {
  44. id: sliderMouseArea
  45. property double manualStepSize: slider.maximumValue / 11
  46. anchors.fill: parent
  47. onWheel: {
  48. slider.value = wheel.angleDelta.y < 0 ? slider.value - sliderMouseArea.manualStepSize : slider.value + sliderMouseArea.manualStepSize
  49. }
  50. }
  51. }
  52. }