38 lines
1.1 KiB
QML
38 lines
1.1 KiB
QML
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)
|
|
}
|
|
}
|
|
|
|
}
|