17 changed files with 500 additions and 271 deletions
@ -0,0 +1,123 @@ |
|||||||
|
import QtQuick 2.2 |
||||||
|
import QtQuick.Controls 1.2 |
||||||
|
import QtQuick.Controls.Styles 1.2 |
||||||
|
import QtQuick.Dialogs 1.2 |
||||||
|
|
||||||
|
import QGroundControl.ScreenTools 1.0 |
||||||
|
import QGroundControl.Vehicle 1.0 |
||||||
|
import QGroundControl.Controls 1.0 |
||||||
|
import QGroundControl.FactControls 1.0 |
||||||
|
import QGroundControl.Palette 1.0 |
||||||
|
|
||||||
|
// Editor for Simple mission items |
||||||
|
Rectangle { |
||||||
|
id: valuesRect |
||||||
|
width: availableWidth |
||||||
|
height: valuesItem.height |
||||||
|
color: qgcPal.windowShadeDark |
||||||
|
visible: missionItem.isCurrentItem |
||||||
|
radius: _radius |
||||||
|
|
||||||
|
// The following properties must be available up the hierachy chain |
||||||
|
//property real availableWidth ///< Width for control |
||||||
|
//property var missionItem ///< Mission Item for editor |
||||||
|
|
||||||
|
Item { |
||||||
|
id: valuesItem |
||||||
|
anchors.margins: _margin |
||||||
|
anchors.left: parent.left |
||||||
|
anchors.right: parent.right |
||||||
|
anchors.top: parent.top |
||||||
|
height: valuesColumn.height + (_margin * 2) |
||||||
|
|
||||||
|
Column { |
||||||
|
id: valuesColumn |
||||||
|
anchors.left: parent.left |
||||||
|
anchors.right: parent.right |
||||||
|
anchors.top: parent.top |
||||||
|
spacing: _margin |
||||||
|
|
||||||
|
QGCLabel { |
||||||
|
width: parent.width |
||||||
|
wrapMode: Text.WordWrap |
||||||
|
text: missionItem.sequenceNumber == 0 ? |
||||||
|
"Planned home position." : |
||||||
|
(missionItem.rawEdit ? |
||||||
|
"Provides advanced access to all commands/parameters. Be very careful!" : |
||||||
|
missionItem.commandDescription) |
||||||
|
} |
||||||
|
|
||||||
|
Repeater { |
||||||
|
model: missionItem.comboboxFacts |
||||||
|
|
||||||
|
Item { |
||||||
|
width: valuesColumn.width |
||||||
|
height: comboBoxFact.height |
||||||
|
|
||||||
|
QGCLabel { |
||||||
|
id: comboBoxLabel |
||||||
|
anchors.baseline: comboBoxFact.baseline |
||||||
|
text: object.name |
||||||
|
visible: object.name != "" |
||||||
|
} |
||||||
|
|
||||||
|
FactComboBox { |
||||||
|
id: comboBoxFact |
||||||
|
anchors.right: parent.right |
||||||
|
width: comboBoxLabel.visible ? _editFieldWidth : parent.width |
||||||
|
indexModel: false |
||||||
|
model: object.enumStrings |
||||||
|
fact: object |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
Repeater { |
||||||
|
model: missionItem.textFieldFacts |
||||||
|
|
||||||
|
Item { |
||||||
|
width: valuesColumn.width |
||||||
|
height: textField.height |
||||||
|
|
||||||
|
QGCLabel { |
||||||
|
id: textFieldLabel |
||||||
|
anchors.baseline: textField.baseline |
||||||
|
text: object.name |
||||||
|
} |
||||||
|
|
||||||
|
FactTextField { |
||||||
|
id: textField |
||||||
|
anchors.right: parent.right |
||||||
|
width: _editFieldWidth |
||||||
|
showUnits: true |
||||||
|
fact: object |
||||||
|
visible: !_root.readOnly |
||||||
|
} |
||||||
|
|
||||||
|
FactLabel { |
||||||
|
anchors.baseline: textFieldLabel.baseline |
||||||
|
anchors.right: parent.right |
||||||
|
fact: object |
||||||
|
visible: _root.readOnly |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
Repeater { |
||||||
|
model: missionItem.checkboxFacts |
||||||
|
|
||||||
|
FactCheckBox { |
||||||
|
text: object.name |
||||||
|
fact: object |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
QGCButton { |
||||||
|
text: "Move Home to map center" |
||||||
|
visible: missionItem.homePosition |
||||||
|
onClicked: editorRoot.moveHomeToMapCenter() |
||||||
|
anchors.horizontalCenter: parent.horizontalCenter |
||||||
|
} |
||||||
|
} // Column |
||||||
|
} // Item |
||||||
|
} // Rectangle |
@ -0,0 +1,62 @@ |
|||||||
|
import QtQuick 2.2 |
||||||
|
import QtQuick.Controls 1.2 |
||||||
|
|
||||||
|
import QGroundControl.ScreenTools 1.0 |
||||||
|
import QGroundControl.Vehicle 1.0 |
||||||
|
import QGroundControl.Controls 1.0 |
||||||
|
import QGroundControl.FactControls 1.0 |
||||||
|
import QGroundControl.Palette 1.0 |
||||||
|
|
||||||
|
// Editor for Survery mission items |
||||||
|
Rectangle { |
||||||
|
id: _root |
||||||
|
height: editorColumn.height + (_margin * 2) |
||||||
|
width: availableWidth |
||||||
|
color: qgcPal.windowShadeDark |
||||||
|
radius: _radius |
||||||
|
|
||||||
|
// The following properties must be available up the hierachy chain |
||||||
|
//property real availableWidth ///< Width for control |
||||||
|
//property var missionItem ///< Mission Item for editor |
||||||
|
|
||||||
|
property bool _addPointsMode: false |
||||||
|
property real _margin: ScreenTools.defaultFontPixelWidth / 2 |
||||||
|
|
||||||
|
QGCPalette { id: qgcPal; colorGroupEnabled: true } |
||||||
|
|
||||||
|
Column { |
||||||
|
id: editorColumn |
||||||
|
anchors.margins: _margin |
||||||
|
anchors.top: parent.top |
||||||
|
anchors.left: parent.left |
||||||
|
width: availableWidth |
||||||
|
spacing: _margin |
||||||
|
|
||||||
|
Connections { |
||||||
|
target: editorMap |
||||||
|
|
||||||
|
onMapClicked: { |
||||||
|
if (_addPointsMode) { |
||||||
|
missionItem.addPolygonCoordinate(coordinate) |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
QGCLabel { |
||||||
|
text: "Fly a grid pattern over a defined area." |
||||||
|
wrapMode: Text.WordWrap |
||||||
|
} |
||||||
|
|
||||||
|
QGCButton { |
||||||
|
text: _addPointsMode ? "Finished" : "Draw Polygon" |
||||||
|
onClicked: { |
||||||
|
if (_addPointsMode) { |
||||||
|
_addPointsMode = false |
||||||
|
} else { |
||||||
|
missionItem.clearPolygon() |
||||||
|
_addPointsMode = true |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
Loading…
Reference in new issue