Commit fb0e158e authored by Don Gagne's avatar Don Gagne

New Fact controls

parent e79c7162
import QtQuick 2.2
import QtQuick.Controls 1.2
import QtQuick.Controls.Styles 1.2
import QGroundControl.FactSystem 1.0
CheckBox {
property Fact fact: Fact { value: 0 }
property variant checkedValue: 1
property variant uncheckedValue: 0
partiallyCheckedEnabled: fact.value != checkedValue && fact.value != uncheckedValue
checkedState: fact.value == checkedValue ? Qt.Checked : (fact.value == uncheckedValue ? Qt.Unchecked : Qt.PartiallyChecked)
text: "Label"
onClicked: {
fact.value = checked ? checkedValue : uncheckedValue
}
style: CheckBoxStyle {
label: Text {
color: palette.windowText
text: control.text
}
}
}
......@@ -9,5 +9,5 @@ Label {
color: palette.windowText
text: fact.value
text: fact.valueString
}
......@@ -5,10 +5,56 @@ import QGroundControl.FactSystem 1.0
TextField {
property Fact fact: Fact { value: 0 }
property bool showUnits: false
QGCPalette { id: palette; colorGroup: enabled ? QGCPalette.Active : QGCPalette.Disabled }
QGCPalette { id: palette; colorGroup: QGCPalette.Active }
text: fact.valueString
textColor: palette.text
text: fact.value
Label {
id: unitsLabelWidthGenerator
text: parent.fact.units
width: contentWidth + ((parent.__contentHeight/3)*2)
visible: false
}
onAccepted: fact.value = text
style: TextFieldStyle {
background: Item {
id: backgroundItem
Rectangle {
anchors.fill: parent
anchors.bottomMargin: -1
color: "#44ffffff"
}
Rectangle {
anchors.fill: parent
border.color: control.activeFocus ? "#47b" : "#999"
color: palette.base
}
Text {
id: unitsLabel
anchors.top: parent.top
anchors.bottom: parent.bottom
verticalAlignment: Text.AlignVCenter
horizontalAlignment: Text.AlignHCenter
x: parent.width - width
width: unitsLabelWidthGenerator.width
text: control.fact.units
color: control.textColor
visible: control.showUnits
}
}
padding.right: control.showUnits ? unitsLabelWidthGenerator.width : control.__contentHeight/3
}
onEditingFinished: fact.value = text
}
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