@@ -16,37 +16,60 @@ PropertyEditorGroupBox {
1616 ColumnLayout {
1717 id: columnLayout
1818 width: parent .width
19- CheckBox {
19+ BooleanPropertyEditorField {
20+ windowHandle: groupBox .windowHandle
21+ propertyMapper: groupBox .propertyMapper
22+ key: " mute"
2023 text: qsTr (" Mute" )
21- tristate : true
24+ transactionName : qsTr ( " Toggling mute " )
2225 }
23- CheckBox {
26+ BooleanPropertyEditorField {
27+ windowHandle: groupBox .windowHandle
28+ propertyMapper: groupBox .propertyMapper
29+ visible: groupBox .propertyMapper && (" solo" in groupBox .propertyMapper )
30+ key: " solo"
2431 text: qsTr (" Solo" )
25- tristate : true
32+ transactionName : qsTr ( " Toggling solo " )
2633 }
27- CheckBox {
34+ BooleanPropertyEditorField {
35+ windowHandle: groupBox .windowHandle
36+ propertyMapper: groupBox .propertyMapper
37+ visible: groupBox .propertyMapper && (" record" in groupBox .propertyMapper )
38+ key: " record"
2839 text: qsTr (" Record" )
29- tristate : true
40+ transactionName : qsTr ( " Toggling record " )
3041 }
31- FormGroup {
32- Layout .fillWidth : true
33- label: qsTr (" Gain" )
34- rowItem: SpinBox {
35-
42+ IntegerPropertyEditorField {
43+ windowHandle: groupBox .windowHandle
44+ propertyMapper: groupBox .propertyMapper
45+ key: " gain"
46+ label: qsTr (" Gain (dB)" )
47+ useSlider: true
48+ from: SVS .decibelsToGain (- 96 )
49+ to: SVS .decibelsToGain (6 )
50+ spinBoxValueFromProperty : v => Math .round (SVS .gainToDecibels (v) * 10 )
51+ propertyFromSpinBoxValue : v => SVS .decibelsToGain (v / 10 )
52+ sliderValueFromProperty : v => SVS .decibelToLinearValue (SVS .gainToDecibels (v)) - SVS .decibelToLinearValue (0 )
53+ propertyFromSliderValue : v => SVS .decibelsToGain (SVS .linearValueToDecibel (v + SVS .decibelToLinearValue (0 )))
54+ transactionName: qsTr (" Editing gain" )
55+ spinBox .textFromValue : function (value , locale ) {
56+ return Number (value / 10 ).toLocaleString (locale, ' f' , 1 )
3657 }
37- columnItem : Slider {
38-
58+ spinBox . valueFromText : function ( text , locale ) {
59+ return Math . round ( Number . fromLocaleString (locale, text) * 10 )
3960 }
4061 }
41- FormGroup {
42- Layout .fillWidth : true
43- label: qsTr (" Pan" )
44- rowItem: SpinBox {
45-
46- }
47- columnItem: Slider {
48-
49- }
62+ IntegerPropertyEditorField {
63+ windowHandle: groupBox .windowHandle
64+ propertyMapper: groupBox .propertyMapper
65+ key: " pan"
66+ label: qsTr (" Pan (%)" )
67+ useSlider: true
68+ from: - 1
69+ to: 1
70+ spinBoxValueFromProperty : v => v * 100
71+ propertyFromSpinBoxValue : v => v * 0.01
72+ transactionName: qsTr (" Editing pan" )
5073 }
5174 }
5275}
0 commit comments