Commit 47b1c7e7 authored by Don Gagne's avatar Don Gagne Committed by GitHub

Merge pull request #3703 from Rudi3/ch6_tune

[APM] [Copter] Ch6 tune
parents 627025d8 f1796a5f
...@@ -275,63 +275,148 @@ QGCView { ...@@ -275,63 +275,148 @@ QGCView {
} }
} // Rectangle - Basic tuning } // Rectangle - Basic tuning
QGCLabel { Flow {
id: autoTuneLabel id: flowLayout
anchors.topMargin: _margins anchors.topMargin: _margins / 2
width: panel.width // parent.width doesn't work here for some reason!
anchors.top: basicTuningRect.bottom anchors.top: basicTuningRect.bottom
text: qsTr("AutoTune") spacing: _margins
font.family: ScreenTools.demiboldFontFamily
}
Rectangle { Rectangle {
id: autoTuneRect height: autoTuneLabel.height + autoTuneRect.height
anchors.topMargin: _margins / 2 width: autoTuneRect.width
anchors.left: parent.left color: palette.window
anchors.top: autoTuneLabel.bottom
width: autoTuneColumn.x + autoTuneColumn.width + _margins
height: autoTuneColumn.y + autoTuneColumn.height + _margins
color: palette.windowShade
Column { QGCLabel {
id: autoTuneColumn id: autoTuneLabel
anchors.margins: _margins text: qsTr("AutoTune")
anchors.left: parent.left font.family: ScreenTools.demiboldFontFamily
anchors.top: parent.top }
spacing: _margins
Row { Rectangle {
spacing: _margins id: autoTuneRect
width: autoTuneColumn.x + autoTuneColumn.width + _margins
height: autoTuneColumn.y + autoTuneColumn.height + _margins
anchors.top: autoTuneLabel.bottom
color: palette.windowShade
QGCLabel { text: qsTr("Axes to AutoTune:") } Column {
FactBitmask { fact: _autoTuneAxes } id: autoTuneColumn
} anchors.margins: _margins
anchors.left: parent.left
anchors.top: parent.top
spacing: _margins
Row { Row {
spacing: _margins spacing: _margins
QGCLabel { QGCLabel { text: qsTr("Axes to AutoTune:") }
anchors.baseline: autoTuneChannelCombo.baseline FactBitmask { fact: _autoTuneAxes }
text: qsTr("Channel for AutoTune switch:") }
}
Row {
spacing: _margins
QGCLabel {
anchors.baseline: autoTuneChannelCombo.baseline
text: qsTr("Channel for AutoTune switch:")
}
QGCComboBox { QGCComboBox {
id: autoTuneChannelCombo id: autoTuneChannelCombo
width: ScreenTools.defaultFontPixelWidth * 14 width: ScreenTools.defaultFontPixelWidth * 14
model: [qsTr("None"), qsTr("Channel 7"), qsTr("Channel 8"), qsTr("Channel 9"), qsTr("Channel 10"), qsTr("Channel 11"), qsTr("Channel 12") ] model: [qsTr("None"), qsTr("Channel 7"), qsTr("Channel 8"), qsTr("Channel 9"), qsTr("Channel 10"), qsTr("Channel 11"), qsTr("Channel 12") ]
currentIndex: _autoTuneSwitchChannelIndex currentIndex: _autoTuneSwitchChannelIndex
onActivated: { onActivated: {
var channel = index var channel = index
if (channel > 0) { if (channel > 0) {
channel += 6 channel += 6
}
setChannelAutoTuneOption(channel)
}
} }
setChannelAutoTuneOption(channel)
} }
} }
} // Rectangle - AutoTune
} // Rectangle - AutoTuneWrap
Rectangle {
height: inFlightTuneLabel.height + channel6TuningOption.height
width: channel6TuningOption.width
color: palette.window
QGCLabel {
id: inFlightTuneLabel
text: qsTr("In Flight Tuning")
font.family: ScreenTools.demiboldFontFamily
} }
}
} // Rectangle - AutoTune Rectangle {
id: channel6TuningOption
width: channel6TuningOptColumn.width + (_margins * 2)
height: channel6TuningOptColumn.height + ScreenTools.defaultFontPixelHeight
anchors.top: inFlightTuneLabel.bottom
color: qgcPal.windowShade
Column {
id: channel6TuningOptColumn
anchors.margins: ScreenTools.defaultFontPixelWidth
anchors.left: parent.left
anchors.top: parent.top
spacing: ScreenTools.defaultFontPixelHeight
Row {
spacing: ScreenTools.defaultFontPixelWidth
property Fact nullFact: Fact { }
QGCLabel {
anchors.baseline: optCombo.baseline
text: qsTr("Channel Option 6 (Tuning):")
//color: controller.channelOptionEnabled[modelData] ? "yellow" : qgcPal.text
}
FactComboBox {
id: optCombo
width: ScreenTools.defaultFontPixelWidth * 15
fact: controller.getParameterFact(-1, "TUNE")
indexModel: false
}
}
Row {
spacing: ScreenTools.defaultFontPixelWidth
property Fact nullFact: Fact { }
QGCLabel {
anchors.baseline: tuneMinField.baseline
text: qsTr("Min:")
//color: controller.channelOptionEnabled[modelData] ? "yellow" : qgcPal.text
}
FactTextField {
id: tuneMinField
validator: DoubleValidator {bottom: 0; top: 32767;}
fact: controller.getParameterFact(-1, "TUNE_LOW")
}
QGCLabel {
anchors.baseline: tuneMaxField.baseline
text: qsTr("Max:")
//color: controller.channelOptionEnabled[modelData] ? "yellow" : qgcPal.text
}
FactTextField {
id: tuneMaxField
validator: DoubleValidator {bottom: 0; top: 32767;}
fact: controller.getParameterFact(-1, "TUNE_HIGH")
}
}
} // Column - Channel 6 Tuning option
} // Rectangle - Channel 6 Tuning options
} // Rectangle - Channel 6 Tuning options wrap
} // Flow - Tune
} // QGCFlickable } // QGCFlickable
} // QGCViewPanel } // QGCViewPanel
} // QGCView } // QGCView
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment