import QtQuick 2.3 import QtQuick.Controls 1.2 import QtQuick.Controls.Styles 1.4 import QtQuick.Dialogs 1.2 import QtQuick.Extras 1.4 import QtQuick.Layouts 1.2 import QGroundControl 1.0 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 import QGroundControl.FlightMap 1.0 // Editor for Operating Area items Rectangle { id: _root height: visible ? (editorColumn.height + (_margin * 2)) : 0 width: availableWidth color: qgcPal.windowShadeDark radius: _radius // The following properties must be available up the hierarchy chain //property real availableWidth ///< Width for control //property var areaItem ///< Mission Item for editor property real _margin: ScreenTools.defaultFontPixelWidth / 2 property real _fieldWidth: ScreenTools.defaultFontPixelWidth * 10.5 //property var polyline: areaItem.polyline //property bool polylineInteractive: polyline.interactive property bool polygonInteractive: areaItem.interactive property var polygon: areaItem property bool initNecesarry: true onPolygonInteractiveChanged: { polygon.interactive = polygonInteractive; } QGCPalette { id: qgcPal; colorGroupEnabled: true } Column { id: editorColumn anchors.margins: _margin anchors.top: parent.top anchors.left: parent.left anchors.right: parent.right spacing: _margin SectionHeader { id: settingsHeader text: qsTr("Settings") } Column { anchors.left: parent.left anchors.right: parent.right spacing: _margin visible: settingsHeader.checked GridLayout { anchors.left: parent.left anchors.right: parent.right columnSpacing: _margin rowSpacing: _margin columns: 2 QGCLabel { text: qsTr("Altitude") } FactTextField { fact: areaItem.bottomLayerAltitude Layout.fillWidth: true } QGCLabel { text: qsTr("Layers") } FactTextField { fact: areaItem.numberOfLayers Layout.fillWidth: true } QGCLabel { text: qsTr("Layer Dist.") } FactTextField { fact: areaItem.layerDistance Layout.fillWidth: true } QGCLabel { text: qsTr("Offset") } FactTextField { fact: areaItem.borderPolygonOffset Layout.fillWidth: true } } FactCheckBox { text: qsTr("Border Polygon") fact: areaItem.showBorderPolygon //enabled: !missionItem.followTerrain } Item { height: ScreenTools.defaultFontPixelHeight / 2 width: 1 } } // Column - Settings /*SectionHeader { id: polylineHeader text: qsTr("Gateway Poly Line") } QGCButton { id: polylineEditor anchors.topMargin: _margin / 2 anchors.leftMargin: ScreenTools.defaultFontPixelWidth * 2 anchors.rightMargin: ScreenTools.defaultFontPixelWidth text: polylineInteractive ? "Done" : "Edit" onClicked: editPolyline() } QGCButton { id: swapEndpoints anchors.topMargin: _margin / 2 anchors.leftMargin: ScreenTools.defaultFontPixelWidth * 2 anchors.rightMargin: ScreenTools.defaultFontPixelWidth text: "Swap End-Points" onClicked: polyline.swapEndPoints() }*/ SectionHeader { id: statsHeader text: qsTr("Statistics") } Grid { columns: 2 columnSpacing: ScreenTools.defaultFontPixelWidth visible: statsHeader.checked QGCLabel { text: qsTr("Area") } QGCLabel { text: QGroundControl.squareMetersToAppSettingsAreaUnits(areaItem.area).toFixed(2) + " " + QGroundControl.appSettingsAreaUnitsString } QGCLabel { text: qsTr("Nodes") } QGCLabel { text: areaItem.count } } } // Column } // Rectangle