Skip to content

Commit c610ddf

Browse files
committed
Switchable outputs: Add some optional settings
Contributes to: #2591
1 parent a5cba9a commit c610ddf

File tree

1 file changed

+113
-0
lines changed

1 file changed

+113
-0
lines changed

pages/settings/devicelist/switchable-outputs/PageSwitchableOutput.qml

Lines changed: 113 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,119 @@ Page {
8585
preferredVisible: dataItem.valid
8686
unit: VenusOS.Units_Amp
8787
}
88+
89+
ListRadioButtonGroup {
90+
//% "Polarity"
91+
text: qsTrId("page_switchable_output_polarity")
92+
dataItem.uid: root.outputUid + "/Settings/Polarity"
93+
preferredVisible: dataItem.valid
94+
optionModel: [
95+
//% "Active high / Normally open"
96+
{ display: qsTrId("page_switchable_output_polarity_active_high"), value: 0 },
97+
//% "Active low / Normally closed"
98+
{ display: qsTrId("page_switchable_output_polarity_active_low"), value: 1 }
99+
]
100+
}
101+
102+
ListRadioButtonGroup {
103+
//% "Dim mode"
104+
text: qsTrId("page_switchable_output_dim_mode")
105+
dataItem.uid: root.outputUid + "/Settings/DimMode"
106+
preferredVisible: dataItem.valid
107+
optionModel: [
108+
//% "Dimming disabled"
109+
{ display: qsTrId("page_switchable_output_dim_mode_disabled"), value: 0 },
110+
//% "Linear"
111+
{ display: qsTrId("page_switchable_output_dim_mode_linear"), value: 1 },
112+
//% "Optical curve"
113+
{ display: qsTrId("page_switchable_output_dim_mode_optical"), value: 2 }
114+
]
115+
}
116+
117+
ListRadioButtonGroup {
118+
//% "Switch mode"
119+
text: qsTrId("page_switchable_output_switch_mode")
120+
dataItem.uid: root.outputUid + "/Settings/SwitchMode"
121+
preferredVisible: dataItem.valid
122+
optionModel: [
123+
//% "Permanent disabled"
124+
{ display: qsTrId("page_switchable_output_switch_mode_disabled"), value: 0 },
125+
//% "Permanently enabled"
126+
{ display: qsTrId("page_switchable_output_switch_mode_linear"), value: 1 },
127+
//% "Switching"
128+
{ display: qsTrId("page_switchable_output_switch_mode_optical"), value: 2 }
129+
]
130+
}
131+
132+
ListRadioButtonGroup {
133+
//% "Startup state"
134+
text: qsTrId("page_switchable_output_startup_state")
135+
dataItem.uid: root.outputUid + "/Settings/StartupState"
136+
preferredVisible: dataItem.valid
137+
optionModel: [
138+
{ display: commonWords.off, value: 0 },
139+
{ display: commonWords.on, value: 1 },
140+
//% "Restore from memory"
141+
{ display: qsTrId("page_switchable_output_startup_state_restore_from_memory"), value: -1 }
142+
]
143+
}
144+
145+
ListSwitch {
146+
id: restoreDimLevelSwitch
147+
//% "Restore dim level from memory"
148+
text: qsTrId("page_switchable_output_restore_dim_level")
149+
checked: restoreDimLevel.dataItem.valid && restoreDimLevel.dataItem.value === -1
150+
preferredVisible: restoreDimLevel.dataItem.valid
151+
onClicked: {
152+
restoreDimLevel.dataItem.setValue(restoreDimLevel.dataItem.value === -1 ? 0 : -1)
153+
}
154+
}
155+
156+
ListSpinBox {
157+
id: restoreDimLevel
158+
159+
//% "Restore dim level"
160+
text: qsTrId("settings_dvcc_restore_dim_level")
161+
preferredVisible: restoreDimLevelSwitch.visible && !restoreDimLevelSwitch.checked
162+
from: 0
163+
to: 100
164+
suffix: "%"
165+
dataItem.uid: Global.systemSettings.serviceUid + root.outputUid + "/Settings/StartupDimming"
166+
167+
}
168+
169+
ListSpinBox {
170+
//% "Output limit min"
171+
text: qsTrId("settings_dvcc_output_limit_min")
172+
preferredVisible: dataItem.valid
173+
from: 0
174+
to: 100
175+
suffix: "%"
176+
dataItem.uid: Global.systemSettings.serviceUid + root.outputUid + "/Settings/OutputLimitMin"
177+
}
178+
179+
ListSpinBox {
180+
//% "Output limit max"
181+
text: qsTrId("settings_dvcc_output_limit_max")
182+
preferredVisible: dataItem.valid
183+
from: 0
184+
to: 100
185+
suffix: "%"
186+
dataItem.uid: Global.systemSettings.serviceUid + root.outputUid + "/Settings/OutputLimitMax"
187+
}
188+
189+
ListRadioButtonGroup {
190+
//% "Fuse detection mode"
191+
text: qsTrId("page_switchable_output_fuse_detection_mode")
192+
dataItem.uid: root.outputUid + "/Settings/FuseDetection"
193+
preferredVisible: dataItem.valid
194+
optionModel: [
195+
{ display: commonWords.disabled, value: 0 },
196+
{ display: commonWords.enabled, value: 1 },
197+
//% "Only when the output is off"
198+
{ display: qsTrId("page_switchable_output_fuse_detection_mode_only_when_off"), value: 2 }
199+
]
200+
}
88201
}
89202
}
90203
}

0 commit comments

Comments
 (0)