volumeslider: rework of slider layout
[apps/mixer.git] / app / VolumeSlider.qml
index 56881b7..b7a98f8 100644 (file)
@@ -1,44 +1,33 @@
+import QtQuick 2.6
 import QtQuick.Layouts 1.1
 import QtQuick.Controls 2.0
 
-RowLayout {
-    property int value
-    property string role
+ColumnLayout {
+       anchors.left: parent.left
+       anchors.right: parent.right
+       Layout.minimumHeight: 125
 
-    onRoleChanged: sliderName.text = role
-    onValueChanged: {
-        sliderValue.text = value + " %"
-        sliderControl.value = value;
-    }
+       Label {
+               font.pixelSize: 24
+               text: modelData.name
+       }
+       Label {
+               font.pixelSize: 24
+               text: modelData.value + " %"
+       }
+       Slider {
+               id: roleValueSlider
+               Layout.fillWidth: true
+               from: 0
+               to: 100
+               value: modelData.value
+               stepSize: 1
+               snapMode: Slider.SnapOnRelease
+       }
 
-    //id: slider_" + name + "
-    Layout.minimumHeight: 75
-    Label {
-        id: sliderName
-        font.pixelSize: 24
-        text: role
-        Layout.minimumWidth: 150
-    }
-    Label {
-        id: sliderValue
-        //id: slider_" + name + "_textvalue
-        font.pixelSize: 24
-        text: "0 %"
-    }
-    Slider {
-        id: sliderControl
-        //id: slider_" + name + "_slider
-        Layout.fillWidth: true
-        from: 0
-        to: 100
-        stepSize: 1
-        snapMode: Slider.SnapOnRelease
-        onValueChanged: {
-            //slider_" + name + "_textvalue.text = value + \" %\"
-            //mixer.setVolume(\"" + name + "\", value)
-        }
-        //Component.onCompleted: {
-            //mixer.getVolume(\"" + name + "\")
-        //}
-    }
+       Binding {
+               target: modelData
+               property: "value"
+               value: roleValueSlider.value
+       }
 }