diff --git a/qgroundcontrol.qrc b/qgroundcontrol.qrc
index d00c76c..9bf28ed 100644
--- a/qgroundcontrol.qrc
+++ b/qgroundcontrol.qrc
@@ -101,6 +101,7 @@
src/MissionEditor/RallyPointItemEditor.qml
src/QmlControls/RCChannelMonitor.qml
src/QmlControls/RoundButton.qml
+ src/MissionEditor/SectionHeader.qml
src/AutoPilotPlugins/Common/SetupPage.qml
src/ui/toolbar/SignalStrength.qml
src/MissionEditor/SimpleItemMapVisual.qml
diff --git a/src/FactSystem/FactControls/FactTextFieldGrid.qml b/src/FactSystem/FactControls/FactTextFieldGrid.qml
index dee0c22..6c27cfa 100644
--- a/src/FactSystem/FactControls/FactTextFieldGrid.qml
+++ b/src/FactSystem/FactControls/FactTextFieldGrid.qml
@@ -5,7 +5,8 @@ import QGroundControl.FactSystem 1.0
import QGroundControl.Controls 1.0
GridLayout {
- property var factList ///< List of Facts to show
+ property var factList ///< List of Facts to show
+ property var factLabels ///< Labels for facts, if not set, use Fact.name
rows: factList.length
flow: GridLayout.TopToBottom
@@ -13,7 +14,7 @@ GridLayout {
Repeater {
model: parent.factList
- QGCLabel { text: modelData.name + ":" }
+ QGCLabel { text: factLabels ? factLabels[index] : modelData.name }
}
Repeater {
diff --git a/src/FirmwarePlugin/APM/MavCmdInfoCommon.json b/src/FirmwarePlugin/APM/MavCmdInfoCommon.json
index 845b4cc..e1fad86 100644
--- a/src/FirmwarePlugin/APM/MavCmdInfoCommon.json
+++ b/src/FirmwarePlugin/APM/MavCmdInfoCommon.json
@@ -38,7 +38,7 @@
"id": 181,
"comment": "MAV_CMD_DO_SET_RELAY",
"param2": {
- "label": "Setting:",
+ "label": "Setting",
"enumStrings": "On,Off",
"enumValues": "1,0",
"default": 1
@@ -54,19 +54,19 @@
"comment": "MAV_CMD_DO_MOUNT_CONTROL",
"paramRemove": "7",
"param1": {
- "label": "Pitch:",
+ "label": "Pitch",
"default": 0,
"units": "deg",
"decimalPlaces": 2
},
"param2": {
- "label": "Roll:",
+ "label": "Roll",
"default": 0,
"units": "deg",
"decimalPlaces": 2
},
"param3": {
- "label": "Yaw:",
+ "label": "Yaw",
"default": 0,
"units": "deg",
"decimalPlaces": 2
@@ -76,7 +76,7 @@
"id": 207,
"comment": "MAV_CMD_DO_FENCE_ENABLE",
"param1": {
- "label": "Enable:",
+ "label": "Enable",
"enumStrings": "Enable,Disable",
"enumValues": "1,0",
"default": 1
diff --git a/src/FirmwarePlugin/CameraMetaData.cc b/src/FirmwarePlugin/CameraMetaData.cc
index bf86576..0f75c6e 100644
--- a/src/FirmwarePlugin/CameraMetaData.cc
+++ b/src/FirmwarePlugin/CameraMetaData.cc
@@ -15,6 +15,8 @@ CameraMetaData::CameraMetaData(const QString& name,
double imageWidth,
double imageHeight,
double focalLength,
+ bool landscape,
+ bool fixedOrientation,
QObject* parent)
: QObject(parent)
, _name(name)
@@ -23,6 +25,8 @@ CameraMetaData::CameraMetaData(const QString& name,
, _imageWidth(imageWidth)
, _imageHeight(imageHeight)
, _focalLength(focalLength)
+ , _landscape(landscape)
+ , _fixedOrientation(fixedOrientation)
{
}
diff --git a/src/FirmwarePlugin/CameraMetaData.h b/src/FirmwarePlugin/CameraMetaData.h
index 80b8e77..1302ae4 100644
--- a/src/FirmwarePlugin/CameraMetaData.h
+++ b/src/FirmwarePlugin/CameraMetaData.h
@@ -24,14 +24,18 @@ public:
double imageWidth,
double imageHeight,
double focalLength,
+ bool landscape,
+ bool fixedOrientation,
QObject* parent = NULL);
- Q_PROPERTY(QString name MEMBER _name CONSTANT) ///< Camera name
- Q_PROPERTY(double sensorWidth MEMBER _sensorWidth CONSTANT) ///< Sensor size in millimeters
- Q_PROPERTY(double sensorHeight MEMBER _sensorHeight CONSTANT) ///< Sensor size in millimeters
- Q_PROPERTY(double imageWidth MEMBER _imageWidth CONSTANT) ///< Image size in pixels
- Q_PROPERTY(double imageHeight MEMBER _imageHeight CONSTANT) ///< Image size in pixels
- Q_PROPERTY(double focalLength MEMBER _focalLength CONSTANT) ///< Focal length in millimeters
+ Q_PROPERTY(QString name MEMBER _name CONSTANT) ///< Camera name
+ Q_PROPERTY(double sensorWidth MEMBER _sensorWidth CONSTANT) ///< Sensor size in millimeters
+ Q_PROPERTY(double sensorHeight MEMBER _sensorHeight CONSTANT) ///< Sensor size in millimeters
+ Q_PROPERTY(double imageWidth MEMBER _imageWidth CONSTANT) ///< Image size in pixels
+ Q_PROPERTY(double imageHeight MEMBER _imageHeight CONSTANT) ///< Image size in pixels
+ Q_PROPERTY(double focalLength MEMBER _focalLength CONSTANT) ///< Focal length in millimeters
+ Q_PROPERTY(bool landscape MEMBER _landscape CONSTANT) ///< true: camera is in landscape orientation
+ Q_PROPERTY(bool fixedOrientation MEMBER _fixedOrientation CONSTANT) ///< true: camera is in fixed orientation
private:
QString _name;
@@ -40,6 +44,8 @@ private:
double _imageWidth;
double _imageHeight;
double _focalLength;
+ bool _landscape;
+ bool _fixedOrientation;
};
#endif
diff --git a/src/FirmwarePlugin/FirmwarePlugin.cc b/src/FirmwarePlugin/FirmwarePlugin.cc
index 87372a6..18c2d31 100644
--- a/src/FirmwarePlugin/FirmwarePlugin.cc
+++ b/src/FirmwarePlugin/FirmwarePlugin.cc
@@ -363,21 +363,25 @@ const QVariantList& FirmwarePlugin::cameraList(const Vehicle* vehicle)
if (_cameraList.size() == 0) {
CameraMetaData* metaData;
- metaData = new CameraMetaData(tr("Typhoon H CGO3+"), // Camera name
- 6.264, // sensorWidth
- 4.698, // sensorHeight
- 4000, // imageWidth
- 3000, // imageHeight
- 14, // focalLength
- this); // parent
+ metaData = new CameraMetaData(tr("Typhoon H CGO3+"), // Camera name
+ 6.264, // sensorWidth
+ 4.698, // sensorHeight
+ 4000, // imageWidth
+ 3000, // imageHeight
+ 14, // focalLength
+ true, // landscape orientation
+ true, // camera orientation is fixed
+ this); // parent
_cameraList.append(QVariant::fromValue(metaData));
- metaData = new CameraMetaData(tr("Sony ILCE-QX1"), //http://www.sony.co.uk/electronics/interchangeable-lens-cameras/ilce-qx1-body-kit/specifications
- 23.2, //http://www.sony.com/electronics/camera-lenses/sel16f28/specifications
+ metaData = new CameraMetaData(tr("Sony ILCE-QX1"), //http://www.sony.co.uk/electronics/interchangeable-lens-cameras/ilce-qx1-body-kit/specifications
+ 23.2, //http://www.sony.com/electronics/camera-lenses/sel16f28/specifications
15.4,
5456,
3632,
16,
+ true,
+ false,
this);
_cameraList.append(QVariant::fromValue(metaData));
@@ -387,6 +391,8 @@ const QVariantList& FirmwarePlugin::cameraList(const Vehicle* vehicle)
4000,
3000,
5.2,
+ true,
+ false,
this);
_cameraList.append(QVariant::fromValue(metaData));
@@ -396,6 +402,8 @@ const QVariantList& FirmwarePlugin::cameraList(const Vehicle* vehicle)
4000,
3000,
4.5,
+ true,
+ false,
this);
metaData = new CameraMetaData(tr("Canon EOS-M 22mm"),
@@ -404,6 +412,8 @@ const QVariantList& FirmwarePlugin::cameraList(const Vehicle* vehicle)
5184,
3456,
22,
+ true,
+ false,
this);
_cameraList.append(QVariant::fromValue(metaData));
@@ -413,6 +423,8 @@ const QVariantList& FirmwarePlugin::cameraList(const Vehicle* vehicle)
6000,
4000,
16,
+ true,
+ false,
this);
_cameraList.append(QVariant::fromValue(metaData));
}
diff --git a/src/FirmwarePlugin/PX4/MavCmdInfoFixedWing.json b/src/FirmwarePlugin/PX4/MavCmdInfoFixedWing.json
index ebbc651..a7ee3f4 100644
--- a/src/FirmwarePlugin/PX4/MavCmdInfoFixedWing.json
+++ b/src/FirmwarePlugin/PX4/MavCmdInfoFixedWing.json
@@ -9,7 +9,7 @@
"comment": "MAV_CMD_NAV_LAND",
"paramRemove": "1,4",
"param7": {
- "label": "Altitude:",
+ "label": "Altitude",
"units": "m",
"default": 0,
"decimalPlaces": 1
diff --git a/src/MissionEditor/FWLandingPatternEditor.qml b/src/MissionEditor/FWLandingPatternEditor.qml
index fe0e35f..b76e844 100644
--- a/src/MissionEditor/FWLandingPatternEditor.qml
+++ b/src/MissionEditor/FWLandingPatternEditor.qml
@@ -31,7 +31,7 @@ Rectangle {
//property real availableWidth ///< Width for control
//property var missionItem ///< Mission Item for editor
- property real _margin: ScreenTools.defaultFontPixelWidth / 4
+ property real _margin: ScreenTools.defaultFontPixelWidth / 2
property real _spacer: ScreenTools.defaultFontPixelWidth / 2
Column {
@@ -51,14 +51,7 @@ Rectangle {
Item { width: 1; height: _margin }
- QGCLabel { text: qsTr("Loiter point") }
-
- Rectangle {
- anchors.left: parent.left
- anchors.right: parent.right
- height: 1
- color: qgcPal.text
- }
+ SectionHeader { text: qsTr("Loiter point") }
Item { width: 1; height: _spacer }
@@ -89,14 +82,7 @@ Rectangle {
Item { width: 1; height: ScreenTools.defaultFontPixelHeight / 2 }
- QGCLabel { text: qsTr("Landing point") }
-
- Rectangle {
- anchors.left: parent.left
- anchors.right: parent.right
- height: 1
- color: qgcPal.text
- }
+ SectionHeader { text: qsTr("Landing point") }
Item { width: 1; height: _spacer }
diff --git a/src/MissionEditor/MissionItemEditor.qml b/src/MissionEditor/MissionItemEditor.qml
index 9463d72..64b4770 100644
--- a/src/MissionEditor/MissionItemEditor.qml
+++ b/src/MissionEditor/MissionItemEditor.qml
@@ -29,6 +29,7 @@ Rectangle {
property bool _currentItem: missionItem.isCurrentItem
property color _outerTextColor: _currentItem ? "black" : qgcPal.text
property bool _noMissionItemsAdded: ListView.view.model.count == 1
+ property real _sectionSpacer: ScreenTools.defaultFontPixelWidth / 2 // spacing between section headings
readonly property real _editFieldWidth: Math.min(width - _margin * 2, ScreenTools.defaultFontPixelWidth * 12)
readonly property real _margin: ScreenTools.defaultFontPixelWidth / 2
diff --git a/src/MissionEditor/MissionSettingsEditor.qml b/src/MissionEditor/MissionSettingsEditor.qml
index 96580dd..e353578 100644
--- a/src/MissionEditor/MissionSettingsEditor.qml
+++ b/src/MissionEditor/MissionSettingsEditor.qml
@@ -42,8 +42,8 @@ Rectangle {
property real _fieldWidth: ScreenTools.defaultFontPixelWidth * 16
property bool _mobile: ScreenTools.isMobile
- readonly property string _firmwareLabel: qsTr("Firmware:")
- readonly property string _vehicleLabel: qsTr("Vehicle:")
+ readonly property string _firmwareLabel: qsTr("Firmware")
+ readonly property string _vehicleLabel: qsTr("Vehicle")
QGCPalette { id: qgcPal }
@@ -54,14 +54,7 @@ Rectangle {
anchors.top: parent.top
spacing: _margin
- QGCLabel { text: qsTr("Planned Home Position") }
-
- Rectangle {
- anchors.left: parent.left
- anchors.right: parent.right
- height: 1
- color: qgcPal.text
- }
+ SectionHeader { text: qsTr("Planned Home Position") }
Repeater {
model: missionItem.textFieldFacts
@@ -100,16 +93,14 @@ Rectangle {
anchors.horizontalCenter: parent.horizontalCenter
}
- QGCLabel {
- text: qsTr("Vehicle Info")
- visible: _multipleFirmware
+ Item {
+ height: _sectionSpacer
+ width: 1
+ visible: !ScreenTools.isTinyScreen
}
- Rectangle {
- anchors.left: parent.left
- anchors.right: parent.right
- height: 1
- color: qgcPal.text
+ SectionHeader {
+ text: qsTr("Vehicle Info")
visible: _multipleFirmware
}
@@ -147,7 +138,7 @@ Rectangle {
}
QGCLabel {
- text: qsTr("Cruise speed:")
+ text: qsTr("Cruise speed")
visible: _showCruiseSpeed
Layout.fillWidth: true
}
@@ -158,7 +149,7 @@ Rectangle {
}
QGCLabel {
- text: qsTr("Hover speed:")
+ text: qsTr("Hover speed")
visible: _showHoverSpeed
Layout.fillWidth: true
}
@@ -174,7 +165,7 @@ Rectangle {
anchors.right: parent.right
spacing: _margin
visible: !_multipleFirmware
- QGCLabel { text: qsTr("Hover speed:"); Layout.fillWidth: true }
+ QGCLabel { text: qsTr("Hover speed"); Layout.fillWidth: true }
FactTextField {
Layout.preferredWidth: _fieldWidth
fact: QGroundControl.settingsManager.appSettings.offlineEditingHoverSpeed
diff --git a/src/MissionEditor/SectionHeader.qml b/src/MissionEditor/SectionHeader.qml
new file mode 100644
index 0000000..842b56c
--- /dev/null
+++ b/src/MissionEditor/SectionHeader.qml
@@ -0,0 +1,24 @@
+import QtQuick 2.3
+import QtQuick.Controls 1.2
+import QtQuick.Layouts 1.2
+
+import QGroundControl.ScreenTools 1.0
+import QGroundControl.Palette 1.0
+
+Column {
+ anchors.left: parent.left
+ anchors.right: parent.right
+
+ property alias text: label.text
+
+ QGCPalette { id: qgcPal; colorGroupEnabled: true }
+
+ QGCLabel { id: label }
+
+ Rectangle {
+ anchors.left: parent.left
+ anchors.right: parent.right
+ height: 1
+ color: qgcPal.text
+ }
+}
diff --git a/src/MissionEditor/SurveyItemEditor.qml b/src/MissionEditor/SurveyItemEditor.qml
index 438e4ea..76d14c6 100644
--- a/src/MissionEditor/SurveyItemEditor.qml
+++ b/src/MissionEditor/SurveyItemEditor.qml
@@ -23,7 +23,7 @@ Rectangle {
//property real availableWidth ///< Width for control
//property var missionItem ///< Mission Item for editor
- property real _margin: ScreenTools.defaultFontPixelWidth * 0.25
+ property real _margin: ScreenTools.defaultFontPixelWidth / 2
property int _cameraIndex: 1
property real _fieldWidth: ScreenTools.defaultFontPixelWidth * 10.5
property var _cameraList: [ qsTr("Manual Grid (no camera specs)"), qsTr("Custom Camera Grid") ]
@@ -51,7 +51,9 @@ Rectangle {
if (index == -1) {
gridTypeCombo.currentIndex = _gridTypeManual
} else {
+ var listIndex = index - _gridTypeCamera
gridTypeCombo.currentIndex = index
+ missionItem.cameraOrientationFixed = _vehicleCameraList[listIndex].fixedOrientation
}
}
}
@@ -174,6 +176,8 @@ Rectangle {
anchors.right: parent.right
spacing: _margin
+ SectionHeader { text: qsTr("Camera") }
+
QGCComboBox {
id: gridTypeCombo
anchors.left: parent.left
@@ -187,32 +191,25 @@ Rectangle {
} else if (index == _gridTypeCustomCamera) {
missionItem.manualGrid.value = false
missionItem.camera.value = gridTypeCombo.textAt(index)
+ missionItem.cameraOrientationFixed = false
} else {
missionItem.manualGrid.value = false
missionItem.camera.value = gridTypeCombo.textAt(index)
_noCameraValueRecalc = true
var listIndex = index - _gridTypeCamera
- missionItem.cameraSensorWidth.rawValue = _vehicleCameraList[listIndex].sensorWidth
- missionItem.cameraSensorHeight.rawValue = _vehicleCameraList[listIndex].sensorHeight
- missionItem.cameraResolutionWidth.rawValue = _vehicleCameraList[listIndex].imageWidth
- missionItem.cameraResolutionHeight.rawValue = _vehicleCameraList[listIndex].imageHeight
- missionItem.cameraFocalLength.rawValue = _vehicleCameraList[listIndex].focalLength
+ missionItem.cameraSensorWidth.rawValue = _vehicleCameraList[listIndex].sensorWidth
+ missionItem.cameraSensorHeight.rawValue = _vehicleCameraList[listIndex].sensorHeight
+ missionItem.cameraResolutionWidth.rawValue = _vehicleCameraList[listIndex].imageWidth
+ missionItem.cameraResolutionHeight.rawValue = _vehicleCameraList[listIndex].imageHeight
+ missionItem.cameraFocalLength.rawValue = _vehicleCameraList[listIndex].focalLength
+ missionItem.cameraOrientationLandscape.rawValue = _vehicleCameraList[listIndex].landscape ? 1 : 0
+ missionItem.cameraOrientationFixed = _vehicleCameraList[listIndex].fixedOrientation
_noCameraValueRecalc = false
recalcFromCameraValues()
}
}
}
- QGCLabel { text: qsTr("Camera"); visible: gridTypeCombo.currentIndex !== _gridTypeManual}
-
- Rectangle {
- anchors.left: parent.left
- anchors.right: parent.right
- height: 1
- color: qgcPal.text
- visible: gridTypeCombo.currentIndex !== _gridTypeManual
- }
-
// Camera based grid ui
Column {
anchors.left: parent.left
@@ -221,8 +218,9 @@ Rectangle {
visible: gridTypeCombo.currentIndex != _gridTypeManual
Row {
- spacing: _margin
- anchors.horizontalCenter: parent.horizontalCenter
+ spacing: _margin
+ anchors.horizontalCenter: parent.horizontalCenter
+ visible: !missionItem.cameraOrientationFixed
QGCRadioButton {
width: _editFieldWidth
@@ -267,7 +265,7 @@ Rectangle {
anchors.left: parent.left
anchors.right: parent.right
spacing: _margin
- QGCLabel { text: qsTr("Sensor:"); Layout.fillWidth: true }
+ QGCLabel { text: qsTr("Sensor"); Layout.fillWidth: true }
FactTextField {
Layout.preferredWidth: _root._fieldWidth
fact: missionItem.cameraSensorWidth
@@ -282,7 +280,7 @@ Rectangle {
anchors.left: parent.left
anchors.right: parent.right
spacing: _margin
- QGCLabel { text: qsTr("Image:"); Layout.fillWidth: true }
+ QGCLabel { text: qsTr("Image"); Layout.fillWidth: true }
FactTextField {
Layout.preferredWidth: _root._fieldWidth
fact: missionItem.cameraResolutionWidth
@@ -298,7 +296,7 @@ Rectangle {
anchors.right: parent.right
spacing: _margin
QGCLabel {
- text: missionItem.cameraFocalLength.name + ":"
+ text: qsTr("Focal length")
Layout.fillWidth: true
}
FactTextField {
@@ -328,7 +326,7 @@ Rectangle {
anchors.left: parent.left
anchors.right: parent.right
spacing: _margin
- QGCLabel { text: qsTr("Overlap:"); Layout.fillWidth: true }
+ QGCLabel { text: qsTr("Overlap"); Layout.fillWidth: true }
FactTextField {
Layout.preferredWidth: _root._fieldWidth
fact: missionItem.frontalOverlap
@@ -339,98 +337,63 @@ Rectangle {
}
}
- QGCLabel { text: qsTr("Grid") }
+ Item { height: _sectionSpacer; width: 1; visible: !ScreenTools.isTinyScreen }
- Rectangle {
- anchors.left: parent.left
- anchors.right: parent.right
- height: 1
- color: qgcPal.text
- }
+ SectionHeader { text: qsTr("Grid") }
- RowLayout {
+ GridLayout {
anchors.left: parent.left
anchors.right: parent.right
- spacing: _margin
- QGCLabel {
- text: missionItem.gridAngle.name + ":"
- Layout.fillWidth: true
- anchors.verticalCenter: parent.verticalCenter
- }
+ columnSpacing: _margin
+ rowSpacing: _margin
+ columns: 2
+
+ QGCLabel { text: qsTr("Angle") }
FactTextField {
- fact: missionItem.gridAngle
- anchors.verticalCenter: parent.verticalCenter
- Layout.preferredWidth: _root._fieldWidth
+ fact: missionItem.gridAngle
+ Layout.fillWidth: true
}
- }
- RowLayout {
- anchors.left: parent.left
- anchors.right: parent.right
- spacing: _margin
- QGCLabel {
- text: missionItem.turnaroundDist.name + ":"
- Layout.fillWidth: true
- anchors.verticalCenter: parent.verticalCenter
- }
+ QGCLabel { text: qsTr("Turnaround dist") }
FactTextField {
fact: missionItem.turnaroundDist
- anchors.verticalCenter: parent.verticalCenter
- Layout.preferredWidth: _root._fieldWidth
+ Layout.fillWidth: true
}
- }
- QGCLabel {
- anchors.left: parent.left
- anchors.right: parent.right
- wrapMode: Text.WordWrap
- font.pointSize: ScreenTools.smallFontPointSize
- text: qsTr("Which value would you like to keep constant as you adjust other settings:")
- }
-
- RowLayout {
- anchors.left: parent.left
- anchors.right: parent.right
- spacing: _margin
+ QGCLabel {
+ wrapMode: Text.WordWrap
+ font.pointSize: ScreenTools.smallFontPointSize
+ text: qsTr("Which value would you like to keep constant as you adjust other settings")
+ Layout.preferredWidth: parent.width
+ Layout.columnSpan: 2
+ }
QGCRadioButton {
id: fixedAltitudeRadio
- text: qsTr("Altitude:")
+ text: qsTr("Altitude")
checked: missionItem.fixedValueIsAltitude.value
exclusiveGroup: fixedValueGroup
onClicked: missionItem.fixedValueIsAltitude.value = 1
- Layout.fillWidth: true
- anchors.verticalCenter: parent.verticalCenter
}
FactTextField {
fact: missionItem.gridAltitude
enabled: fixedAltitudeRadio.checked
- Layout.preferredWidth: _root._fieldWidth
- anchors.verticalCenter: parent.verticalCenter
+ Layout.fillWidth: true
}
- }
-
- RowLayout {
- anchors.left: parent.left
- anchors.right: parent.right
- spacing: _margin
QGCRadioButton {
id: fixedGroundResolutionRadio
- text: qsTr("Ground res:")
+ text: qsTr("Ground res")
checked: !missionItem.fixedValueIsAltitude.value
exclusiveGroup: fixedValueGroup
onClicked: missionItem.fixedValueIsAltitude.value = 0
- Layout.fillWidth: true
- anchors.verticalCenter: parent.verticalCenter
}
FactTextField {
fact: missionItem.groundResolution
enabled: fixedGroundResolutionRadio.checked
- Layout.preferredWidth: _root._fieldWidth
- anchors.verticalCenter: parent.verticalCenter
+ Layout.fillWidth: true
}
}
}
@@ -442,29 +405,29 @@ Rectangle {
spacing: _margin
visible: gridTypeCombo.currentIndex == _gridTypeManual
- QGCLabel { text: qsTr("Grid") }
+ Item { height: _sectionSpacer; width: 1; visible: !ScreenTools.isTinyScreen }
- Rectangle {
- anchors.left: parent.left
- anchors.right: parent.right
- height: 1
- color: qgcPal.text
- }
+ SectionHeader { text: qsTr("Grid") }
FactTextFieldGrid {
anchors.left: parent.left
anchors.right: parent.right
- columnSpacing: _margin * 10
+ columnSpacing: ScreenTools.defaultFontPixelWidth
rowSpacing: _margin
factList: [ missionItem.gridAngle, missionItem.gridSpacing, missionItem.gridAltitude, missionItem.turnaroundDist ]
+ factLabels: [ qsTr("Angle"), qsTr("Spacing"), qsTr("Altitude"), qsTr("Turnaround dist")]
}
+ Item { height: _margin; width: 1; visible: !ScreenTools.isTinyScreen }
+
FactCheckBox {
anchors.left: parent.left
text: qsTr("Relative altitude")
fact: missionItem.gridAltitudeRelative
}
+ Item { height: _sectionSpacer; width: 1; visible: !ScreenTools.isTinyScreen }
+
QGCLabel { text: qsTr("Camera") }
Rectangle {
@@ -481,7 +444,7 @@ Rectangle {
FactCheckBox {
anchors.baseline: cameraTriggerDistanceField.baseline
- text: qsTr("Trigger Distance:")
+ text: qsTr("Trigger Distance")
fact: missionItem.cameraTrigger
}
@@ -494,14 +457,9 @@ Rectangle {
}
}
- QGCLabel { text: qsTr("Polygon") }
+ Item { height: _sectionSpacer; width: 1; visible: !ScreenTools.isTinyScreen }
- Rectangle {
- anchors.left: parent.left
- anchors.right: parent.right
- height: 1
- color: qgcPal.text
- }
+ SectionHeader { text: qsTr("Polygon") }
Row {
spacing: ScreenTools.defaultFontPixelWidth
@@ -537,26 +495,21 @@ Rectangle {
}
}
- QGCLabel { text: qsTr("Statistics") }
+ Item { height: _sectionSpacer; width: 1; visible: !ScreenTools.isTinyScreen }
- Rectangle {
- anchors.left: parent.left
- anchors.right: parent.right
- height: 1
- color: qgcPal.text
- }
+ SectionHeader { text: qsTr("Statistics") }
Grid {
columns: 2
columnSpacing: ScreenTools.defaultFontPixelWidth
- QGCLabel { text: qsTr("Survey area:") }
+ QGCLabel { text: qsTr("Survey area") }
QGCLabel { text: QGroundControl.squareMetersToAppSettingsAreaUnits(missionItem.coveredArea).toFixed(2) + " " + QGroundControl.appSettingsAreaUnitsString }
- QGCLabel { text: qsTr("Photo count:") }
+ QGCLabel { text: qsTr("Photo count") }
QGCLabel { text: missionItem.cameraShots }
- QGCLabel { text: qsTr("Photo interval:") }
+ QGCLabel { text: qsTr("Photo interval") }
QGCLabel {
text: {
var timeVal = missionItem.timeBetweenShots
diff --git a/src/MissionManager/MavCmdInfoCommon.json b/src/MissionManager/MavCmdInfoCommon.json
index 61fa620..6da634e 100644
--- a/src/MissionManager/MavCmdInfoCommon.json
+++ b/src/MissionManager/MavCmdInfoCommon.json
@@ -14,12 +14,12 @@
"friendlyEdit": true,
"category": "Basic",
"param5": {
- "label": "Latitude:",
+ "label": "Latitude",
"default": 37.803784,
"decimalPlaces": 7
},
"param6": {
- "label": "Longitude:",
+ "label": "Longitude",
"default": -122.462276,
"decimalPlaces": 7
}
@@ -33,25 +33,25 @@
"friendlyEdit": true,
"category": "Basic",
"param1": {
- "label": "Hold:",
+ "label": "Hold",
"units": "secs",
"default": 0,
"decimalPlaces": 0
},
"param2": {
- "label": "Acceptance:",
+ "label": "Acceptance",
"units": "m",
"default": 3,
"decimalPlaces": 2
},
"param3": {
- "label": "PassThru:",
+ "label": "PassThru",
"units": "m",
"default": 0,
"decimalPlaces": 2
},
"param4": {
- "label": "Heading:",
+ "label": "Heading",
"units": "radians",
"default": 0.0,
"decimalPlaces": 2
@@ -66,7 +66,7 @@
"friendlyEdit": true,
"category": "Loiter",
"param3": {
- "label": "Radius:",
+ "label": "Radius",
"units": "m",
"default": 50.0,
"decimalPlaces": 2
@@ -81,18 +81,18 @@
"friendlyEdit": true,
"category": "Loiter",
"param1": {
- "label": "Turns:",
+ "label": "Turns",
"default": 1,
"decimalPlaces": 0
},
"param3": {
- "label": "Radius:",
+ "label": "Radius",
"units": "m",
"default": 50.0,
"decimalPlaces": 2
},
"param4": {
- "label": "Exit loiter from:",
+ "label": "Exit loiter from",
"enumStrings": "Center,Tangent",
"enumValues": "0,1",
"default": 1,
@@ -108,19 +108,19 @@
"friendlyEdit": true,
"category": "Loiter",
"param1": {
- "label": "Hold:",
+ "label": "Hold",
"units": "secs",
"default": 30,
"decimalPlaces": 0
},
"param3": {
- "label": "Radius:",
+ "label": "Radius",
"units": "m",
"default": 50.0,
"decimalPlaces": 2
},
"param4": {
- "label": "Exit loiter from:",
+ "label": "Exit loiter from",
"enumStrings": "Center,Tangent",
"enumValues": "0,1",
"default": 1,
@@ -144,13 +144,13 @@
"friendlyEdit": true,
"category": "Basic",
"param1": {
- "label": "Abort Alt:",
+ "label": "Abort Alt",
"units": "m",
"default": 25.0,
"decimalPlaces": 2
},
"param4": {
- "label": "Heading:",
+ "label": "Heading",
"units": "radians",
"default": 0.0,
"decimalPlaces": 2
@@ -165,13 +165,13 @@
"friendlyEdit": true,
"category": "Basic",
"param1": {
- "label": "Pitch:",
+ "label": "Pitch",
"units": "deg",
"default": 15,
"decimalPlaces": 2
},
"param4": {
- "label": "Heading:",
+ "label": "Heading",
"units": "radians",
"default": 0.0,
"decimalPlaces": 2
@@ -189,14 +189,14 @@
"friendlyEdit": true,
"category": "Flight control",
"param1": {
- "label": "Mode:",
+ "label": "Mode",
"enumStrings": "Climb,Neutral,Descend",
"enumValues": "1,0,2",
"default": 1,
"decimalPlaces": 0
},
"param7": {
- "label": "Altitude:",
+ "label": "Altitude",
"units": "m",
"default": 55,
"decimalPlaces": 2
@@ -211,20 +211,20 @@
"friendlyEdit": true,
"category": "Loiter",
"param1": {
- "label": "Heading wait:",
+ "label": "Heading wait",
"enumStrings": "False,True",
"enumValues": "0,1",
"default": 0,
"decimalPlaces": 0
},
"param2": {
- "label": "Radius:",
+ "label": "Radius",
"units": "m",
"default": 50.0,
"decimalPlaces": 2
},
"param4": {
- "label": "Exit loiter from:",
+ "label": "Exit loiter from",
"enumStrings": "Center,Tangent",
"enumValues": "0,1",
"default": 1,
@@ -243,19 +243,19 @@
"friendlyEdit": true,
"category": "Camera",
"param1": {
- "label": "Mode:",
+ "label": "Mode",
"enumStrings": "None,Next waypoint,Mission item,Location,ROI item",
"enumValues": "0,1,2,3,4",
"default": 3,
"decimalPlaces": 0
},
"param2": {
- "label": "Mission Index:",
+ "label": "Mission Index",
"default": 0,
"decimalPlaces": 0
},
"param3": {
- "label": "ROI Index:",
+ "label": "ROI Index",
"default": 0,
"decimalPlaces": 0
}
@@ -269,21 +269,21 @@
"friendlyEdit": true,
"category": "Advanced",
"param1": {
- "label": "Local planning:",
+ "label": "Local planning",
"enumStrings": "Disable,Enable,Enable+reset",
"enumValues": "0,1,2",
"default": 1,
"decimalPlaces": 0
},
"param2": {
- "label": "Full planning:",
+ "label": "Full planning",
"enumStrings": "Disable,Enable,Enable+reset,Enable+reset route only",
"enumValues": "0,1,2,3",
"default": 1,
"decimalPlaces": 0
},
"param4": {
- "label": "Heading goal:",
+ "label": "Heading goal",
"default": 0,
"units": "deg",
"decimalPlaces": 2
@@ -298,7 +298,7 @@
"friendlyEdit": true,
"category": "Basic",
"param1": {
- "label": "Hold:",
+ "label": "Hold",
"units": "secs",
"default": 0,
"decimalPlaces": 0
@@ -314,7 +314,7 @@
"friendlyEdit": true,
"category": "VTOL",
"param4": {
- "label": "Heading:",
+ "label": "Heading",
"units": "deg",
"default": 0.0,
"decimalPlaces": 2
@@ -329,7 +329,7 @@
"friendlyEdit": true,
"category": "VTOL",
"param4": {
- "label": "Heading:",
+ "label": "Heading",
"units": "deg",
"default": 0.0,
"decimalPlaces": 2
@@ -354,23 +354,23 @@
"friendlyName": "Delay until",
"description": "Delay unti the specified time is reached.",
"param1": {
- "label": "Hold:",
+ "label": "Hold",
"units": "secs",
"default": 30,
"decimalPlaces": 0
},
"param2": {
- "label": "Hour (utc):",
+ "label": "Hour (utc)",
"default": 0,
"decimalPlaces": 0
},
"param3": {
- "label": "Min (utc):",
+ "label": "Min (utc)",
"default": 0,
"decimalPlaces": 0
},
"param4": {
- "label": "Sec (utc):",
+ "label": "Sec (utc)",
"default": 0,
"decimalPlaces": 0
}
@@ -383,7 +383,7 @@
"friendlyEdit": true,
"category": "Basic",
"param1": {
- "label": "Hold:",
+ "label": "Hold",
"units": "secs",
"default": 30,
"decimalPlaces": 0
@@ -396,13 +396,13 @@
"friendlyName": "Wait for altitude",
"category": "Conditionals",
"param1": {
- "label": "Rate:",
+ "label": "Rate",
"units": "m/s",
"default": 5,
"decimalPlaces": 2
},
"param7": {
- "label": "Altitude:",
+ "label": "Altitude",
"units": "m",
"default": 55,
"decimalPlaces": 2
@@ -415,7 +415,7 @@
"friendlyName": "Wait for distance",
"category": "Conditionals",
"param1": {
- "label": "Distance:",
+ "label": "Distance",
"units": "m",
"default": 10,
"decimalPlaces": 2
@@ -428,25 +428,25 @@
"description": "Delay the mission until the specified heading is reached.",
"category": "Conditionals",
"param1": {
- "label": "Heading:",
+ "label": "Heading",
"units": "deg",
"default": 0,
"decimalPlaces": 1
},
"param2": {
- "label": "Rate:",
+ "label": "Rate",
"units": "degrees/s",
"default": 5,
"decimalPlaces": 1
},
"param3": {
- "label": "Direction:",
+ "label": "Direction",
"enumStrings": "Clockwise,Counter-Clockwise",
"enumValues": "1,-1",
"default": 1
},
"param4": {
- "label": "Offset:",
+ "label": "Offset",
"enumStrings": "Relative,Absolute",
"enumValues": "1,0",
"default": 1
@@ -460,17 +460,17 @@
"description": "Set flight mode.",
"category": "Advanced",
"param1": {
- "label": "Mode:",
+ "label": "Mode",
"default": 0,
"decimalPlaces": 0
},
"param2": {
- "label": "Custom Mode:",
+ "label": "Custom Mode",
"default": 0,
"decimalPlaces": 0
},
"param3": {
- "label": "Sub Mode:",
+ "label": "Sub Mode",
"default": 0,
"decimalPlaces": 0
}
@@ -483,12 +483,12 @@
"friendlyEdit": true,
"category": "Advanced",
"param1": {
- "label": "Item #:",
+ "label": "Item #",
"default": 1,
"decimalPlaces": 0
},
"param2": {
- "label": "Repeat:",
+ "label": "Repeat",
"default": 10,
"decimalPlaces": 0
}
@@ -500,23 +500,23 @@
"description": "Change speed and/or throttle set points.",
"category": "Flight control",
"param1": {
- "label": "Type:",
+ "label": "Type",
"enumStrings": "Airspeed,Ground Speed",
"enumValues": "0,1",
"default": 0
},
"param2": {
- "label": "Speed:",
+ "label": "Speed",
"units": "m/s",
"default": 0
},
"param3": {
- "label": "Throttle:",
+ "label": "Throttle",
"units": "%",
"default": 0
},
"param4": {
- "label": "Offset:",
+ "label": "Offset",
"enumStrings": "Relative,Absolute",
"enumValues": "1,0",
"default": 0
@@ -532,7 +532,7 @@
"friendlyEdit": true,
"category": "Advanced",
"param1": {
- "label": "Mode:",
+ "label": "Mode",
"enumStrings": "Vehicle position,Specified position",
"enumValues": "1,0",
"default": 0
@@ -545,12 +545,12 @@
"friendlyName": "Set relay",
"description": "Set relay to a condition.",
"param1": {
- "label": "Relay #:",
+ "label": "Relay #",
"default": 0,
"decimalPlaces": 0
},
"param2": {
- "label": "Value:",
+ "label": "Value",
"default": 0
}
},
@@ -560,18 +560,18 @@
"friendlyName": "Cycle relay",
"description": "Cycle relay on/off for desired cycles/time.",
"param1": {
- "label": "Relay #:",
+ "label": "Relay #",
"default": 0,
"decimalPlaces": 0
},
"param2": {
- "label": "Cycles:",
+ "label": "Cycles",
"default": 1,
"units": "count",
"decimalPlaces": 0
},
"param3": {
- "label": "Time:",
+ "label": "Time",
"default": 10,
"units": "secs",
"decimalPlaces": 0
@@ -584,12 +584,12 @@
"description": "Set servo to specified PWM value.",
"friendlyEdit": true,
"param1": {
- "label": "Servo:",
+ "label": "Servo",
"default": 1,
"decimalPlaces": 0
},
"param2": {
- "label": "PWM:",
+ "label": "PWM",
"default": 1500,
"decimalPlaces": 0
}
@@ -600,23 +600,23 @@
"friendlyName": "Cycle servo",
"description": "Set servo to specified PWM value.",
"param1": {
- "label": "Servo:",
+ "label": "Servo",
"default": 1,
"decimalPlaces": 0
},
"param2": {
- "label": "PWM:",
+ "label": "PWM",
"default": 1000,
"decimalPlaces": 0
},
"param3": {
- "label": "Cycles:",
+ "label": "Cycles",
"default": 1,
"units": "count",
"decimalPlaces": 0
},
"param4": {
- "label": "Time:",
+ "label": "Time",
"default": 10,
"units": "secs",
"decimalPlaces": 0
@@ -643,7 +643,7 @@
"friendlyEdit": true,
"category": "Advanced",
"param1": {
- "label": "Direction:",
+ "label": "Direction",
"enumStrings": "Forward,Reverse",
"enumValues": "0,1",
"default": 0
@@ -660,19 +660,19 @@
"friendlyEdit": true,
"category": "Camera",
"param1": {
- "label": "Mode:",
+ "label": "Mode",
"enumStrings": "None,Next waypoint,Mission item,Location,ROI item",
"enumValues": "0,1,2,3,4",
"default": 3,
"decimalPlaces": 0
},
"param2": {
- "label": "Mission Index:",
+ "label": "Mission Index",
"default": 0,
"decimalPlaces": 0
},
"param3": {
- "label": "ROI Index:",
+ "label": "ROI Index",
"default": 0,
"decimalPlaces": 0
}
@@ -684,39 +684,39 @@
"description": "Configure onboard camera controller.",
"category": "Camera",
"param1": {
- "label": "Mode:",
+ "label": "Mode",
"default": 0,
"decimalPlaces": 0
},
"param2": {
- "label": "Shutter spd:",
+ "label": "Shutter spd",
"default": 60,
"units": "1/secs",
"decimalPlaces": 0
},
"param3": {
- "label": "Aperture:",
+ "label": "Aperture",
"default": 4,
"units": "F stop",
"decimalPlaces": 1
},
"param4": {
- "label": "ISO:",
+ "label": "ISO",
"default": 200,
"decimalPlaces": 0
},
"param5": {
- "label": "Exposure:",
+ "label": "Exposure",
"default": 0,
"decimalPlaces": 0
},
"param6": {
- "label": "Command:",
+ "label": "Command",
"default": 0,
"decimalPlaces": 0
},
"param7": {
- "label": "Cut off:",
+ "label": "Cut off",
"default": 0,
"decimalPlaces": 2
}
@@ -728,32 +728,32 @@
"description": "Control onboard camera.",
"category": "Camera",
"param1": {
- "label": "Session:",
+ "label": "Session",
"default": 0,
"decimalPlaces": 0
},
"param2": {
- "label": "Zoom:",
+ "label": "Zoom",
"default": 0,
"decimalPlaces": 3
},
"param3": {
- "label": "Step:",
+ "label": "Step",
"default": 0,
"decimalPlaces": 3
},
"param4": {
- "label": "Focus lock:",
+ "label": "Focus lock",
"default": 0,
"decimalPlaces": 0
},
"param5": {
- "label": "Command:",
+ "label": "Command",
"default": 0,
"decimalPlaces": 0
},
"param6": {
- "label": "Id:",
+ "label": "Id",
"default": 0,
"decimalPlaces": 0
}
@@ -765,28 +765,28 @@
"description": "Configure the vehicle mount (e.g. gimbal).",
"category": "Advanced",
"param1": {
- "label": "Mode:",
+ "label": "Mode",
"default": 0,
"decimalPlaces": 0,
"enumStrings": "Retract,Neutral,Mavlink Targeting,RC Targeting,GPS Point",
"enumValues": "0,1,2,3,4"
},
"param2": {
- "label": "Stabilize Roll:",
+ "label": "Stabilize Roll",
"default": 0,
"decimalPlaces": 0,
"enumStrings": "No,Yes",
"enumValues": "0,1"
},
"param3": {
- "label": "Stabilize Pitch:",
+ "label": "Stabilize Pitch",
"default": 0,
"decimalPlaces": 0,
"enumStrings": "No,Yes",
"enumValues": "0,1"
},
"param4": {
- "label": "Stabilize Yaw:",
+ "label": "Stabilize Yaw",
"default": 0,
"decimalPlaces": 0,
"enumStrings": "No,Yes",
@@ -800,24 +800,24 @@
"description": "Control the vehicle mount (e.g. gimbal).",
"category": "Advanced",
"param1": {
- "label": "Lat/Pitch:",
+ "label": "Lat/Pitch",
"default": 0,
"units": "deg",
"decimalPlaces": 7
},
"param2": {
- "label": "Lon/Roll:",
+ "label": "Lon/Roll",
"default": 0,
"units": "deg",
"decimalPlaces": 7
},
"param3": {
- "label": "Alt/Yaw:",
+ "label": "Alt/Yaw",
"default": 0,
"decimalPlaces": 7
},
"param7": {
- "label": "Mode:",
+ "label": "Mode",
"default": 0,
"decimalPlaces": 0,
"enumStrings": "Retract,Neutral,Mavlink Targeting,RC Targeting,GPS Point",
@@ -831,7 +831,7 @@
"description": "Set camera trigger distance.",
"category": "Camera",
"param1": {
- "label": "Distance:",
+ "label": "Distance",
"default": 25,
"units": "m",
"decimalPlaces": 2
@@ -846,7 +846,7 @@
"friendlyEdit": true,
"category": "Safety",
"param1": {
- "label": "Enable:",
+ "label": "Enable",
"enumStrings": "Disable,Disable floor only,Enable",
"enumValues": "0,2,1",
"default": 1,
@@ -862,7 +862,7 @@
"friendlyEdit": true,
"category": "Safety",
"param1": {
- "label": "Trigger:",
+ "label": "Trigger",
"enumStrings": "Disable,Enable,Release",
"enumValues": "0,1,2",
"default": 1,
@@ -879,7 +879,7 @@
"friendlyEdit": true,
"category": "Flight control",
"param1": {
- "label": "Inverted:",
+ "label": "Inverted",
"enumStrings": "Normal,Inverted",
"enumValues": "0,1",
"default": 0
@@ -894,12 +894,12 @@
"friendlyEdit": true,
"category": "Advanced",
"param1": {
- "label": "Gripper id:",
+ "label": "Gripper id",
"default": 1,
"decimalPlaces": 0
},
"param2": {
- "label": "Action:",
+ "label": "Action",
"enumStrings": "Release,Grab",
"enumValues": "0,1",
"default": 0
@@ -914,7 +914,7 @@
"friendlyEdit": true,
"category": "Advanced",
"param2": {
- "label": "Enable:",
+ "label": "Enable",
"enumStrings": "Enable,Disable",
"enumValues": "1,0",
"default": 1
@@ -928,25 +928,25 @@
"friendlyName": "Guided limits",
"description": "Set limits for external control",
"param1": {
- "label": "Timeout:",
+ "label": "Timeout",
"default": 0,
"units": "secs",
"decimalPlaces": 0
},
"param2": {
- "label": "Min Alt:",
+ "label": "Min Alt",
"default": 25,
"units": "m",
"decimalPlaces": 2
},
"param3": {
- "label": "Max Alt:",
+ "label": "Max Alt",
"units": "m",
"default": 100,
"decimalPlaces": 2
},
"param4": {
- "label": "H Limit:",
+ "label": "H Limit",
"default": 25,
"units": "m",
"decimalPlaces": 2
@@ -978,7 +978,7 @@
"description": "Perform flight mode transition.",
"category": "VTOL",
"param1": {
- "label": "Mode:",
+ "label": "Mode",
"default": 3,
"enumStrings": "Hover Mode,Plane Mode",
"enumValues": "3,4"
diff --git a/src/MissionManager/SimpleMissionItem.cc b/src/MissionManager/SimpleMissionItem.cc
index d206a05..775bf83 100644
--- a/src/MissionManager/SimpleMissionItem.cc
+++ b/src/MissionManager/SimpleMissionItem.cc
@@ -343,25 +343,25 @@ QmlObjectListModel* SimpleMissionItem::textFieldFacts(void)
QmlObjectListModel* model = new QmlObjectListModel(this);
if (rawEdit()) {
- _missionItem._param1Fact._setName("Param1:");
+ _missionItem._param1Fact._setName("Param1");
_missionItem._param1Fact.setMetaData(_defaultParamMetaData);
model->append(&_missionItem._param1Fact);
- _missionItem._param2Fact._setName("Param2:");
+ _missionItem._param2Fact._setName("Param2");
_missionItem._param2Fact.setMetaData(_defaultParamMetaData);
model->append(&_missionItem._param2Fact);
- _missionItem._param3Fact._setName("Param3:");
+ _missionItem._param3Fact._setName("Param3");
_missionItem._param3Fact.setMetaData(_defaultParamMetaData);
model->append(&_missionItem._param3Fact);
- _missionItem._param4Fact._setName("Param4:");
+ _missionItem._param4Fact._setName("Param4");
_missionItem._param4Fact.setMetaData(_defaultParamMetaData);
model->append(&_missionItem._param4Fact);
- _missionItem._param5Fact._setName("Lat/X:");
+ _missionItem._param5Fact._setName("Lat/X");
_missionItem._param5Fact.setMetaData(_defaultParamMetaData);
model->append(&_missionItem._param5Fact);
- _missionItem._param6Fact._setName("Lon/Y:");
+ _missionItem._param6Fact._setName("Lon/Y");
_missionItem._param6Fact.setMetaData(_defaultParamMetaData);
model->append(&_missionItem._param6Fact);
- _missionItem._param7Fact._setName("Alt/Z:");
+ _missionItem._param7Fact._setName("Alt/Z");
_missionItem._param7Fact.setMetaData(_defaultParamMetaData);
model->append(&_missionItem._param7Fact);
} else {
@@ -399,7 +399,7 @@ QmlObjectListModel* SimpleMissionItem::textFieldFacts(void)
}
if (specifiesCoordinate() && !altitudeAdded) {
- _missionItem._param7Fact._setName("Altitude:");
+ _missionItem._param7Fact._setName("Altitude");
_missionItem._param7Fact.setMetaData(_altitudeMetaData);
model->append(&_missionItem._param7Fact);
}
diff --git a/src/MissionManager/SurveyMissionItem.cc b/src/MissionManager/SurveyMissionItem.cc
index c66f345..328621a 100644
--- a/src/MissionManager/SurveyMissionItem.cc
+++ b/src/MissionManager/SurveyMissionItem.cc
@@ -68,6 +68,7 @@ SurveyMissionItem::SurveyMissionItem(Vehicle* vehicle, QObject* parent)
: ComplexMissionItem(vehicle, parent)
, _sequenceNumber(0)
, _dirty(false)
+ , _cameraOrientationFixed(false)
, _surveyDistance(0.0)
, _cameraShots(0)
, _coveredArea(0.0)
diff --git a/src/MissionManager/SurveyMissionItem.h b/src/MissionManager/SurveyMissionItem.h
index cb00ec5..713b02e 100644
--- a/src/MissionManager/SurveyMissionItem.h
+++ b/src/MissionManager/SurveyMissionItem.h
@@ -45,6 +45,8 @@ public:
Q_PROPERTY(Fact* manualGrid READ manualGrid CONSTANT)
Q_PROPERTY(Fact* camera READ camera CONSTANT)
+ Q_PROPERTY(bool cameraOrientationFixed MEMBER _cameraOrientationFixed NOTIFY cameraOrientationFixedChanged)
+
Q_PROPERTY(double timeBetweenShots READ timeBetweenShots NOTIFY timeBetweenShotsChanged)
Q_PROPERTY(QVariantList polygonPath READ polygonPath NOTIFY polygonPathChanged)
Q_PROPERTY(QVariantList gridPoints READ gridPoints NOTIFY gridPointsChanged)
@@ -141,13 +143,14 @@ public:
static const char* cameraName;
signals:
- void polygonPathChanged (void);
- void gridPointsChanged (void);
- void cameraShotsChanged (int cameraShots);
- void coveredAreaChanged (double coveredArea);
- void cameraValueChanged (void);
- void gridTypeChanged (QString gridType);
- void timeBetweenShotsChanged (void);
+ void polygonPathChanged (void);
+ void gridPointsChanged (void);
+ void cameraShotsChanged (int cameraShots);
+ void coveredAreaChanged (double coveredArea);
+ void cameraValueChanged (void);
+ void gridTypeChanged (QString gridType);
+ void timeBetweenShotsChanged (void);
+ void cameraOrientationFixedChanged (bool cameraOrientationFixed);
private slots:
void _cameraTriggerChanged(void);
@@ -174,7 +177,7 @@ private:
QVariantList _gridPoints;
QGeoCoordinate _coordinate;
QGeoCoordinate _exitCoordinate;
- double _altitude;
+ bool _cameraOrientationFixed;
double _surveyDistance;
int _cameraShots;
diff --git a/src/QmlControls/QGroundControl.Controls.qmldir b/src/QmlControls/QGroundControl.Controls.qmldir
index dd491b5..b4fbe48 100644
--- a/src/QmlControls/QGroundControl.Controls.qmldir
+++ b/src/QmlControls/QGroundControl.Controls.qmldir
@@ -49,6 +49,7 @@ QGCViewDialog 1.0 QGCViewDialog.qml
QGCViewMessage 1.0 QGCViewMessage.qml
QGCViewPanel 1.0 QGCViewPanel.qml
RoundButton 1.0 RoundButton.qml
+SectionHeader 1.0 SectionHeader.qml
SetupPage 1.0 SetupPage.qml
SignalStrength 1.0 SignalStrength.qml
SimpleItemMapVisuals 1.0 SimpleItemMapVisuals.qml