import "root:/modules/common" import "root:/modules/common/functions/color_utils.js" as ColorUtils import QtQuick import QtQuick.Controls import QtQuick.Layouts import Quickshell import Quickshell.Io /** * Material 3 dialog button. See https://m3.material.io/components/dialogs/overview */ RippleButton { id: button property string buttonText implicitHeight: 30 implicitWidth: buttonTextWidget.implicitWidth + 15 * 2 buttonRadius: Appearance?.rounding.full ?? 9999 property color colEnabled: Appearance?.colors.colPrimary property color colDisabled: Appearance?.m3colors.m3borderPrimary contentItem: StyledText { id: buttonTextWidget anchors.fill: parent anchors.leftMargin: 15 anchors.rightMargin: 15 text: buttonText horizontalAlignment: Text.AlignHCenter font.pixelSize: Appearance?.font.pixelSize.textBase ?? 12 color: button.enabled ? button.colEnabled : button.colDisabled Behavior on color { animation: Appearance.animation.elementMoveFast.colorAnimation.createObject(this) } } }