Commit fc7ee56d authored by DonLakeFlyer's avatar DonLakeFlyer

parent 0c6b6556
......@@ -61,8 +61,6 @@ SetupPage {
property real _margins: ScreenTools.defaultFontPixelHeight
property bool _showIcon: !ScreenTools.isTinyScreen
ExclusiveGroup { id: fenceActionRadioGroup }
Column {
spacing: _margins / 2
......
......@@ -59,10 +59,6 @@ SetupPage {
property bool _loadComplete: false
ExclusiveGroup { id: fenceActionRadioGroup }
ExclusiveGroup { id: landLoiterRadioGroup }
ExclusiveGroup { id: returnAltRadioGroup }
Component.onCompleted: {
// We use QtCharts only on Desktop platforms
showAdvanced = !ScreenTools.isMobile
......
......@@ -34,14 +34,12 @@ SetupPage {
property real _margins: ScreenTools.defaultFontPixelHeight
ExclusiveGroup { id: buttonGroup }
Row {
spacing: _margins
QGCButton {
id: atcButton
text: qsTr("Attitude Controller Parameters")
exclusiveGroup: buttonGroup
autoExclusive: true
checked: true
onClicked: checked = true
}
......@@ -49,14 +47,14 @@ SetupPage {
QGCButton {
id: posButton
text: qsTr("Position Controller Parameters")
exclusiveGroup: buttonGroup
autoExclusive: true
onClicked: checked = true
}
QGCButton {
id: navButton
text: qsTr("Waypoint navigation parameters")
exclusiveGroup: buttonGroup
autoExclusive: true
onClicked: checked = true
}
}
......
......@@ -28,10 +28,6 @@ Column {
QGCPalette { id: qgcPal; colorGroupEnabled: true }
ExclusiveGroup {
id: cameraOrientationGroup
}
Column {
anchors.left: parent.left
anchors.right: parent.right
......
......@@ -188,8 +188,6 @@ Item {
}
}
ExclusiveGroup { id: buttonGroup }
Repeater {
model: categoryHeader.checked ? controller.getGroupsForCategory(category) : 0
......@@ -198,7 +196,7 @@ Item {
text: groupName
height: _rowHeight
checked: controller.currentGroup === text
exclusiveGroup: buttonGroup
autoExclusive: true
readonly property string groupName: modelData
......
import QtQuick 2.3
import QtQuick.Controls 1.2
import QtQuick.Controls.Styles 1.4
import QtQuick 2.3
import QtQuick.Controls 2.12
import QtQuick.Controls.Styles 1.4
import QGroundControl.Palette 1.0
import QGroundControl.ScreenTools 1.0
Button {
activeFocusOnPress: true
id: control
hoverEnabled: true
topPadding: _verticalPadding
bottomPadding: _verticalPadding
leftPadding: _horizontalPadding
rightPadding: _horizontalPadding
focusPolicy: Qt.ClickFocus
property bool primary: false ///< primary button for a group of buttons
property real pointSize: ScreenTools.defaultFontPointSize ///< Point size for button text
property bool showBorder: _qgcPal.globalTheme === QGCPalette.Light
property bool showBorder: qgcPal.globalTheme === QGCPalette.Light
property bool iconLeft: false
property real backRadius: 0
property real heightFactor: 0.5
property string iconSource
property var _qgcPal: QGCPalette { colorGroupEnabled: enabled }
property bool _showHighlight: (pressed | hovered | checked) && !__forceHoverOff
property bool _showHighlight: pressed | hovered | checked
// This fixes the issue with button hover where if a Button is near the edge oa QQuickWidget you can
// move the mouse fast enough such that the MouseArea does not trigger an onExited. This is turn
// cause the hover property to not be cleared correctly.
property bool __forceHoverOff: false
property int __lastGlobalMouseX: 0
property int __lastGlobalMouseY: 0
property int _horizontalPadding: ScreenTools.defaultFontPixelWidth
property int _verticalPadding: Math.round(ScreenTools.defaultFontPixelHeight * heightFactor)
Connections {
target: __behavior
onMouseXChanged: {
__lastGlobalMouseX = ScreenTools.mouseX()
__lastGlobalMouseY = ScreenTools.mouseY()
}
onMouseYChanged: {
__lastGlobalMouseX = ScreenTools.mouseX()
__lastGlobalMouseY = ScreenTools.mouseY()
}
onEntered: { __forceHoverOff = false; hoverTimer.start() }
onExited: { __forceHoverOff = false; hoverTimer.stop() }
}
QGCPalette { id: qgcPal; colorGroupEnabled: enabled }
Timer {
id: hoverTimer
interval: 250
repeat: true
onTriggered: {
__forceHoverOff = (__lastGlobalMouseX !== ScreenTools.mouseX() || __lastGlobalMouseY !== ScreenTools.mouseY());
}
background: Rectangle {
id: backRect
implicitWidth: ScreenTools.implicitButtonWidth
implicitHeight: ScreenTools.implicitButtonHeight
radius: backRadius
border.width: showBorder ? 1 : 0
border.color: qgcPal.buttonText
color: _showHighlight ?
qgcPal.buttonHighlight :
(primary ? qgcPal.primaryButton : qgcPal.button)
}
style: ButtonStyle {
/*! The padding between the background and the label components. */
padding {
top: _verticalPadding
bottom: _verticalPadding
left: _horizontalPadding
right: _horizontalPadding
}
/*! This defines the background of the button. */
background: Rectangle {
id: backRect
implicitWidth: ScreenTools.implicitButtonWidth
implicitHeight: ScreenTools.implicitButtonHeight
radius: backRadius
border.width: showBorder ? 1 : 0
border.color: _qgcPal.buttonText
color: _showHighlight ?
control._qgcPal.buttonHighlight :
(primary ? control._qgcPal.primaryButton : control._qgcPal.button)
}
/*! This defines the label of the button. */
label: Item {
implicitWidth: text.implicitWidth + icon.width
implicitHeight: text.implicitHeight
baselineOffset: text.y + text.baselineOffset
contentItem: Item {
implicitWidth: text.implicitWidth + icon.width
implicitHeight: text.implicitHeight
baselineOffset: text.y + text.baselineOffset
QGCColoredImage {
id: icon
source: control.iconSource
height: source === "" ? 0 : text.height
width: height
color: text.color
fillMode: Image.PreserveAspectFit
sourceSize.height: height
anchors.left: control.iconLeft ? parent.left : undefined
anchors.leftMargin: control.iconLeft ? ScreenTools.defaultFontPixelWidth : undefined
anchors.right: !control.iconLeft ? parent.right : undefined
anchors.rightMargin: !control.iconLeft ? ScreenTools.defaultFontPixelWidth : undefined
anchors.verticalCenter: parent.verticalCenter
}
QGCColoredImage {
id: icon
source: control.iconSource
height: source === "" ? 0 : text.height
width: height
color: text.color
fillMode: Image.PreserveAspectFit
sourceSize.height: height
anchors.left: control.iconLeft ? parent.left : undefined
anchors.leftMargin: control.iconLeft ? ScreenTools.defaultFontPixelWidth : undefined
anchors.right: !control.iconLeft ? parent.right : undefined
anchors.rightMargin: !control.iconLeft ? ScreenTools.defaultFontPixelWidth : undefined
anchors.verticalCenter: parent.verticalCenter
}
Text {
id: text
anchors.centerIn: parent
antialiasing: true
text: control.text
font.pointSize: pointSize
font.family: ScreenTools.normalFontFamily
color: _showHighlight ?
control._qgcPal.buttonHighlightText :
(primary ? control._qgcPal.primaryButtonText : control._qgcPal.buttonText)
}
}
Text {
id: text
anchors.centerIn: parent
antialiasing: true
text: control.text
font.pointSize: pointSize
font.family: ScreenTools.normalFontFamily
color: _showHighlight ?
qgcPal.buttonHighlightText :
(primary ? qgcPal.primaryButtonText : qgcPal.buttonText)
}
}
}
......@@ -49,8 +49,6 @@ Rectangle {
flickableDirection: Flickable.VerticalFlick
clip: true
ExclusiveGroup { id: panelActionGroup }
ColumnLayout {
id: buttonColumn
spacing: _verticalMargin
......@@ -62,7 +60,7 @@ Rectangle {
QGCButton {
height: _buttonHeight
text: modelData.title
exclusiveGroup: panelActionGroup
autoExclusive: true
Layout.fillWidth: true
onClicked: {
......
......@@ -25,7 +25,6 @@ Column {
function saveSettings() {
// No need
}
ExclusiveGroup { id: linkGroup }
Row {
spacing: ScreenTools.defaultFontPixelWidth
QGCLabel {
......@@ -79,10 +78,10 @@ Column {
model: subEditConfig && subEditConfig.linkType === LinkConfiguration.TypeBluetooth ? subEditConfig.nameList : ""
delegate:
QGCButton {
text: modelData
width: _secondColumn
text: modelData
width: _secondColumn
anchors.leftMargin: ScreenTools.defaultFontPixelWidth * 2
exclusiveGroup: linkGroup
autoExclusive: true
onClicked: {
checked = true
if(subEditConfig && modelData !== "")
......
......@@ -27,8 +27,6 @@ Rectangle {
property int _firstColumn: ScreenTools.defaultFontPixelWidth * 12
property int _secondColumn: ScreenTools.defaultFontPixelWidth * 30
ExclusiveGroup { id: linkGroup }
QGCPalette {
id: qgcPal
colorGroupEnabled: enabled
......@@ -65,7 +63,7 @@ Rectangle {
anchors.horizontalCenter: settingsColumn.horizontalCenter
width: _linkRoot.width * 0.5
text: object.name
exclusiveGroup: linkGroup
autoExclusive: true
visible: !object.dynamic
onClicked: {
checked = true
......
......@@ -28,8 +28,6 @@ Column {
property string _currentHost: ""
ExclusiveGroup { id: linkGroup }
Row {
spacing: ScreenTools.defaultFontPixelWidth
QGCLabel {
......@@ -81,10 +79,10 @@ Column {
model: subEditConfig && subEditConfig.linkType === LinkConfiguration.TypeUdp ? subEditConfig.hostList : ""
delegate:
QGCButton {
text: modelData
width: _secondColumn
text: modelData
width: _secondColumn
anchors.leftMargin: ScreenTools.defaultFontPixelWidth * 2
exclusiveGroup: linkGroup
autoExclusive: true
onClicked: {
checked = true
_udpSetting._currentHost = modelData
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment