import QtQuick import QtQuick.Controls.Basic import QtQuick.Controls.impl // Needed for features like the Control.blend() function import DesignSystem Button { id: control font.family: Fonts.dotrice font.bold: true implicitWidth: control.text !== "" ? Math.max(implicitBackgroundWidth + leftInset + rightInset, implicitContentWidth + leftPadding + rightPadding) : Math.min(implicitBackgroundWidth + leftInset + rightInset, implicitContentWidth + leftPadding + rightPadding) implicitHeight: Math.min(implicitBackgroundHeight + topInset + bottomInset, implicitContentHeight + topPadding + bottomPadding) required property string source property bool useOriginalColor: false // Shows the highlight background even when not pressed property bool showBackground: false icon.source: control.source icon.width: 20 icon.height: 20 icon.color: useOriginalColor ? "transparent" : Theme.foreground background: Rectangle { // NOTE: copied from ~/Qt/6.8.3/macos/qml/QtQuick/Controls/Basic/Button.qml implicitWidth: 100 implicitHeight: 40 visible: !control.flat || control.down || control.checked || control.highlighted color: control.down || control.showBackground ? Theme.highlight : "transparent" border.width: 0 // custom radius: Theme.radius } }