diff --git a/qgroundcontrol.qrc b/qgroundcontrol.qrc index cc590f610596fc0775227b213747a3b92459f5c4..8d3a851918ef2d62c91d5884dab6571e0257b06d 100644 --- a/qgroundcontrol.qrc +++ b/qgroundcontrol.qrc @@ -76,6 +76,7 @@ src/QmlControls/VehicleSummaryRow.qml src/ViewWidgets/ViewWidget.qml src/QmlControls/FactSliderPanel.qml + src/FactSystem/FactControls/FactBitmask.qml src/FactSystem/FactControls/FactCheckBox.qml src/FactSystem/FactControls/FactComboBox.qml src/FactSystem/FactControls/FactLabel.qml diff --git a/src/FactSystem/FactControls/FactBitmask.qml b/src/FactSystem/FactControls/FactBitmask.qml new file mode 100644 index 0000000000000000000000000000000000000000..86203eebc50c83c40e382ab4a4ff1253b4eb4536 --- /dev/null +++ b/src/FactSystem/FactControls/FactBitmask.qml @@ -0,0 +1,30 @@ +import QtQuick 2.5 +import QtQuick.Controls 1.2 + +import QGroundControl.FactSystem 1.0 +import QGroundControl.Palette 1.0 +import QGroundControl.Controls 1.0 +import QGroundControl.ScreenTools 1.0 + +Row { + spacing: ScreenTools.defaultFontPixelWidth + + property Fact fact: Fact { } + + Repeater { + model: fact.bitmaskStrings + + QGCCheckBox { + text: modelData + checked: fact.value & fact.bitmaskValues[index] + + onClicked: { + if (checked) { + fact.value |= fact.bitmaskValues[index] + } else { + fact.value &= ~fact.bitmaskValues[index] + } + } + } + } +} diff --git a/src/FactSystem/FactControls/FactComboBox.qml b/src/FactSystem/FactControls/FactComboBox.qml index a73488f6f2da7a51ed5a3497dbf4555482fa709e..7c61bd4278cc099ff2841ecc5b2b0d14117caae2 100644 --- a/src/FactSystem/FactControls/FactComboBox.qml +++ b/src/FactSystem/FactControls/FactComboBox.qml @@ -18,7 +18,7 @@ QGCComboBox { if (indexModel) { fact.value = index } else { - fact.enumIndex = index + fact.value = fact.enumValues[index] } } } diff --git a/src/FactSystem/FactControls/qmldir b/src/FactSystem/FactControls/qmldir index b982d612fcdaf8b509097f80250dde4bf3004bb6..a919ae3b9d4d9849caa96a300b83c57ab10a7049 100644 --- a/src/FactSystem/FactControls/qmldir +++ b/src/FactSystem/FactControls/qmldir @@ -1,7 +1,8 @@ Module QGroundControl.FactControls -FactPanel 1.0 FactPanel.qml -FactLabel 1.0 FactLabel.qml -FactTextField 1.0 FactTextField.qml -FactCheckBox 1.0 FactCheckBox.qml -FactComboBox 1.0 FactComboBox.qml \ No newline at end of file +FactBitmask 1.0 FactBitmask.qml +FactCheckBox 1.0 FactCheckBox.qml +FactComboBox 1.0 FactComboBox.qml +FactLabel 1.0 FactLabel.qml +FactPanel 1.0 FactPanel.qml +FactTextField 1.0 FactTextField.qml