LayerView.qml 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  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: UM.Theme.getSize("button").width
  11. height: UM.Theme.getSize("slider_layerview_size").height
  12. Slider
  13. {
  14. id: slider
  15. width: UM.Theme.getSize("slider_layerview_size").width
  16. height: UM.Theme.getSize("slider_layerview_size").height
  17. anchors.left: parent.left
  18. anchors.leftMargin: UM.Theme.getSize("slider_layerview_margin").width/2
  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.left: parent.left
  29. anchors.verticalCenter: parent.verticalCenter
  30. z: slider.z - 1
  31. width: UM.Theme.getSize("slider_layerview_background").width
  32. height: slider.height + UM.Theme.getSize("default_margin").height * 2
  33. color: UM.Theme.getColor("tool_panel_background");
  34. border.width: UM.Theme.getSize("default_lining").width
  35. border.color: UM.Theme.getColor("lining")
  36. MouseArea {
  37. id: sliderMouseArea
  38. property double manualStepSize: slider.maximumValue / 11
  39. anchors.fill: parent
  40. onWheel: {
  41. slider.value = wheel.angleDelta.y < 0 ? slider.value - sliderMouseArea.manualStepSize : slider.value + sliderMouseArea.manualStepSize
  42. }
  43. }
  44. }
  45. }