/* SPDX-FileCopyrightText: 2020 Noah Davis * SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL */ import QtQuick import QtQuick.Templates as T import QtQuick.Controls as Controls import org.kde.kirigami as Kirigami import org.kde.breeze.impl as Impl T.RadioButton { id: control implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset, implicitContentWidth + leftPadding + rightPadding, implicitIndicatorWidth + leftPadding + rightPadding) implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset, implicitContentHeight + topPadding + bottomPadding, implicitIndicatorHeight + topPadding + bottomPadding) padding: Impl.Units.verySmallSpacing horizontalPadding: Kirigami.Units.mediumSpacing spacing: Kirigami.Units.mediumSpacing hoverEnabled: Qt.styleHints.useHoverEffects icon.width: Kirigami.Units.iconSizes.sizeForLabels icon.height: Kirigami.Units.iconSizes.sizeForLabels indicator: Impl.RadioIndicator { control: control } Kirigami.MnemonicData.enabled: control.enabled && control.visible Kirigami.MnemonicData.controlType: Kirigami.MnemonicData.ActionElement Kirigami.MnemonicData.label: control.text Shortcut { //in case of explicit & the button manages it by itself enabled: !(RegExp(/\&[^\&]/).test(control.text)) sequence: control.Kirigami.MnemonicData.sequence onActivated: control.checked = true } contentItem: Impl.InlineIconLabelContent { control: control text: control.Kirigami.MnemonicData.richTextLabel alignment: Qt.AlignLeft | Qt.AlignVCenter } }