7import QGroundControl.Controls
8import QGroundControl.PlanView
13 height: ScreenTools.toolbarHeight
14 color: qgcPal.toolbarBackground
16 property var planMasterController
17 property bool showRallyPointsHelp: false
19 signal toolbarButtonClicked()
21 property var _activeVehicle: QGroundControl.multiVehicleManager.activeVehicle
22 property real _controllerProgressPct: planMasterController.missionController.progressPct
24 QGCPalette { id: qgcPal }
26 /// Bottom single pixel divider
28 anchors.left: parent.left
29 anchors.right: parent.right
30 anchors.bottom: parent.bottom
33 visible: qgcPal.globalTheme === QGCPalette.Light
39 icon.source: "/res/QGCLogoFull.svg"
41 onClicked: mainWindow.showToolSelectDialog()
46 anchors.bottomMargin: 1
47 anchors.left: qgcButton.right
48 anchors.top: parent.top
49 anchors.bottom: parent.bottom
50 anchors.right: parent.right
51 contentWidth: toolIndicators.width
52 flickableDirection: Flickable.HorizontalFlick
54 PlanToolBarIndicators {
56 anchors.top: parent.top
57 anchors.bottom: parent.bottom
58 planMasterController: _root.planMasterController
59 showRallyPointsHelp: _root.showRallyPointsHelp
60 onToolbarButtonClicked: _root.toolbarButtonClicked()
64 // Small mission download progress bar
67 anchors.left: parent.left
68 anchors.bottom: parent.bottom
70 width: _controllerProgressPct * parent.width
71 color: qgcPal.colorGreen
76 largeProgressBar._userHide = false
81 // Large mission download progress bar
84 anchors.bottom: parent.bottom
85 anchors.left: parent.left
86 anchors.right: parent.right
89 visible: _showLargeProgress
91 property bool _userHide: false
92 property bool _showLargeProgress: progressBar.visible && !_userHide && qgcPal.globalTheme === QGCPalette.Light
95 target: QGroundControl.multiVehicleManager
96 function onActiveVehicleChanged(activeVehicle) { largeProgressBar._userHide = false }
100 anchors.top: parent.top
101 anchors.bottom: parent.bottom
102 width: _controllerProgressPct * parent.width
103 color: qgcPal.colorGreen
107 anchors.centerIn: parent
108 text: qsTr("Syncing Mission")
109 font.pointSize: ScreenTools.largeFontPointSize
110 visible: _controllerProgressPct !== 1
114 anchors.centerIn: parent
116 font.pointSize: ScreenTools.largeFontPointSize
117 visible: _controllerProgressPct === 1
121 anchors.margins: _margin
122 anchors.right: parent.right
123 anchors.bottom: parent.bottom
124 text: qsTr("Click anywhere to hide")
126 property real _margin: ScreenTools.defaultFontPixelWidth / 2
131 onClicked: largeProgressBar._userHide = true
137 target: planMasterController.missionController
139 function onProgressPctChanged(progressPct) {
140 if (progressPct === 1) {
142 resetProgressTimer.start()
144 progressBar.visible = false
146 } else if (progressPct > 0) {
147 progressBar.visible = true
153 id: resetProgressTimer
155 onTriggered: progressBar.visible = false