7import QGroundControl.Controls
12 height: ScreenTools.toolbarHeight
13 color: qgcPal.toolbarBackground
15 property var planMasterController
16 property bool showRallyPointsHelp: false
18 property var _activeVehicle: QGroundControl.multiVehicleManager.activeVehicle
19 property real _controllerProgressPct: planMasterController.missionController.progressPct
21 QGCPalette { id: qgcPal }
23 /// Bottom single pixel divider
25 anchors.left: parent.left
26 anchors.right: parent.right
27 anchors.bottom: parent.bottom
30 visible: qgcPal.globalTheme === QGCPalette.Light
36 icon.source: "/res/QGCLogoFull.svg"
38 onClicked: mainWindow.showToolSelectDialog()
43 anchors.bottomMargin: 1
44 anchors.left: qgcButton.right
45 anchors.top: parent.top
46 anchors.bottom: parent.bottom
47 anchors.right: parent.right
48 contentWidth: toolIndicators.width
49 flickableDirection: Flickable.HorizontalFlick
51 PlanToolBarIndicators {
53 anchors.top: parent.top
54 anchors.bottom: parent.bottom
55 planMasterController: _root.planMasterController
56 showRallyPointsHelp: _root.showRallyPointsHelp
60 // Small mission download progress bar
63 anchors.left: parent.left
64 anchors.bottom: parent.bottom
66 width: _controllerProgressPct * parent.width
67 color: qgcPal.colorGreen
72 largeProgressBar._userHide = false
77 // Large mission download progress bar
80 anchors.bottom: parent.bottom
81 anchors.left: parent.left
82 anchors.right: parent.right
85 visible: _showLargeProgress
87 property bool _userHide: false
88 property bool _showLargeProgress: progressBar.visible && !_userHide && qgcPal.globalTheme === QGCPalette.Light
91 target: QGroundControl.multiVehicleManager
92 function onActiveVehicleChanged(activeVehicle) { largeProgressBar._userHide = false }
96 anchors.top: parent.top
97 anchors.bottom: parent.bottom
98 width: _controllerProgressPct * parent.width
99 color: qgcPal.colorGreen
103 anchors.centerIn: parent
104 text: qsTr("Syncing Mission")
105 font.pointSize: ScreenTools.largeFontPointSize
106 visible: _controllerProgressPct !== 1
110 anchors.centerIn: parent
112 font.pointSize: ScreenTools.largeFontPointSize
113 visible: _controllerProgressPct === 1
117 anchors.margins: _margin
118 anchors.right: parent.right
119 anchors.bottom: parent.bottom
120 text: qsTr("Click anywhere to hide")
122 property real _margin: ScreenTools.defaultFontPixelWidth / 2
127 onClicked: largeProgressBar._userHide = true
133 target: planMasterController.missionController
135 function onProgressPctChanged(progressPct) {
136 if (progressPct === 1) {
138 resetProgressTimer.start()
140 progressBar.visible = false
142 } else if (progressPct > 0) {
143 progressBar.visible = true
149 id: resetProgressTimer
151 onTriggered: progressBar.visible = false