5import QGroundControl.Controls
7// Important Note: Toolbar buttons must manage their checked state manually in order to support
8// view switch prevention. This means they can't be checkable or autoExclusive.
12 height: ScreenTools.defaultFontPixelHeight * 3
13 leftPadding: _horizontalMargin
14 rightPadding: _horizontalMargin
17 property bool logo: false
19 property real _horizontalMargin: ScreenTools.defaultFontPixelWidth
21 onCheckedChanged: checkable = false
23 background: Rectangle {
25 color: button.checked ? qgcPal.buttonHighlight : Qt.rgba(0,0,0,0)
27 border.width: QGroundControl.corePlugin.showTouchAreas ? 3 : 0
31 spacing: ScreenTools.defaultFontPixelWidth
32 anchors.verticalCenter: button.verticalCenter
33 // Logo buttons render the multi-color SVG natively via VectorImage; non-logo buttons
34 // tint their monochrome icon through QGCColoredImage. Plain `Row` skips visible:false items.
37 height: ScreenTools.defaultFontPixelHeight * 2
39 source: visible ? button.icon.source : ""
40 anchors.verticalCenter: parent.verticalCenter
44 height: ScreenTools.defaultFontPixelHeight * 2
46 sourceSize.height: parent.height
47 fillMode: Image.PreserveAspectFit
48 color: button.checked ? qgcPal.buttonHighlightText : qgcPal.buttonText
49 source: visible ? button.icon.source : ""
50 anchors.verticalCenter: parent.verticalCenter
56 color: button.checked ? qgcPal.buttonHighlightText : qgcPal.buttonText
57 anchors.verticalCenter: parent.verticalCenter