|
|
|
@ -47,7 +47,18 @@ QGCViewDialog {
@@ -47,7 +47,18 @@ QGCViewDialog {
|
|
|
|
|
QGCPalette { id: qgcPal; colorGroupEnabled: true } |
|
|
|
|
|
|
|
|
|
function accept() { |
|
|
|
|
if (factCombo.visible) { |
|
|
|
|
if (bitmaskEditor.visible) { |
|
|
|
|
var value = 0; |
|
|
|
|
for (var i = 0; i < fact.bitmaskValues.length; ++i) { |
|
|
|
|
var checkbox = bitmaskEditor.itemAt(i) |
|
|
|
|
if (checkbox.checked) { |
|
|
|
|
value |= fact.bitmaskValues[i]; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
fact.value = value; |
|
|
|
|
fact.valueChanged(fact.value) |
|
|
|
|
} |
|
|
|
|
else if (factCombo.visible) { |
|
|
|
|
fact.enumIndex = factCombo.currentIndex |
|
|
|
|
hideDialog() |
|
|
|
|
} else { |
|
|
|
@ -127,7 +138,7 @@ QGCViewDialog {
@@ -127,7 +138,7 @@ QGCViewDialog {
|
|
|
|
|
visible: _showCombo |
|
|
|
|
model: fact.enumStrings |
|
|
|
|
|
|
|
|
|
property bool _showCombo: fact.enumStrings.length != 0 && !validate |
|
|
|
|
property bool _showCombo: fact.enumStrings.length != 0 && fact.bitmaskStrings.length == 0 && !validate |
|
|
|
|
|
|
|
|
|
Component.onCompleted: { |
|
|
|
|
// We can't bind directly to fact.enumIndex since that would add an unknown value |
|
|
|
@ -138,6 +149,19 @@ QGCViewDialog {
@@ -138,6 +149,19 @@ QGCViewDialog {
|
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
Column { |
|
|
|
|
spacing: ScreenTools.defaultFontPixelHeight / 2 |
|
|
|
|
|
|
|
|
|
Repeater { |
|
|
|
|
id: bitmaskEditor |
|
|
|
|
model: fact.bitmaskStrings |
|
|
|
|
delegate : QGCCheckBox { |
|
|
|
|
text : modelData |
|
|
|
|
checked : fact.value & fact.bitmaskValues[index] |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
QGCLabel { text: fact.name } |
|
|
|
|
|
|
|
|
|
Row { |
|
|
|
|