diff --git a/src/AnalyzeView/MAVLinkInspectorPage.qml b/src/AnalyzeView/MAVLinkInspectorPage.qml index c43dabafa39069e86eccc629f45c7afd2c94e595..e1c4b25bf2ad62319e55ee258a6535cb47e24de1 100644 --- a/src/AnalyzeView/MAVLinkInspectorPage.qml +++ b/src/AnalyzeView/MAVLinkInspectorPage.qml @@ -22,11 +22,12 @@ Item { anchors.fill: parent anchors.margins: ScreenTools.defaultFontPixelWidth - property var curVehicle: controller ? controller.activeVehicle : null - property int curMessageIndex:0 - property var curMessage: curVehicle && curVehicle.messages.count ? curVehicle.messages.get(curMessageIndex) : null - property int curCompID: 0 - property bool selectionValid: false + property var curVehicle: controller ? controller.activeVehicle : null + property int curMessageIndex: 0 + property var curMessage: curVehicle && curVehicle.messages.count ? curVehicle.messages.get(curMessageIndex) : null + property int curCompID: 0 + property bool selectionValid: false + property real maxButtonWidth: 0 MAVLinkInspectorController { id: controller @@ -76,11 +77,13 @@ Item { anchors.topMargin: ScreenTools.defaultFontPixelHeight anchors.bottom: parent.bottom anchors.left: parent.left - width: buttonCol.width - contentWidth: buttonCol.width + width: maxButtonWidth + contentWidth: width contentHeight: buttonCol.height ColumnLayout { id: buttonCol + anchors.left: parent.left + anchors.right: parent.right spacing: ScreenTools.defaultFontPixelHeight * 0.25 Repeater { model: curVehicle ? curVehicle.messages : [] @@ -94,7 +97,7 @@ Item { selectionValid = true curMessageIndex = index } - Layout.minimumWidth: ScreenTools.defaultFontPixelWidth * 40 + Layout.fillWidth: true } } } diff --git a/src/QmlControls/MAVLinkMessageButton.qml b/src/QmlControls/MAVLinkMessageButton.qml index 9ae7d1eff10b501033cc4cf2bf09b98a005e56a2..8b9f543d626bd9e66e7626fd9f8f89eae98568fc 100644 --- a/src/QmlControls/MAVLinkMessageButton.qml +++ b/src/QmlControls/MAVLinkMessageButton.qml @@ -18,6 +18,12 @@ Button { id: control height: ScreenTools.defaultFontPixelHeight * 2 autoExclusive: true + leftPadding: ScreenTools.defaultFontPixelWidth + rightPadding: leftPadding + + property real _compIDWidth: ScreenTools.defaultFontPixelWidth * 3 + property real _hzWidth: ScreenTools.defaultFontPixelWidth * 7 + property real _nameWidth: nameLabel.contentWidth background: Rectangle { anchors.fill: parent @@ -28,20 +34,27 @@ Button { property int compID: 0 contentItem: RowLayout { + id: rowLayout + spacing: ScreenTools.defaultFontPixelWidth + QGCLabel { - text: control.compID - color: checked ? qgcPal.buttonHighlightText : qgcPal.buttonText - Layout.minimumWidth: ScreenTools.defaultFontPixelWidth * 3 + text: control.compID + color: checked ? qgcPal.buttonHighlightText : qgcPal.buttonText + Layout.minimumWidth: _compIDWidth } QGCLabel { - text: control.text - color: checked ? qgcPal.buttonHighlightText : qgcPal.buttonText - Layout.minimumWidth: ScreenTools.defaultFontPixelWidth * 28 + id: nameLabel + text: control.text + color: checked ? qgcPal.buttonHighlightText : qgcPal.buttonText + Layout.fillWidth: true } QGCLabel { - color: checked ? qgcPal.buttonHighlightText : qgcPal.buttonText - text: messageHz.toFixed(1) + 'Hz' - Layout.alignment: Qt.AlignRight + color: checked ? qgcPal.buttonHighlightText : qgcPal.buttonText + text: messageHz.toFixed(1) + 'Hz' + horizontalAlignment: Text.AlignRight + Layout.minimumWidth: _hzWidth } } + + Component.onCompleted: maxButtonWidth = Math.max(maxButtonWidth, _compIDWidth + _hzWidth + _nameWidth + (rowLayout.spacing * 2) + (control.leftPadding * 2)) }