@@ -0,0 +1,115 @@
2+import Ubuntu.Components 1.1
7+ property alias leftText: leftLabel.text
8+ property alias rightText: rightLabel.text
10+ signal leftTriggered()
11+ signal rightTriggered()
13+ readonly property double redH: 0.991
14+ readonly property double redS: 0.892
15+ readonly property double redL: 0.563
16+ readonly property double greenH: 0.386
17+ readonly property double greenS: 1.0
18+ readonly property double greenL: 0.316
19+ readonly property double sliderHeight: 4
20+ readonly property color lightGrey: "#eaeaea"
21+ readonly property color black: "#000000"
22+ readonly property color textColor: "#ffffff"
27+ width: swipeToAct.width
33+ property double scale: width / ((row.width - slider.width) / 2)
34+ color: Qt.hsla(redH, redS * (scale < 1.0 ? scale : 1.0), redL, 1.0)
35+ opacity: scale < 1.0 ? scale : 1.0
37+ height: units.gu(sliderHeight)
41+ anchors.centerIn: parent
53+ UbuntuNumberAnimation {
54+ duration: UbuntuAnimation.FastDuration
55+ easing.type: Easing.OutBounce
63+ if (x === row.width - slider.width) {
69+ x: (row.width - slider.width) / 2
71+ height: units.gu(sliderHeight)
78+ property double scale: width / ((row.width - slider.width) / 2)
79+ color: Qt.hsla(greenH, greenS * (scale < 1.0 ? scale : 1.0), greenL, 1.0)
80+ opacity: scale < 1.0 ? scale : 1.0
81+ x: slider.x + slider.width
82+ width: row.width - (leftShape.width + slider.width)
83+ height: units.gu(sliderHeight)
87+ anchors.centerIn: parent
99+ drag.axis: Drag.XAxis
101+ drag.maximumX: row.width - slider.width
104+ if (slider.x !== 0 || slider.x !== row.width - slider.width) {
105+ slider.x = (row.width - slider.width) / 2
107+ if (slider.x < units.gu(.5)) {
110+ if (slider.x > row.width - slider.width - units.gu(.5)) {
111+ slider.x = row.width - slider.width