Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Q
qgroundcontrol
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Valentin Platzgummer
qgroundcontrol
Commits
20664925
Commit
20664925
authored
May 15, 2020
by
DoinLakeFlyer
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
parent
cbbf4322
Changes
23
Hide whitespace changes
Inline
Side-by-side
Showing
23 changed files
with
462 additions
and
290 deletions
+462
-290
qgroundcontrol.qrc
custom-example/qgroundcontrol.qrc
+20
-8
CustomFirmwarePlugin.cc
custom-example/src/FirmwarePlugin/CustomFirmwarePlugin.cc
+5
-5
CustomFirmwarePlugin.h
custom-example/src/FirmwarePlugin/CustomFirmwarePlugin.h
+4
-4
qgroundcontrol.qrc
qgroundcontrol.qrc
+6
-5
FirstRunPrompt.qml
src/FirstRunPromptDialogs/FirstRunPrompt.qml
+28
-0
OfflineVehicleFirstRunPrompt.qml
src/FirstRunPromptDialogs/OfflineVehicleFirstRunPrompt.qml
+105
-0
UnitsFirstRunPrompt.qml
src/FirstRunPromptDialogs/UnitsFirstRunPrompt.qml
+115
-0
HorizontalFactValueGrid.qml
src/QmlControls/HorizontalFactValueGrid.qml
+1
-1
InstrumentValueEditDialog.qml
src/QmlControls/InstrumentValueEditDialog.qml
+3
-3
ParameterEditorDialog.qml
src/QmlControls/ParameterEditorDialog.qml
+1
-1
QGCPopupDialogContainer.qml
src/QmlControls/QGCPopupDialogContainer.qml
+7
-5
qmldir
src/QmlControls/QGroundControl/Controls/qmldir
+1
-0
BaseStartupWizardPage.qml
...ontrols/QGroundControl/Specific/BaseStartupWizardPage.qml
+0
-10
StartupWizard.qml
src/QmlControls/QGroundControl/Specific/StartupWizard.qml
+0
-87
UnitsWizardPage.qml
src/QmlControls/QGroundControl/Specific/UnitsWizardPage.qml
+0
-81
qmldir
src/QmlControls/QGroundControl/Specific/qmldir
+0
-5
VerticalFactValueGrid.qml
src/QmlControls/VerticalFactValueGrid.qml
+1
-1
App.SettingsGroup.json
src/Settings/App.SettingsGroup.json
+6
-7
AppSettings.cc
src/Settings/AppSettings.cc
+29
-1
AppSettings.h
src/Settings/AppSettings.h
+6
-1
QGCCorePlugin.cc
src/api/QGCCorePlugin.cc
+46
-6
QGCCorePlugin.h
src/api/QGCCorePlugin.h
+36
-20
MainRootWindow.qml
src/ui/MainRootWindow.qml
+42
-39
No files found.
custom-example/qgroundcontrol.qrc
View file @
20664925
...
...
@@ -92,15 +92,17 @@
<file alias="QGroundControl/Controls/EditPositionDialog.qml">../src/QmlControls/EditPositionDialog.qml</file>
<file alias="QGroundControl/Controls/ExclusiveGroupItem.qml">../src/QmlControls/ExclusiveGroupItem.qml</file>
<file alias="QGroundControl/Controls/FactSliderPanel.qml">../src/QmlControls/FactSliderPanel.qml</file>
<file alias="QGroundControl/Controls/FirstRunPrompt.qml">../src/FirstRunPromptDialogs/FirstRunPrompt.qml</file>
<file alias="QGroundControl/Controls/FileButton.qml">../src/QmlControls/FileButton.qml</file>
<file alias="QGroundControl/Controls/FlightModeDropdown.qml">../src/QmlControls/FlightModeDropdown.qml</file>
<file alias="QGroundControl/Controls/FlightModeMenu.qml">../src/QmlControls/FlightModeMenu.qml</file>
<file alias="QGroundControl/Controls/FWLandingPatternMapVisual.qml">../src/PlanView/FWLandingPatternMapVisual.qml</file>
<file alias="QGroundControl/Controls/GeoFenceEditor.qml">../src/PlanView/GeoFenceEditor.qml</file>
<file alias="QGroundControl/Controls/GeoFenceMapVisuals.qml">../src/PlanView/GeoFenceMapVisuals.qml</file>
<file alias="QGroundControl/Controls/HorizontalFactValueGrid.qml">../src/QmlControls/HorizontalFactValueGrid.qml</file>
<file alias="QGroundControl/Controls/IndicatorButton.qml">../src/QmlControls/IndicatorButton.qml</file>
<file alias="QGroundControl/Controls/InstrumentValue
.qml">../src/QmlControls/InstrumentValue
.qml</file>
<file alias="QGroundControl/Controls/InstrumentValue
Area.qml">../src/QmlControls/InstrumentValueArea
.qml</file>
<file alias="QGroundControl/Controls/InstrumentValue
Label.qml">../src/QmlControls/InstrumentValueLabel
.qml</file>
<file alias="QGroundControl/Controls/InstrumentValue
Value.qml">../src/QmlControls/InstrumentValueValue
.qml</file>
<file alias="QGroundControl/Controls/InstrumentValueEditDialog.qml">../src/QmlControls/InstrumentValueEditDialog.qml</file>
<file alias="QGroundControl/Controls/JoystickThumbPad.qml">../src/QmlControls/JoystickThumbPad.qml</file>
<file alias="QGroundControl/Controls/KMLOrSHPFileDialog.qml">../src/QmlControls/KMLOrSHPFileDialog.qml</file>
...
...
@@ -177,11 +179,14 @@
<file alias="QGroundControl/Controls/SurveyMapVisual.qml">../src/PlanView/SurveyMapVisual.qml</file>
<file alias="QGroundControl/Controls/TerrainStatus.qml">../src/PlanView/TerrainStatus.qml</file>
<file alias="QGroundControl/Controls/TakeoffItemMapVisual.qml">../src/PlanView/TakeoffItemMapVisual.qml</file>
<file alias="QGroundControl/Controls/ToolBarBase.qml">../src/ui/toolbar/ToolBarBase.qml</file>
<file alias="QGroundControl/Controls/ToolStrip.qml">../src/QmlControls/ToolStrip.qml</file>
<file alias="QGroundControl/Controls/TransectStyleComplexItemStats.qml">../src/PlanView/TransectStyleComplexItemStats.qml</file>
<file alias="QGroundControl/Controls/VehicleRotationCal.qml">../src/QmlControls/VehicleRotationCal.qml</file>
<file alias="QGroundControl/Controls/VehicleSummaryRow.qml">../src/QmlControls/VehicleSummaryRow.qml</file>
<file alias="QGroundControl/Controls/VerticalFactValueGrid.qml">../src/QmlControls/VerticalFactValueGrid.qml</file>
<file alias="QGroundControl/Controls/ViewWidget.qml">../src/ViewWidgets/ViewWidget.qml</file>
<file alias="QGroundControl/Controls/VTOLLandingPatternMapVisual.qml">../src/PlanView/VTOLLandingPatternMapVisual.qml</file>
<file alias="QGroundControl/FactControls/AltitudeFactTextField.qml">../src/FactSystem/FactControls/AltitudeFactTextField.qml</file>
<file alias="QGroundControl/FactControls/FactBitmask.qml">../src/FactSystem/FactControls/FactBitmask.qml</file>
<file alias="QGroundControl/FactControls/FactCheckBox.qml">../src/FactSystem/FactControls/FactCheckBox.qml</file>
...
...
@@ -203,12 +208,19 @@
<file alias="QGroundControl/FlightDisplay/FlyViewMissionCompleteDialog.qml">../src/FlightDisplay/FlyViewMissionCompleteDialog.qml</file>
<file alias="QGroundControl/FlightDisplay/FlyViewPreFlightChecklistPopup.qml">../src/FlightDisplay/FlyViewPreFlightChecklistPopup.qml</file>
<file alias="QGroundControl/FlightDisplay/FlyViewToolStrip.qml">../src/FlightDisplay/FlyViewToolStrip.qml</file>
<file alias="QGroundControl/FlightDisplay/FlyViewToolStripActionList.qml">../src/FlightDisplay/FlyViewToolStripActionList.qml</file>
<file alias="QGroundControl/FlightDisplay/FlyViewVideo.qml">../src/FlightDisplay/FlyViewVideo.qml</file>
<file alias="QGroundControl/FlightDisplay/FlyViewWidgetLayer.qml">../src/FlightDisplay/FlyViewWidgetLayer.qml</file>
<file alias="QGroundControl/FlightDisplay/GuidedActionActionList.qml">../src/FlightDisplay/GuidedActionActionList.qml</file>
<file alias="QGroundControl/FlightDisplay/GuidedActionConfirm.qml">../src/FlightDisplay/GuidedActionConfirm.qml</file>
<file alias="QGroundControl/FlightDisplay/GuidedActionList.qml">../src/FlightDisplay/GuidedActionList.qml</file>
<file alias="QGroundControl/FlightDisplay/GuidedActionsController.qml">../src/FlightDisplay/GuidedActionsController.qml</file>
<file alias="QGroundControl/FlightDisplay/GuidedActionLand.qml">../src/FlightDisplay/GuidedActionLand.qml</file>
<file alias="QGroundControl/FlightDisplay/GuidedActionList.qml">../src/FlightDisplay/GuidedActionList.qml</file>
<file alias="QGroundControl/FlightDisplay/GuidedActionTakeoff.qml">../src/FlightDisplay/GuidedActionTakeoff.qml</file>
<file alias="QGroundControl/FlightDisplay/GuidedActionPause.qml">../src/FlightDisplay/GuidedActionPause.qml</file>
<file alias="QGroundControl/FlightDisplay/GuidedActionRTL.qml">../src/FlightDisplay/GuidedActionRTL.qml</file>
<file alias="QGroundControl/FlightDisplay/GuidedAltitudeSlider.qml">../src/FlightDisplay/GuidedAltitudeSlider.qml</file>
<file alias="QGroundControl/FlightDisplay/GuidedToolStripAction.qml">../src/FlightDisplay/GuidedToolStripAction.qml</file>
<file alias="QGroundControl/FlightDisplay/MultiVehicleList.qml">../src/FlightDisplay/MultiVehicleList.qml</file>
<file alias="QGroundControl/FlightDisplay/MultiVehiclePanel.qml">../src/FlightDisplay/MultiVehiclePanel.qml</file>
<file alias="QGroundControl/FlightDisplay/PreFlightBatteryCheck.qml">../src/FlightDisplay/PreFlightBatteryCheck.qml</file>
...
...
@@ -216,6 +228,7 @@
<file alias="QGroundControl/FlightDisplay/PreFlightRCCheck.qml">../src/FlightDisplay/PreFlightRCCheck.qml</file>
<file alias="QGroundControl/FlightDisplay/PreFlightSensorsHealthCheck.qml">../src/FlightDisplay/PreFlightSensorsHealthCheck.qml</file>
<file alias="QGroundControl/FlightDisplay/PreFlightSoundCheck.qml">../src/FlightDisplay/PreFlightSoundCheck.qml</file>
<file alias="QGroundControl/FlightDisplay/PreFlightCheckListShowAction.qml">../src/FlightDisplay/PreFlightCheckListShowAction.qml</file>
<file alias="QGroundControl/FlightDisplay/TerrainProgress.qml">../src/FlightDisplay/TerrainProgress.qml</file>
<file alias="QGroundControl/FlightDisplay/VehicleWarnings.qml">../src/FlightDisplay/VehicleWarnings.qml</file>
<file alias="QGroundControl/FlightDisplay/qmldir">../src/QmlControls/QGroundControl/FlightDisplay/qmldir</file>
...
...
@@ -262,12 +275,11 @@
<file alias="VibrationPageWidget.qml">../src/FlightMap/Widgets/VibrationPageWidget.qml</file>
<file alias="VideoPageWidget.qml">../src/FlightMap/Widgets/VideoPageWidget.qml</file>
<file alias="VirtualJoystick.qml">../src/FlightDisplay/VirtualJoystick.qml</file>
<file alias="QGroundControl/Controls/VTOLLandingPatternMapVisual.qml">../src/PlanView/VTOLLandingPatternMapVisual.qml</file>
<file alias="VTOLLandingPatternEditor.qml">../src/PlanView/VTOLLandingPatternEditor.qml</file>
<file alias="QGroundControl/Specific/qmldir">../src/QmlControls/QGroundControl/Specific/qmldir</fil
e>
<file alias="QGroundControl/Specific/StartupWizard.qml">../src/QmlControls/QGroundControl/Specific/StartupWizard.qml</file
>
<file alias="
QGroundControl/Specific/BaseStartupWizardPage.qml">../src/QmlControls/QGroundControl/Specific/BaseStartupWizardPage
.qml</file>
<file alias="
QGroundControl/Specific/UnitsWizardPage.qml">../src/QmlControls/QGroundControl/Specific/UnitsWizardPage
.qml</file>
</qresourc
e>
<qresource prefix="/FirstRunPromptDialogs"
>
<file alias="
UnitsFirstRunPrompt.qml">../src/FirstRunPromptDialogs/UnitsFirstRunPrompt
.qml</file>
<file alias="
OfflineVehicleFirstRunPrompt.qml">../src/FirstRunPromptDialogs/OfflineVehicleFirstRunPrompt
.qml</file>
</qresource>
<qresource prefix="/json">
<file alias="ADSBVehicleManager.SettingsGroup.json">../src/Settings/ADSBVehicleManager.SettingsGroup.json</file>
...
...
custom-example/src/FirmwarePlugin/CustomFirmwarePlugin.cc
View file @
20664925
...
...
@@ -33,16 +33,16 @@ AutoPilotPlugin* CustomFirmwarePlugin::autopilotPlugin(Vehicle* vehicle)
return
new
CustomAutoPilotPlugin
(
vehicle
,
vehicle
);
}
const
QVariantList
&
CustomFirmwarePlugin
::
tool
Bar
Indicators
(
const
Vehicle
*
vehicle
)
const
QVariantList
&
CustomFirmwarePlugin
::
toolIndicators
(
const
Vehicle
*
vehicle
)
{
if
(
_tool
Bar
IndicatorList
.
size
()
==
0
)
{
if
(
_toolIndicatorList
.
size
()
==
0
)
{
// First call the base class to get the standard QGC list. This way we are guaranteed to always get
// any new toolbar indicators which are added upstream in our custom build.
_tool
BarIndicatorList
=
FirmwarePlugin
::
toolBar
Indicators
(
vehicle
);
_tool
IndicatorList
=
FirmwarePlugin
::
tool
Indicators
(
vehicle
);
// Then specifically remove the RC RSSI indicator.
_tool
Bar
IndicatorList
.
removeOne
(
QVariant
::
fromValue
(
QUrl
::
fromUserInput
(
"qrc:/toolbar/RCRSSIIndicator.qml"
)));
_toolIndicatorList
.
removeOne
(
QVariant
::
fromValue
(
QUrl
::
fromUserInput
(
"qrc:/toolbar/RCRSSIIndicator.qml"
)));
}
return
_tool
Bar
IndicatorList
;
return
_toolIndicatorList
;
}
// Tells QGC that your vehicle has a gimbal on it. This will in turn cause thing like gimbal commands to point
...
...
custom-example/src/FirmwarePlugin/CustomFirmwarePlugin.h
View file @
20664925
...
...
@@ -25,10 +25,10 @@ public:
CustomFirmwarePlugin
();
// FirmwarePlugin overrides
AutoPilotPlugin
*
autopilotPlugin
(
Vehicle
*
vehicle
)
final
;
const
QVariantList
&
tool
BarIndicators
(
const
Vehicle
*
vehicle
)
final
;
bool
hasGimbal
(
Vehicle
*
vehicle
,
bool
&
rollSupported
,
bool
&
pitchSupported
,
bool
&
yawSupported
)
final
;
AutoPilotPlugin
*
autopilotPlugin
(
Vehicle
*
vehicle
)
final
;
const
QVariantList
&
tool
Indicators
(
const
Vehicle
*
vehicle
)
final
;
bool
hasGimbal
(
Vehicle
*
vehicle
,
bool
&
rollSupported
,
bool
&
pitchSupported
,
bool
&
yawSupported
)
final
;
private:
QVariantList
_tool
Bar
IndicatorList
;
QVariantList
_toolIndicatorList
;
};
qgroundcontrol.qrc
View file @
20664925
...
...
@@ -92,6 +92,7 @@
<file alias="QGroundControl/Controls/EditPositionDialog.qml">src/QmlControls/EditPositionDialog.qml</file>
<file alias="QGroundControl/Controls/ExclusiveGroupItem.qml">src/QmlControls/ExclusiveGroupItem.qml</file>
<file alias="QGroundControl/Controls/FactSliderPanel.qml">src/QmlControls/FactSliderPanel.qml</file>
<file alias="QGroundControl/Controls/FirstRunPrompt.qml">src/FirstRunPromptDialogs/FirstRunPrompt.qml</file>
<file alias="QGroundControl/Controls/FileButton.qml">src/QmlControls/FileButton.qml</file>
<file alias="QGroundControl/Controls/FlightModeDropdown.qml">src/QmlControls/FlightModeDropdown.qml</file>
<file alias="QGroundControl/Controls/FlightModeMenu.qml">src/QmlControls/FlightModeMenu.qml</file>
...
...
@@ -185,6 +186,7 @@
<file alias="QGroundControl/Controls/VehicleSummaryRow.qml">src/QmlControls/VehicleSummaryRow.qml</file>
<file alias="QGroundControl/Controls/VerticalFactValueGrid.qml">src/QmlControls/VerticalFactValueGrid.qml</file>
<file alias="QGroundControl/Controls/ViewWidget.qml">src/ViewWidgets/ViewWidget.qml</file>
<file alias="QGroundControl/Controls/VTOLLandingPatternMapVisual.qml">src/PlanView/VTOLLandingPatternMapVisual.qml</file>
<file alias="QGroundControl/FactControls/AltitudeFactTextField.qml">src/FactSystem/FactControls/AltitudeFactTextField.qml</file>
<file alias="QGroundControl/FactControls/FactBitmask.qml">src/FactSystem/FactControls/FactBitmask.qml</file>
<file alias="QGroundControl/FactControls/FactCheckBox.qml">src/FactSystem/FactControls/FactCheckBox.qml</file>
...
...
@@ -273,12 +275,11 @@
<file alias="VibrationPageWidget.qml">src/FlightMap/Widgets/VibrationPageWidget.qml</file>
<file alias="VideoPageWidget.qml">src/FlightMap/Widgets/VideoPageWidget.qml</file>
<file alias="VirtualJoystick.qml">src/FlightDisplay/VirtualJoystick.qml</file>
<file alias="QGroundControl/Controls/VTOLLandingPatternMapVisual.qml">src/PlanView/VTOLLandingPatternMapVisual.qml</file>
<file alias="VTOLLandingPatternEditor.qml">src/PlanView/VTOLLandingPatternEditor.qml</file>
<file alias="QGroundControl/Specific/qmldir">src/QmlControls/QGroundControl/Specific/qmldir</fil
e>
<file alias="QGroundControl/Specific/StartupWizard.qml">src/QmlControls/QGroundControl/Specific/StartupWizard.qml</file
>
<file alias="
QGroundControl/Specific/BaseStartupWizardPage.qml">src/QmlControls/QGroundControl/Specific/BaseStartupWizardPage
.qml</file>
<file alias="
QGroundControl/Specific/UnitsWizardPage.qml">src/QmlControls/QGroundControl/Specific/UnitsWizardPage
.qml</file>
</qresourc
e>
<qresource prefix="/FirstRunPromptDialogs"
>
<file alias="
UnitsFirstRunPrompt.qml">src/FirstRunPromptDialogs/UnitsFirstRunPrompt
.qml</file>
<file alias="
OfflineVehicleFirstRunPrompt.qml">src/FirstRunPromptDialogs/OfflineVehicleFirstRunPrompt
.qml</file>
</qresource>
<qresource prefix="/json">
<file alias="ADSBVehicleManager.SettingsGroup.json">src/Settings/ADSBVehicleManager.SettingsGroup.json</file>
...
...
src/FirstRunPromptDialogs/FirstRunPrompt.qml
0 → 100644
View file @
20664925
/****************************************************************************
*
* (c) 2009-2020 QGROUNDCONTROL PROJECT <http://www.qgroundcontrol.org>
*
* QGroundControl is licensed according to the terms in the file
* COPYING.md in the root of the source code directory.
*
****************************************************************************/
import
QtQuick
2.12
import
QtQuick
.
Dialogs
1.3
import
QGroundControl
1.0
import
QGroundControl
.
Controls
1.0
// Base class for all first run prompt dialogs
QGCPopupDialog
{
buttons
:
StandardButton
.
Ok
property
int
promptId
property
bool
markAsShownOnClose
:
true
onHideDialog
:
{
if
(
markAsShownOnClose
)
{
QGroundControl
.
settingsManager
.
appSettings
.
firstRunPromptIdsMarkIdAsShown
(
promptId
)
}
}
}
src/FirstRunPromptDialogs/OfflineVehicleFirstRunPrompt.qml
0 → 100644
View file @
20664925
/****************************************************************************
*
* (c) 2009-2020 QGROUNDCONTROL PROJECT <http://www.qgroundcontrol.org>
*
* QGroundControl is licensed according to the terms in the file
* COPYING.md in the root of the source code directory.
*
****************************************************************************/
import
QtQuick
2.12
import
QtQuick
.
Layouts
1.12
import
QGroundControl
1.0
import
QGroundControl
.
FactSystem
1.0
import
QGroundControl
.
FactControls
1.0
import
QGroundControl
.
ScreenTools
1.0
import
QGroundControl
.
SettingsManager
1.0
import
QGroundControl
.
Controls
1.0
FirstRunPrompt
{
title
:
qsTr
(
"
Vehicle Information
"
)
promptId
:
QGroundControl
.
corePlugin
.
offlineVehicleFirstRunPromptId
property
real
_margins
:
ScreenTools
.
defaultFontPixelWidth
property
var
_appSettings
:
QGroundControl
.
settingsManager
.
appSettings
property
var
_offlineVehicle
:
QGroundControl
.
multiVehicleManager
.
offlineEditingVehicle
property
bool
_showCruiseSpeed
:
!
_offlineVehicle
.
multiRotor
property
bool
_showHoverSpeed
:
_offlineVehicle
.
multiRotor
||
_offlineVehicle
.
vtol
property
bool
_multipleFirmware
:
QGroundControl
.
supportedFirmwareCount
>
2
property
bool
_multipleVehicleTypes
:
QGroundControl
.
supportedVehicleCount
>
1
property
real
_fieldWidth
:
ScreenTools
.
defaultFontPixelWidth
*
16
ColumnLayout
{
spacing
:
ScreenTools
.
defaultFontPixelHeight
QGCLabel
{
id
:
unitsSectionLabel
Layout.preferredWidth
:
valueRect
.
width
text
:
qsTr
(
"
Specify information about the vehicle you plan to fly. If you are unsure of the correct values leave them as is.
"
)
wrapMode
:
Text
.
WordWrap
}
Rectangle
{
id
:
valueRect
Layout.preferredHeight
:
valueGrid
.
height
+
(
_margins
*
2
)
Layout.preferredWidth
:
valueGrid
.
width
+
(
_margins
*
2
)
color
:
qgcPal
.
windowShade
Layout.fillWidth
:
true
GridLayout
{
id
:
valueGrid
anchors.margins
:
_margins
anchors.top
:
parent
.
top
anchors.left
:
parent
.
left
columns
:
2
QGCLabel
{
Layout.fillWidth
:
true
text
:
qsTr
(
"
Firmware
"
)
visible
:
_multipleFirmware
}
FactComboBox
{
Layout.preferredWidth
:
_fieldWidth
fact
:
QGroundControl
.
settingsManager
.
appSettings
.
offlineEditingFirmwareType
indexModel
:
false
visible
:
_multipleFirmware
}
QGCLabel
{
Layout.fillWidth
:
true
text
:
qsTr
(
"
Vehicle
"
)
visible
:
_multipleVehicleTypes
}
FactComboBox
{
Layout.preferredWidth
:
_fieldWidth
fact
:
QGroundControl
.
settingsManager
.
appSettings
.
offlineEditingVehicleType
indexModel
:
false
visible
:
_multipleVehicleTypes
}
QGCLabel
{
Layout.fillWidth
:
true
text
:
qsTr
(
"
Mission Cruise Speed
"
)
visible
:
_showCruiseSpeed
}
FactTextField
{
Layout.preferredWidth
:
_fieldWidth
fact
:
QGroundControl
.
settingsManager
.
appSettings
.
offlineEditingCruiseSpeed
visible
:
_showCruiseSpeed
}
QGCLabel
{
Layout.fillWidth
:
true
text
:
qsTr
(
"
Mission Hover Speed
"
)
visible
:
_showHoverSpeed
}
FactTextField
{
Layout.preferredWidth
:
_fieldWidth
fact
:
QGroundControl
.
settingsManager
.
appSettings
.
offlineEditingHoverSpeed
visible
:
_showHoverSpeed
}
}
}
}
}
src/FirstRunPromptDialogs/UnitsFirstRunPrompt.qml
0 → 100644
View file @
20664925
/****************************************************************************
*
* (c) 2009-2020 QGROUNDCONTROL PROJECT <http://www.qgroundcontrol.org>
*
* QGroundControl is licensed according to the terms in the file
* COPYING.md in the root of the source code directory.
*
****************************************************************************/
import
QtQuick
2.12
import
QtQuick
.
Layouts
1.12
import
QGroundControl
1.0
import
QGroundControl
.
FactSystem
1.0
import
QGroundControl
.
FactControls
1.0
import
QGroundControl
.
ScreenTools
1.0
import
QGroundControl
.
SettingsManager
1.0
import
QGroundControl
.
Controls
1.0
FirstRunPrompt
{
title
:
qsTr
(
"
Measurement Units
"
)
promptId
:
QGroundControl
.
corePlugin
.
unitsFirstRunPromptId
property
real
_margins
:
ScreenTools
.
defaultFontPixelHeight
/
2
property
var
_unitsSettings
:
QGroundControl
.
settingsManager
.
unitsSettings
property
var
_rgFacts
:
[
_unitsSettings
.
horizontalDistanceUnits
,
_unitsSettings
.
verticalDistanceUnits
,
_unitsSettings
.
areaUnits
,
_unitsSettings
.
speedUnits
,
_unitsSettings
.
temperatureUnits
]
property
var
_rgLabels
:
[
qsTr
(
"
Horizontal Distance
"
),
qsTr
(
"
Vertical Distance
"
),
qsTr
(
"
Area
"
),
qsTr
(
"
Speed
"
),
qsTr
(
"
Temperature
"
)
]
property
int
_cVisibleFacts
:
0
Component.onCompleted
:
{
var
cVisibleFacts
=
0
for
(
var
i
=
0
;
i
<
_rgFacts
.
length
;
i
++
)
{
if
(
_rgFacts
[
i
].
visible
)
{
cVisibleFacts
++
}
}
_cVisibleFacts
=
cVisibleFacts
}
function
changeSystemOfUnits
(
metric
)
{
if
(
_unitsSettings
.
horizontalDistanceUnits
.
visible
)
{
_unitsSettings
.
horizontalDistanceUnits
.
value
=
metric
?
UnitsSettings
.
HorizontalDistanceUnitsMeters
:
UnitsSettings
.
HorizontalDistanceUnitsFeet
}
if
(
_unitsSettings
.
verticalDistanceUnits
.
visible
)
{
_unitsSettings
.
verticalDistanceUnits
.
value
=
metric
?
UnitsSettings
.
VerticalDistanceUnitsMeters
:
UnitsSettings
.
VerticalDistanceUnitsFeet
}
if
(
_unitsSettings
.
areaUnits
.
visible
)
{
_unitsSettings
.
areaUnits
.
value
=
metric
?
UnitsSettings
.
AreaUnitsSquareMeters
:
UnitsSettings
.
AreaUnitsSquareFeet
}
if
(
_unitsSettings
.
speedUnits
.
visible
)
{
_unitsSettings
.
speedUnits
.
value
=
metric
?
UnitsSettings
.
SpeedUnitsMetersPerSecond
:
UnitsSettings
.
SpeedUnitsFeetPerSecond
}
if
(
_unitsSettings
.
temperatureUnits
.
visible
)
{
_unitsSettings
.
temperatureUnits
.
value
=
metric
?
UnitsSettings
.
TemperatureUnitsCelsius
:
UnitsSettings
.
TemperatureUnitsFarenheit
}
}
ColumnLayout
{
id
:
settingsColumn
spacing
:
ScreenTools
.
defaultFontPixelHeight
QGCLabel
{
id
:
unitsSectionLabel
text
:
qsTr
(
"
Choose the measurement units you want to use. You can also change it later in General Settings.
"
)
Layout.preferredWidth
:
unitsGrid
.
width
wrapMode
:
Text
.
WordWrap
}
Rectangle
{
Layout.preferredHeight
:
unitsGrid
.
height
+
(
_margins
*
2
)
Layout.preferredWidth
:
unitsGrid
.
width
+
(
_margins
*
2
)
color
:
qgcPal
.
windowShade
Layout.fillWidth
:
true
GridLayout
{
id
:
unitsGrid
anchors.margins
:
_margins
anchors.top
:
parent
.
top
anchors.left
:
parent
.
left
rows
:
_cVisibleFacts
+
1
flow
:
GridLayout
.
TopToBottom
QGCLabel
{
text
:
qsTr
(
"
System of units
"
)
}
Repeater
{
model
:
_rgFacts
.
length
QGCLabel
{
text
:
_rgLabels
[
index
]
visible
:
_rgFacts
[
index
].
visible
}
}
QGCComboBox
{
Layout.fillWidth
:
true
sizeToContents
:
true
model
:
[
qsTr
(
"
Metric System
"
),
qsTr
(
"
Imperial System
"
)
]
currentIndex
:
_unitsSettings
.
horizontalDistanceUnits
.
value
===
UnitsSettings
.
HorizontalDistanceUnitsMeters
?
0
:
1
onActivated
:
changeSystemOfUnits
(
currentIndex
===
0
/* metric */
)
}
Repeater
{
model
:
_rgFacts
.
length
FactComboBox
{
Layout.fillWidth
:
true
sizeToContents
:
true
fact
:
_rgFacts
[
index
]
indexModel
:
false
visible
:
_rgFacts
[
index
].
visible
}
}
}
}
}
}
src/QmlControls/HorizontalFactValueGrid.qml
View file @
20664925
...
...
@@ -176,7 +176,7 @@ T.HorizontalFactValueGrid {
var
item
=
valueGrid
.
childAt
(
mouse
.
x
,
mouse
.
y
)
//console.log(item, item ? item.instrumentValueData : "null", item && item.parent ? item.parent.instrumentValueData : "null")
if
(
item
&&
item
.
instrumentValueData
!==
undefined
)
{
mainWindow
.
showPopupDialog
(
valueEditDialog
,
{
instrumentValueData
:
item
.
instrumentValueData
})
mainWindow
.
showPopupDialog
FromComponent
(
valueEditDialog
,
{
instrumentValueData
:
item
.
instrumentValueData
})
}
}
...
...
src/QmlControls/InstrumentValueEditDialog.qml
View file @
20664925
...
...
@@ -77,7 +77,7 @@ QGCPopupDialog {
instrumentValueData
.
text
=
""
instrumentValueData
.
icon
=
instrumentValueData
.
factValueGrid
.
iconNames
[
0
]
var
updateFunction
=
function
(
icon
){
instrumentValueData
.
icon
=
icon
}
mainWindow
.
showPopupDialog
(
iconPickerDialog
,
{
iconNames
:
instrumentValueData
.
factValueGrid
.
iconNames
,
icon
:
instrumentValueData
.
icon
,
updateIconFunction
:
updateFunction
})
mainWindow
.
showPopupDialog
FromComponent
(
iconPickerDialog
,
{
iconNames
:
instrumentValueData
.
factValueGrid
.
iconNames
,
icon
:
instrumentValueData
.
icon
,
updateIconFunction
:
updateFunction
})
}
}
...
...
@@ -98,7 +98,7 @@ QGCPopupDialog {
anchors.fill
:
parent
onClicked
:
{
var
updateFunction
=
function
(
icon
){
instrumentValueData
.
icon
=
icon
}
mainWindow
.
showPopupDialog
(
iconPickerDialog
,
{
iconNames
:
instrumentValueData
.
factValueGrid
.
iconNames
,
icon
:
instrumentValueData
.
icon
,
updateIconFunction
:
updateFunction
})
mainWindow
.
showPopupDialog
FromComponent
(
iconPickerDialog
,
{
iconNames
:
instrumentValueData
.
factValueGrid
.
iconNames
,
icon
:
instrumentValueData
.
icon
,
updateIconFunction
:
updateFunction
})
}
}
...
...
@@ -392,7 +392,7 @@ QGCPopupDialog {
anchors.fill
:
parent
onClicked
:
{
var
updateFunction
=
function
(
icon
){
updateIconValue
(
index
,
icon
)
}
mainWindow
.
showPopupDialog
(
iconPickerDialog
,
{
iconNames
:
instrumentValueData
.
factValueGrid
.
iconNames
,
icon
:
modelData
,
updateIconFunction
:
updateFunction
})
mainWindow
.
showPopupDialog
FromComponent
(
iconPickerDialog
,
{
iconNames
:
instrumentValueData
.
factValueGrid
.
iconNames
,
icon
:
modelData
,
updateIconFunction
:
updateFunction
})
}
}
}
...
...
src/QmlControls/ParameterEditorDialog.qml
View file @
20664925
...
...
@@ -290,7 +290,7 @@ QGCViewDialog {
text
:
qsTr
(
"
Set RC to Param
"
)
width
:
_editFieldWidth
visible
:
_advanced
.
checked
&&
!
validate
&&
showRCToParam
onClicked
:
mainWindow
.
showPopupDialog
(
rcToParamDialog
)
onClicked
:
mainWindow
.
showPopupDialog
FromComponent
(
rcToParamDialog
)
}
}
// Column
}
...
...
src/QmlControls/QGCPopupDialogContainer.qml
View file @
20664925
...
...
@@ -18,10 +18,11 @@ import QGroundControl.Palette 1.0
import
QGroundControl
.
ScreenTools
1.0
Popup
{
property
var
dialogComponent
property
var
dialogProperties
property
var
dialogComponent
property
string
dialogSource
property
var
dialogProperties
id
:
popupR
oot
id
:
_r
oot
anchors.centerIn
:
parent
width
:
mainColumnLayout
.
width
+
(
padding
*
2
)
height
:
mainColumnLayout
.
y
+
mainColumnLayout
.
height
+
padding
...
...
@@ -75,7 +76,7 @@ Popup {
}
Rectangle
{
anchors.margins
:
popupR
oot
.
padding
anchors.margins
:
_r
oot
.
padding
anchors.fill
:
parent
color
:
_pal
.
window
}
...
...
@@ -209,10 +210,11 @@ Popup {
Loader
{
id
:
dialogComponentLoader
x
:
_contentMargin
source
:
dialogSource
sourceComponent
:
dialogComponent
focus
:
true
property
var
dialogProperties
:
popupR
oot
.
dialogProperties
property
var
dialogProperties
:
_r
oot
.
dialogProperties
property
bool
acceptAllowed
:
acceptButton
.
visible
property
bool
rejectAllowed
:
rejectButton
.
visible
}
...
...
src/QmlControls/QGroundControl/Controls/qmldir
View file @
20664925
...
...
@@ -15,6 +15,7 @@ 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
...
...
src/QmlControls/QGroundControl/Specific/BaseStartupWizardPage.qml
deleted
100644 → 0
View file @
cbbf4322
import
QtQuick
2.12
Item
{
// `null` for default which makes the wizzard display one of the buttons: "Next" if more pages or "Done" if the last
property
string
doneText
:
null
// Blocks user from closing the wizard or going to the next page until this becomes true
property
bool
forceConfirmation
:
false
signal
closeView
()
}
src/QmlControls/QGroundControl/Specific/StartupWizard.qml
deleted
100644 → 0
View file @
cbbf4322
import
QtQuick
2.11
import
QtQuick
.
Layouts
1.11
import
QGroundControl
.
ScreenTools
1.0
import
QGroundControl
.
Controls
1.0
import
QGroundControl
.
Palette
1.0
import
QGroundControl
1.0
import
QGroundControl
.
Specific
1.0
Item
{
id
:
_root
implicitWidth
:
contentColumn
.
implicitWidth
+
contentColumn
.
anchors
.
margins
*
2.5
implicitHeight
:
contentColumn
.
implicitHeight
+
contentColumn
.
anchors
.
margins
*
2
+
contentColumn
.
spacing
*
3
property
bool
forceKeepingOpen
:
_pageReady
&&
pageLoader
.
item
.
forceConfirmation
&&
!
_armed
signal
closeView
()
property
bool
_pageReady
:
pageLoader
.
status
===
Loader
.
Ready
property
int
_currentIndex
:
0
property
int
_pagesCount
:
QGroundControl
.
corePlugin
.
startupPages
.
length
property
var
_activeVehicle
:
QGroundControl
.
multiVehicleManager
.
activeVehicle
property
bool
_armed
:
_activeVehicle
&&
_activeVehicle
.
armed
function
doneOrJumpToNext
()
{
if
(
_currentIndex
<
_pagesCount
-
1
)
_currentIndex
+=
1
else
{
_root
.
closeView
()
QGroundControl
.
settingsManager
.
appSettings
.
firstTimeStart
.
value
=
false
}
}
Connections
{
target
:
_pageReady
?
pageLoader
.
item
:
null
onCloseView
:
doneOrJumpToNext
()
}
ColumnLayout
{
id
:
contentColumn
anchors.fill
:
parent
anchors.margins
:
ScreenTools
.
defaultFontPixelHeight
spacing
:
ScreenTools
.
defaultFontPixelHeight
*
0.5
QGCLabel
{
id
:
titleLabel
text
:
qsTr
(
"
Welcome to
"
+
QGroundControl
.
appName
)
color
:
qgcPal
.
text
font.family
:
ScreenTools
.
demiboldFontFamily
font.pointSize
:
ScreenTools
.
mediumFontPointSize
}
Rectangle
{
id
:
separatorRect
height
:
1
color
:
qgcPal
.
windowShade
Layout.fillWidth
:
true
}
Flickable
{
id
:
flickablePage
clip
:
true
contentWidth
:
pageLoader
.
item
?
pageLoader
.
item
.
width
:
0
contentHeight
:
pageLoader
.
item
?
pageLoader
.
item
.
height
:
0
Layout.fillHeight
:
true
Layout.preferredWidth
:
contentWidth
Layout.preferredHeight
:
contentHeight
Loader
{
id
:
pageLoader
source
:
QGroundControl
.
corePlugin
.
startupPages
[
_currentIndex
]
}
}
QGCButton
{
id
:
confirmButton
property
string
_acknowledgeText
:
_pagesCount
<=
1
?
qsTr
(
"
Next
"
)
:
qsTr
(
"
Done
"
)
text
:
(
_pageReady
&&
pageLoader
.
item
&&
pageLoader
.
item
.
doneText
)
?
pageLoader
.
item
.
doneText
:
_acknowledgeText
onClicked
:
doneOrJumpToNext
()
}
}
}
src/QmlControls/QGroundControl/Specific/UnitsWizardPage.qml
deleted
100644 → 0
View file @
cbbf4322
import
QtQuick
2.12
import
QtQuick
.
Layouts
1.12
import
QGroundControl
1.0
import
QGroundControl
.
FactSystem
1.0
import
QGroundControl
.
FactControls
1.0
import
QGroundControl
.
ScreenTools
1.0
import
QGroundControl
.
SettingsManager
1.0
import
QGroundControl
.
Controls
1.0
import
QGroundControl
.
Specific
1.0
BaseStartupWizardPage
{
width
:
settingsColumn
.
width
height
:
settingsColumn
.
height
property
real
_margins
:
ScreenTools
.
defaultFontPixelWidth
property
real
_comboFieldWidth
:
ScreenTools
.
defaultFontPixelWidth
*
20
doneText
:
qsTr
(
"
Confirm
"
)
ColumnLayout
{
id
:
settingsColumn
anchors.horizontalCenter
:
parent
.
horizontalCenter
spacing
:
ScreenTools
.
defaultFontPixelHeight
QGCLabel
{
id
:
unitsSectionLabel
text
:
qsTr
(
"
Choose the measurement units you want to use in the application. You can change it later on in General Settings.
"
)
Layout.preferredWidth
:
unitsGrid
.
width
wrapMode
:
Text
.
WordWrap
}
Rectangle
{
Layout.preferredHeight
:
unitsGrid
.
height
+
(
_margins
*
2
)
Layout.preferredWidth
:
unitsGrid
.
width
+
(
_margins
*
2
)
color
:
qgcPal
.
windowShade
Layout.fillWidth
:
true
GridLayout
{
id
:
unitsGrid
anchors.topMargin
:
_margins
anchors.top
:
parent
.
top
Layout.fillWidth
:
false
anchors.horizontalCenter
:
parent
.
horizontalCenter
flow
:
GridLayout
.
TopToBottom
rows
:
5
QGCLabel
{
text
:
qsTr
(
"
System of units
"
)
}
Repeater
{
model
:
[
qsTr
(
"
Distance
"
),
qsTr
(
"
Area
"
),
qsTr
(
"
Speed
"
),
qsTr
(
"
Temperature
"
)
]
QGCLabel
{
text
:
modelData
}
}
QGCComboBox
{
model
:
[
qsTr
(
"
Metric System
"
),
qsTr
(
"
Imperial System
"
)]
Layout.preferredWidth
:
_comboFieldWidth
currentIndex
:
QGroundControl
.
settingsManager
.
unitsSettings
.
horizontalDistanceUnits
.
value
===
UnitsSettings
.
HorizontalDistanceUnitsMeters
?
0
:
1
onActivated
:
{
var
metric
=
(
currentIndex
===
0
);
QGroundControl
.
settingsManager
.
unitsSettings
.
horizontalDistanceUnits
.
value
=
metric
?
UnitsSettings
.
HorizontalDistanceUnitsMeters
:
UnitsSettings
.
HorizontalDistanceUnitsFeet
QGroundControl
.
settingsManager
.
unitsSettings
.
areaUnits
.
value
=
metric
?
UnitsSettings
.
AreaUnitsSquareMeters
:
UnitsSettings
.
AreaUnitsSquareFeet
QGroundControl
.
settingsManager
.
unitsSettings
.
speedUnits
.
value
=
metric
?
UnitsSettings
.
SpeedUnitsMetersPerSecond
:
UnitsSettings
.
SpeedUnitsFeetPerSecond
QGroundControl
.
settingsManager
.
unitsSettings
.
temperatureUnits
.
value
=
metric
?
UnitsSettings
.
TemperatureUnitsCelsius
:
UnitsSettings
.
TemperatureUnitsFarenheit
}
}
Repeater
{
model
:
[
QGroundControl
.
settingsManager
.
unitsSettings
.
horizontalDistanceUnits
,
QGroundControl
.
settingsManager
.
unitsSettings
.
areaUnits
,
QGroundControl
.
settingsManager
.
unitsSettings
.
speedUnits
,
QGroundControl
.
settingsManager
.
unitsSettings
.
temperatureUnits
]
FactComboBox
{
Layout.preferredWidth
:
_comboFieldWidth
fact
:
modelData
indexModel
:
false
}
}
}
}
}
}
src/QmlControls/QGroundControl/Specific/qmldir
deleted
100644 → 0
View file @
cbbf4322
module QGroundControl.Specific
BaseStartupWizardPage 1.0 BaseStartupWizardPage.qml
StartupWizard 1.0 StartupWizard.qml
UnitsWizardPage 1.0 UnitsWizardPage.qml
src/QmlControls/VerticalFactValueGrid.qml
View file @
20664925
...
...
@@ -144,7 +144,7 @@ T.VerticalFactValueGrid {
var
item
=
valueGrid
.
childAt
(
mouse
.
x
,
mouse
.
y
)
//console.log(item, item ? item.instrumentValueData : "null", item && item.parent ? item.parent.instrumentValueData : "null")
if
(
item
&&
item
.
instrumentValueData
!==
undefined
)
{
mainWindow
.
showPopupDialog
(
valueEditDialog
,
{
instrumentValueData
:
item
.
instrumentValueData
})
mainWindow
.
showPopupDialog
FromComponent
(
valueEditDialog
,
{
instrumentValueData
:
item
.
instrumentValueData
})
}
}
...
...
src/Settings/App.SettingsGroup.json
View file @
20664925
...
...
@@ -22,7 +22,7 @@
{
"name"
:
"offlineEditingCruiseSpeed"
,
"shortDescription"
:
"Offline editing cruise speed"
,