diff --git a/qgcimages.qrc b/qgcimages.qrc
index 75fbb02ee30de6ed5aef11a8d327343e8a075e99..317c55a459c9b7e9e612cf48b801b547b5e716c0 100644
--- a/qgcimages.qrc
+++ b/qgcimages.qrc
@@ -125,6 +125,10 @@
src/AutoPilotPlugins/PX4/Images/no-logging.svg
src/AutoPilotPlugins/PX4/Images/ObjectAvoidance.svg
src/ui/toolbar/Images/PaperPlane.svg
+ resources/PatternCamera.png
+ resources/PatternGrid.png
+ resources/PatternPresets.png
+ resources/PatternTerrain.png
src/FlightMap/Images/PiP.svg
src/FlightMap/Images/pipHide.svg
src/FlightMap/Images/pipResize.svg
diff --git a/qgroundcontrol.qrc b/qgroundcontrol.qrc
index 35ab7cff07b8db2d0ce60959ccf970150e2fdabb..978507ce503d4f7e99051901f2499111854544cb 100644
--- a/qgroundcontrol.qrc
+++ b/qgroundcontrol.qrc
@@ -181,6 +181,8 @@
src/PlanView/TakeoffItemMapVisual.qml
src/QmlControls/ToolStrip.qml
src/PlanView/TransectStyleComplexItemStats.qml
+ src/PlanView/TransectStyleComplexItemTabBar.qml
+ src/PlanView/TransectStyleComplexItemTerrainFollow.qml
src/QmlControls/VehicleRotationCal.qml
src/QmlControls/VehicleSummaryRow.qml
src/QmlControls/VerticalFactValueGrid.qml
diff --git a/resources/PatternCamera.png b/resources/PatternCamera.png
new file mode 100644
index 0000000000000000000000000000000000000000..cc784b2e028b0e6ebf13c1679c807672fa1fca15
Binary files /dev/null and b/resources/PatternCamera.png differ
diff --git a/resources/PatternGrid.png b/resources/PatternGrid.png
new file mode 100644
index 0000000000000000000000000000000000000000..736c89627e521363218f816bfff27d6e375b86c7
Binary files /dev/null and b/resources/PatternGrid.png differ
diff --git a/resources/PatternPresets.png b/resources/PatternPresets.png
new file mode 100644
index 0000000000000000000000000000000000000000..059b5868af30b75b18a3d3d0503d1a5e02c0fe67
Binary files /dev/null and b/resources/PatternPresets.png differ
diff --git a/resources/PatternTerrain.png b/resources/PatternTerrain.png
new file mode 100644
index 0000000000000000000000000000000000000000..ad75eafa16e738c38811dc9eb7ce130308300c54
Binary files /dev/null and b/resources/PatternTerrain.png differ
diff --git a/src/PlanView/SimpleItemEditor.qml b/src/PlanView/SimpleItemEditor.qml
index bd96d1984de89c3b0668228c97a9007358142643..663d7ae807b71e96e0667488ce22852844abff9e 100644
--- a/src/PlanView/SimpleItemEditor.qml
+++ b/src/PlanView/SimpleItemEditor.qml
@@ -19,8 +19,8 @@ Rectangle {
property bool _specifiesAltitude: missionItem.specifiesAltitude
property real _margin: ScreenTools.defaultFontPixelHeight / 2
- property bool _supportsTerrainFrame: missionItem.masterController.supportsTerrain
property var _controllerVehicle: missionItem.masterController.controllerVehicle
+ property bool _supportsTerrainFrame: _controllerVehicle.supportsTerrainFrame
property int _globalAltMode: missionItem.masterController.missionController.globalAltitudeMode
property bool _globalAltModeIsMixed: _globalAltMode == QGroundControl.AltitudeModeNone
diff --git a/src/PlanView/SurveyItemEditor.qml b/src/PlanView/SurveyItemEditor.qml
index 805384714060583513bdc216acfb32f5e8c872b0..4c2dc99450365933b9fdb1b2f92b791f2cf2250a 100644
--- a/src/PlanView/SurveyItemEditor.qml
+++ b/src/PlanView/SurveyItemEditor.qml
@@ -76,108 +76,7 @@ Rectangle {
horizontalAlignment: Text.AlignHCenter
text: qsTr("Use the Polygon Tools to create the polygon which outlines your survey area.")
}
-
- /*
- Trial of new "done" model so leaving for now in case it comes back
- QGCButton {
- text: qsTr("Done With Polygon")
- Layout.fillWidth: true
- enabled: missionItem.surveyAreaPolygon.isValid && !missionItem.surveyAreaPolygon.traceMode
- onClicked: {
- if (!_presetsAvailable) {
- missionItem.wizardMode = false
- // Trial of no auto select next item
- //editorRoot.selectNextNotReadyItem()
- }
- _polygonDone = true
- }
- }
- */
- }
-
- /*
- Trial of new "done" model so leaving for now in case it comes back
- ColumnLayout {
- Layout.fillWidth: true
- spacing: _margin
- visible: _polygonDone
-
- QGCLabel {
- Layout.fillWidth: true
- wrapMode: Text.WordWrap
- horizontalAlignment: Text.AlignHCenter
- text: qsTr("Apply a Preset or click %1 for manual setup.").arg(_doneAdjusting)
- }
-
- QGCComboBox {
- id: wizardPresetCombo
- Layout.fillWidth: true
- model: missionItem.presetNames
- }
-
- QGCButton {
- Layout.fillWidth: true
- text: qsTr("Apply Preset")
- enabled: missionItem.presetNames.length != 0
- onClicked: missionItem.loadPreset(wizardPresetCombo.textAt(wizardPresetCombo.currentIndex))
- }
-
- SectionHeader {
- id: wizardPresectsTransectsHeader
- Layout.fillWidth: true
- text: qsTr("Transects")
- }
-
- GridLayout {
- Layout.fillWidth: true
- columnSpacing: _margin
- rowSpacing: _margin
- columns: 2
- visible: wizardPresectsTransectsHeader.checked
-
- QGCLabel { text: qsTr("Angle") }
- FactTextField {
- fact: missionItem.gridAngle
- Layout.fillWidth: true
- onUpdated: wizardPresetsAngleSlider.value = missionItem.gridAngle.value
- }
-
- QGCSlider {
- id: wizardPresetsAngleSlider
- minimumValue: 0
- maximumValue: 359
- stepSize: 1
- tickmarksEnabled: false
- Layout.fillWidth: true
- Layout.columnSpan: 2
- Layout.preferredHeight: ScreenTools.defaultFontPixelHeight * 1.5
- onValueChanged: missionItem.gridAngle.value = value
- Component.onCompleted: value = missionItem.gridAngle.value
- updateValueWhileDragging: true
- }
-
- QGCButton {
- Layout.columnSpan: 2
- Layout.fillWidth: true
- text: qsTr("Rotate Entry Point")
- onClicked: missionItem.rotateEntryPoint();
- }
- }
-
- Item { height: ScreenTools.defaultFontPixelHeight; width: 1 }
-
- QGCButton {
- text: _doneAdjusting
- Layout.fillWidth: true
- enabled: missionItem.surveyAreaPolygon.isValid
- onClicked: {
- missionItem.wizardMode = false
- // Trial of no auto select next item
- //editorRoot.selectNextNotReadyItem()
- }
- }
}
- */
}
Column {
@@ -186,23 +85,18 @@ Rectangle {
spacing: _margin
visible: !wizardColumn.visible
- QGCTabBar {
+ TransectStyleComplexItemTabBar {
id: tabBar
anchors.left: parent.left
anchors.right: parent.right
-
- Component.onCompleted: currentIndex = QGroundControl.settingsManager.planViewSettings.displayPresetsTabFirst.rawValue ? 2 : 0
-
- QGCTabButton { text: qsTr("Grid") }
- QGCTabButton { text: qsTr("Camera") }
- QGCTabButton { text: qsTr("Presets") }
}
+ // Grid tab
Column {
anchors.left: parent.left
anchors.right: parent.right
spacing: _margin
- visible: tabBar.currentIndex == 0
+ visible: tabBar.currentIndex === 0
QGCLabel {
anchors.left: parent.left
@@ -325,55 +219,6 @@ Rectangle {
}
}
- SectionHeader {
- id: terrainHeader
- anchors.left: parent.left
- anchors.right: parent.right
- text: qsTr("Terrain")
- checked: missionItem.followTerrain
- }
-
- ColumnLayout {
- anchors.left: parent.left
- anchors.right: parent.right
- spacing: _margin
- visible: terrainHeader.checked
-
-
- QGCCheckBox {
- id: followsTerrainCheckBox
- text: qsTr("Vehicle follows terrain")
- checked: missionItem.followTerrain
- onClicked: missionItem.followTerrain = checked
- }
-
- GridLayout {
- Layout.fillWidth: true
- columnSpacing: _margin
- rowSpacing: _margin
- columns: 2
- visible: followsTerrainCheckBox.checked
-
- QGCLabel { text: qsTr("Tolerance") }
- FactTextField {
- fact: missionItem.terrainAdjustTolerance
- Layout.fillWidth: true
- }
-
- QGCLabel { text: qsTr("Max Climb Rate") }
- FactTextField {
- fact: missionItem.terrainAdjustMaxClimbRate
- Layout.fillWidth: true
- }
-
- QGCLabel { text: qsTr("Max Descent Rate") }
- FactTextField {
- fact: missionItem.terrainAdjustMaxDescentRate
- Layout.fillWidth: true
- }
- }
- }
-
SectionHeader {
id: statsHeader
anchors.left: parent.left
@@ -388,22 +233,32 @@ Rectangle {
}
} // Grid Column
+ // Camera Tab
Column {
anchors.left: parent.left
anchors.right: parent.right
spacing: _margin
- visible: tabBar.currentIndex == 1
+ visible: tabBar.currentIndex === 1
CameraCalcCamera {
cameraCalc: missionItem.cameraCalc
}
} // Camera Column
+ // Terrain Tab
+ TransectStyleComplexItemTerrainFollow {
+ anchors.left: parent.left
+ anchors.right: parent.right
+ spacing: _margin
+ visible: tabBar.currentIndex === 2
+ }
+
+ // Presets Tab
ColumnLayout {
anchors.left: parent.left
anchors.right: parent.right
spacing: _margin
- visible: tabBar.currentIndex == 2
+ visible: tabBar.currentIndex === 3
QGCLabel {
Layout.fillWidth: true
@@ -445,7 +300,6 @@ Rectangle {
}
}
}
-
}
Item { height: ScreenTools.defaultFontPixelHeight; width: 1 }
diff --git a/src/PlanView/TransectStyleComplexItemTabBar.qml b/src/PlanView/TransectStyleComplexItemTabBar.qml
new file mode 100644
index 0000000000000000000000000000000000000000..597ec9657c4d451cfabfb42bac41109d55a0696e
--- /dev/null
+++ b/src/PlanView/TransectStyleComplexItemTabBar.qml
@@ -0,0 +1,18 @@
+import QtQuick 2.3
+
+import QGroundControl 1.0
+import QGroundControl.ScreenTools 1.0
+import QGroundControl.Controls 1.0
+
+QGCTabBar {
+ id: tabBar
+ anchors.left: parent.left
+ anchors.right: parent.right
+
+ Component.onCompleted: currentIndex = QGroundControl.settingsManager.planViewSettings.displayPresetsTabFirst.rawValue ? 2 : 0
+
+ QGCTabButton { icon.source: "/qmlimages/PatternGrid.png"; icon.height: ScreenTools.defaultFontPixelHeight }
+ QGCTabButton { icon.source: "/qmlimages/PatternCamera.png"; icon.height: ScreenTools.defaultFontPixelHeight }
+ QGCTabButton { icon.source: "/qmlimages/PatternTerrain.png"; icon.height: ScreenTools.defaultFontPixelHeight }
+ QGCTabButton { icon.source: "/qmlimages/PatternPresets.png"; icon.height: ScreenTools.defaultFontPixelHeight }
+}
diff --git a/src/PlanView/TransectStyleComplexItemTerrainFollow.qml b/src/PlanView/TransectStyleComplexItemTerrainFollow.qml
new file mode 100644
index 0000000000000000000000000000000000000000..36feddaa83e2931a849addbb6d93d5ce84a249bc
--- /dev/null
+++ b/src/PlanView/TransectStyleComplexItemTerrainFollow.qml
@@ -0,0 +1,51 @@
+import QtQuick 2.3
+import QtQuick.Controls 1.2
+import QtQuick.Layouts 1.2
+
+import QGroundControl 1.0
+import QGroundControl.ScreenTools 1.0
+import QGroundControl.Controls 1.0
+import QGroundControl.FactSystem 1.0
+import QGroundControl.FactControls 1.0
+
+ColumnLayout {
+ anchors.left: parent.left
+ anchors.right: parent.right
+ spacing: _margin
+ visible: tabBar.currentIndex === 2
+
+ property var missionItem
+
+ QGCCheckBox {
+ id: followsTerrainCheckBox
+ text: qsTr("Vehicle follows terrain")
+ checked: missionItem.followTerrain
+ onClicked: missionItem.followTerrain = checked
+ }
+
+ GridLayout {
+ Layout.fillWidth: true
+ columnSpacing: _margin
+ rowSpacing: _margin
+ columns: 2
+ enabled: followsTerrainCheckBox.checked
+
+ QGCLabel { text: qsTr("Tolerance") }
+ FactTextField {
+ fact: missionItem.terrainAdjustTolerance
+ Layout.fillWidth: true
+ }
+
+ QGCLabel { text: qsTr("Max Climb Rate") }
+ FactTextField {
+ fact: missionItem.terrainAdjustMaxClimbRate
+ Layout.fillWidth: true
+ }
+
+ QGCLabel { text: qsTr("Max Descent Rate") }
+ FactTextField {
+ fact: missionItem.terrainAdjustMaxDescentRate
+ Layout.fillWidth: true
+ }
+ }
+}
diff --git a/src/QmlControls/QGCTabButton.qml b/src/QmlControls/QGCTabButton.qml
index 68562d865b8acada6e637d1e3b70d0be70c1fe66..cdda14730b268fff695545267529032208bbdd04 100644
--- a/src/QmlControls/QGCTabButton.qml
+++ b/src/QmlControls/QGCTabButton.qml
@@ -1,5 +1,7 @@
-import QtQuick 2.11
-import QtQuick.Controls 2.4
+import QtQuick 2.12
+import QtQuick.Controls 2.12
+import QtQuick.Controls.impl 2.12
+import QtQml 2.12
import QGroundControl 1.0
import QGroundControl.Palette 1.0
@@ -7,17 +9,25 @@ import QGroundControl.Controls 1.0
import QGroundControl.ScreenTools 1.0
TabButton {
- id: control
+ id: control
+ font.pointSize: ScreenTools.defaultFontPointSize
+ font.family: ScreenTools.normalFontFamily
+
property bool _showHighlight: (pressed | hovered | checked)
- QGCPalette { id: qgcPalDisabled; colorGroupEnabled: false }
- background: Rectangle {
- color: enabled ? (_showHighlight ? qgcPal.buttonHighlight : qgcPal.button) : qgcPalDisabled.button
+
+ QGCPalette { id: qgcPal; colorGroupEnabled: enabled }
+
+ contentItem: IconLabel {
+ spacing: control.spacing
+ mirrored: control.mirrored
+ display: control.display
+ icon: control.icon
+ text: control.text
+ font: control.font
+ color: _showHighlight ? qgcPal.buttonHighlightText : qgcPal.buttonText
}
- contentItem: QGCLabel {
- text: control.text
- color: enabled ? (_showHighlight ? qgcPal.buttonHighlightText : qgcPal.buttonText) : qgcPalDisabled.buttonText
- horizontalAlignment: Text.AlignHCenter
- verticalAlignment: Text.AlignVCenter
- elide: Text.ElideRight
+
+ background: Rectangle {
+ color: _showHighlight ? qgcPal.buttonHighlight : qgcPal.button
}
}
diff --git a/src/QmlControls/QGroundControl/Controls/qmldir b/src/QmlControls/QGroundControl/Controls/qmldir
index f73b2dc99d97ad917d2bf07a4bba8981823f064b..b39eb1994bab741afeb9c219ec6e902d395304ae 100644
--- a/src/QmlControls/QGroundControl/Controls/qmldir
+++ b/src/QmlControls/QGroundControl/Controls/qmldir
@@ -1,111 +1,113 @@
Module QGroundControl.Controls
-AnalyzePage 1.0 AnalyzePage.qml
-AppMessages 1.0 AppMessages.qml
-AxisMonitor 1.0 AxisMonitor.qml
-CameraCalcCamera 1.0 CameraCalcCamera.qml
-CameraCalcGrid 1.0 CameraCalcGrid.qml
-ContentAreaCalc 1.0 ContentAreaCalc.qml
-APMSubMotorDisplay 1.0 APMSubMotorDisplay.qml
-CameraSection 1.0 CameraSection.qml
-ClickableColor 1.0 ClickableColor.qml
-DeadMouseArea 1.0 DeadMouseArea.qml
-DropButton 1.0 DropButton.qml
-DropPanel 1.0 DropPanel.qml
-EditPositionDialog 1.0 EditPositionDialog.qml
-ExclusiveGroupItem 1.0 ExclusiveGroupItem.qml
-FactSliderPanel 1.0 FactSliderPanel.qml
-FirstRunPrompt 1.0 FirstRunPrompt.qml
-FileButton 1.0 FileButton.qml
-FlightModeDropdown 1.0 FlightModeDropdown.qml
-FlightModeMenu 1.0 FlightModeMenu.qml
-GeoFenceEditor 1.0 GeoFenceEditor.qml
-GeoFenceMapVisuals 1.0 GeoFenceMapVisuals.qml
-HackFileDialog 1.0 HackFileDialog.qml
-HeightIndicator 1.0 HeightIndicator.qml
-HorizontalFactValueGrid 1.0 HorizontalFactValueGrid.qml
-IndicatorButton 1.0 IndicatorButton.qml
-InstrumentValueLabel 1.0 InstrumentValueLabel.qml
-InstrumentValueValue 1.0 InstrumentValueValue.qml
-InstrumentValueEditDialog 1.0 InstrumentValueEditDialog.qml
-JoystickThumbPad 1.0 JoystickThumbPad.qml
-KMLOrSHPFileDialog 1.0 KMLOrSHPFileDialog.qml
-LogReplayStatusBar 1.0 LogReplayStatusBar.qml
-MainToolBar 1.0 MainToolBar.qml
-MainWindowSavedState 1.0 MainWindowSavedState.qml
-MAVLinkMessageButton 1.0 MAVLinkMessageButton.qml
-MissionCommandDialog 1.0 MissionCommandDialog.qml
-MissionItemEditor 1.0 MissionItemEditor.qml
-MissionItemIndexLabel 1.0 MissionItemIndexLabel.qml
-MissionItemMapVisual 1.0 MissionItemMapVisual.qml
-MissionItemStatus 1.0 MissionItemStatus.qml
-ModeSwitchDisplay 1.0 ModeSwitchDisplay.qml
-MultiRotorMotorDisplay 1.0 MultiRotorMotorDisplay.qml
-OfflineMapButton 1.0 OfflineMapButton.qml
-PageView 1.0 PageView.qml
-ParameterEditor 1.0 ParameterEditor.qml
-ParameterEditorDialog 1.0 ParameterEditorDialog.qml
-PIDTuning 1.0 PIDTuning.qml
-PlanEditToolbar 1.0 PlanEditToolbar.qml
-PreFlightCheckButton 1.0 PreFlightCheckButton.qml
-PreFlightCheckGroup 1.0 PreFlightCheckGroup.qml
-PreFlightCheckModel 1.0 PreFlightCheckModel.qml
-QGCButton 1.0 QGCButton.qml
-QGCCheckBox 1.0 QGCCheckBox.qml
-QGCColoredImage 1.0 QGCColoredImage.qml
-QGCComboBox 1.0 QGCComboBox.qml
-QGCControlDebug 1.0 QGCControlDebug.qml
-QGCDynamicObjectManager 1.0 QGCDynamicObjectManager.qml
-QGCFileDialog 1.0 QGCFileDialog.qml
-QGCFlickable 1.0 QGCFlickable.qml
-QGCGroupBox 1.0 QGCGroupBox.qml
-QGCLabel 1.0 QGCLabel.qml
-QGCListView 1.0 QGCListView.qml
-QGCMapCircleVisuals 1.0 QGCMapCircleVisuals.qml
-QGCMapLabel 1.0 QGCMapLabel.qml
-QGCMapPolygonVisuals 1.0 QGCMapPolygonVisuals.qml
-QGCMapPolylineVisuals 1.0 QGCMapPolylineVisuals.qml
-QGCMenu 1.0 QGCMenu.qml
-QGCMenuItem 1.0 QGCMenuItem.qml
-QGCMenuSeparator 1.0 QGCMenuSeparator.qml
-QGCMouseArea 1.0 QGCMouseArea.qml
-QGCMovableItem 1.0 QGCMovableItem.qml
-QGCOptionsComboBox 1.0 QGCOptionsComboBox.qml
-QGCPipOverlay 1.0 QGCPipOverlay.qml
-QGCPipState 1.0 QGCPipState.qml
-QGCPopupDialog 1.0 QGCPopupDialog.qml
-QGCPopupDialogContainer 1.0 QGCPopupDialogContainer.qml
-QGCRadioButton 1.0 QGCRadioButton.qml
-QGCSlider 1.0 QGCSlider.qml
-QGCSwitch 1.0 QGCSwitch.qml
-QGCTabBar 1.0 QGCTabBar.qml
-QGCTabButton 1.0 QGCTabButton.qml
-QGCTextField 1.0 QGCTextField.qml
-QGCToolBarButton 1.0 QGCToolBarButton.qml
-QGCToolInsets 1.0 QGCToolInsets.qml
-QGCViewDialog 1.0 QGCViewDialog.qml
-QGCViewDialogContainer 1.0 QGCViewDialogContainer.qml
-QGCViewMessage 1.0 QGCViewMessage.qml
-RallyPointEditorHeader 1.0 RallyPointEditorHeader.qml
-RallyPointItemEditor 1.0 RallyPointItemEditor.qml
-RallyPointMapVisuals 1.0 RallyPointMapVisuals.qml
-RCChannelMonitor 1.0 RCChannelMonitor.qml
-RCToParamDialog 1.0 RCToParamDialog.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
-SliderSwitch 1.0 SliderSwitch.qml
-SubMenuButton 1.0 SubMenuButton.qml
-SurveyMapVisuals 1.0 SurveyMapVisuals.qml
-TerrainStatus 1.0 TerrainStatus.qml
-TransectStyleComplexItemStats 1.0 TransectStyleComplexItemStats.qml
-TransectStyleMapVisuals 1.0 TransectStyleMapVisuals.qml
-ToolStrip 1.0 ToolStrip.qml
-VehicleRotationCal 1.0 VehicleRotationCal.qml
-VehicleSummaryRow 1.0 VehicleSummaryRow.qml
-VerticalFactValueGrid 1.0 VerticalFactValueGrid.qml
-ViewWidget 1.0 ViewWidget.qml
-QGCHoverButton 1.0 QGCHoverButton.qml
-MAVLinkChart 1.0 MAVLinkChart.qml
+AnalyzePage 1.0 AnalyzePage.qml
+AppMessages 1.0 AppMessages.qml
+AxisMonitor 1.0 AxisMonitor.qml
+CameraCalcCamera 1.0 CameraCalcCamera.qml
+CameraCalcGrid 1.0 CameraCalcGrid.qml
+ContentAreaCalc 1.0 ContentAreaCalc.qml
+APMSubMotorDisplay 1.0 APMSubMotorDisplay.qml
+CameraSection 1.0 CameraSection.qml
+ClickableColor 1.0 ClickableColor.qml
+DeadMouseArea 1.0 DeadMouseArea.qml
+DropButton 1.0 DropButton.qml
+DropPanel 1.0 DropPanel.qml
+EditPositionDialog 1.0 EditPositionDialog.qml
+ExclusiveGroupItem 1.0 ExclusiveGroupItem.qml
+FactSliderPanel 1.0 FactSliderPanel.qml
+FirstRunPrompt 1.0 FirstRunPrompt.qml
+FileButton 1.0 FileButton.qml
+FlightModeDropdown 1.0 FlightModeDropdown.qml
+FlightModeMenu 1.0 FlightModeMenu.qml
+GeoFenceEditor 1.0 GeoFenceEditor.qml
+GeoFenceMapVisuals 1.0 GeoFenceMapVisuals.qml
+HackFileDialog 1.0 HackFileDialog.qml
+HeightIndicator 1.0 HeightIndicator.qml
+HorizontalFactValueGrid 1.0 HorizontalFactValueGrid.qml
+IndicatorButton 1.0 IndicatorButton.qml
+InstrumentValueLabel 1.0 InstrumentValueLabel.qml
+InstrumentValueValue 1.0 InstrumentValueValue.qml
+InstrumentValueEditDialog 1.0 InstrumentValueEditDialog.qml
+JoystickThumbPad 1.0 JoystickThumbPad.qml
+KMLOrSHPFileDialog 1.0 KMLOrSHPFileDialog.qml
+LogReplayStatusBar 1.0 LogReplayStatusBar.qml
+MainToolBar 1.0 MainToolBar.qml
+MainWindowSavedState 1.0 MainWindowSavedState.qml
+MAVLinkMessageButton 1.0 MAVLinkMessageButton.qml
+MissionCommandDialog 1.0 MissionCommandDialog.qml
+MissionItemEditor 1.0 MissionItemEditor.qml
+MissionItemIndexLabel 1.0 MissionItemIndexLabel.qml
+MissionItemMapVisual 1.0 MissionItemMapVisual.qml
+MissionItemStatus 1.0 MissionItemStatus.qml
+ModeSwitchDisplay 1.0 ModeSwitchDisplay.qml
+MultiRotorMotorDisplay 1.0 MultiRotorMotorDisplay.qml
+OfflineMapButton 1.0 OfflineMapButton.qml
+PageView 1.0 PageView.qml
+ParameterEditor 1.0 ParameterEditor.qml
+ParameterEditorDialog 1.0 ParameterEditorDialog.qml
+PIDTuning 1.0 PIDTuning.qml
+PlanEditToolbar 1.0 PlanEditToolbar.qml
+PreFlightCheckButton 1.0 PreFlightCheckButton.qml
+PreFlightCheckGroup 1.0 PreFlightCheckGroup.qml
+PreFlightCheckModel 1.0 PreFlightCheckModel.qml
+QGCButton 1.0 QGCButton.qml
+QGCCheckBox 1.0 QGCCheckBox.qml
+QGCColoredImage 1.0 QGCColoredImage.qml
+QGCComboBox 1.0 QGCComboBox.qml
+QGCControlDebug 1.0 QGCControlDebug.qml
+QGCDynamicObjectManager 1.0 QGCDynamicObjectManager.qml
+QGCFileDialog 1.0 QGCFileDialog.qml
+QGCFlickable 1.0 QGCFlickable.qml
+QGCGroupBox 1.0 QGCGroupBox.qml
+QGCLabel 1.0 QGCLabel.qml
+QGCListView 1.0 QGCListView.qml
+QGCMapCircleVisuals 1.0 QGCMapCircleVisuals.qml
+QGCMapLabel 1.0 QGCMapLabel.qml
+QGCMapPolygonVisuals 1.0 QGCMapPolygonVisuals.qml
+QGCMapPolylineVisuals 1.0 QGCMapPolylineVisuals.qml
+QGCMenu 1.0 QGCMenu.qml
+QGCMenuItem 1.0 QGCMenuItem.qml
+QGCMenuSeparator 1.0 QGCMenuSeparator.qml
+QGCMouseArea 1.0 QGCMouseArea.qml
+QGCMovableItem 1.0 QGCMovableItem.qml
+QGCOptionsComboBox 1.0 QGCOptionsComboBox.qml
+QGCPipOverlay 1.0 QGCPipOverlay.qml
+QGCPipState 1.0 QGCPipState.qml
+QGCPopupDialog 1.0 QGCPopupDialog.qml
+QGCPopupDialogContainer 1.0 QGCPopupDialogContainer.qml
+QGCRadioButton 1.0 QGCRadioButton.qml
+QGCSlider 1.0 QGCSlider.qml
+QGCSwitch 1.0 QGCSwitch.qml
+QGCTabBar 1.0 QGCTabBar.qml
+QGCTabButton 1.0 QGCTabButton.qml
+QGCTextField 1.0 QGCTextField.qml
+QGCToolBarButton 1.0 QGCToolBarButton.qml
+QGCToolInsets 1.0 QGCToolInsets.qml
+QGCViewDialog 1.0 QGCViewDialog.qml
+QGCViewDialogContainer 1.0 QGCViewDialogContainer.qml
+QGCViewMessage 1.0 QGCViewMessage.qml
+RallyPointEditorHeader 1.0 RallyPointEditorHeader.qml
+RallyPointItemEditor 1.0 RallyPointItemEditor.qml
+RallyPointMapVisuals 1.0 RallyPointMapVisuals.qml
+RCChannelMonitor 1.0 RCChannelMonitor.qml
+RCToParamDialog 1.0 RCToParamDialog.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
+SliderSwitch 1.0 SliderSwitch.qml
+SubMenuButton 1.0 SubMenuButton.qml
+SurveyMapVisuals 1.0 SurveyMapVisuals.qml
+TerrainStatus 1.0 TerrainStatus.qml
+TransectStyleComplexItemStats 1.0 TransectStyleComplexItemStats.qml
+TransectStyleComplexItemTabBar 1.0 TransectStyleComplexItemTabBar.qml
+TransectStyleComplexItemTerrainFollow 1.0 TransectStyleComplexItemTerrainFollow.qml
+TransectStyleMapVisuals 1.0 TransectStyleMapVisuals.qml
+ToolStrip 1.0 ToolStrip.qml
+VehicleRotationCal 1.0 VehicleRotationCal.qml
+VehicleSummaryRow 1.0 VehicleSummaryRow.qml
+VerticalFactValueGrid 1.0 VerticalFactValueGrid.qml
+ViewWidget 1.0 ViewWidget.qml
+QGCHoverButton 1.0 QGCHoverButton.qml
+MAVLinkChart 1.0 MAVLinkChart.qml