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 property real _margin: ScreenTools.defaultFontPixelWidth / 2 property real _fieldWidth: ScreenTools.defaultFontPixelWidth * 10.5 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("General") } 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("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: tilesHeader text: qsTr("Tiles") } Column { anchors.left: parent.left anchors.right: parent.right spacing: _margin visible: tilesHeader.checked GridLayout { anchors.left: parent.left anchors.right: parent.right columnSpacing: _margin rowSpacing: _margin columns: 2 QGCLabel { text: qsTr("Height") } FactTextField { fact: areaItem.tileHeight Layout.fillWidth: true } QGCLabel { text: qsTr("Width") } FactTextField { fact: areaItem.tileWidth Layout.fillWidth: true } QGCLabel { text: qsTr("Min. Area") } FactTextField { fact: areaItem.minTileArea Layout.fillWidth: true } FactCheckBox { text: qsTr("Show Tiles") fact: areaItem.showTiles } } // Tile GridLayout } // Tile Column SectionHeader { id: transectsHeader text: qsTr("Transects") } Column { anchors.left: parent.left anchors.right: parent.right spacing: _margin visible: transectsHeader.checked GridLayout { anchors.left: parent.left anchors.right: parent.right columnSpacing: _margin rowSpacing: _margin columns: 2 QGCLabel { text: qsTr("Distance") } FactTextField { fact: areaItem.transectDistance Layout.fillWidth: true } QGCLabel { text: qsTr("Min. Length") } FactTextField { fact: areaItem.minTransectLength Layout.fillWidth: true } } // Transects GridLayout } // Transects Column 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 } QGCLabel { text: qsTr("Tiles") } QGCLabel { text: areaItem.tiles.count } QGCLabel { text: qsTr("Max. Tiles") } QGCLabel { text: areaItem.maxTiles } } } // Column } // Rectangle