diff options
Diffstat (limited to 'desktop/Button.qml')
| -rw-r--r-- | desktop/Button.qml | 28 |
1 files changed, 21 insertions, 7 deletions
diff --git a/desktop/Button.qml b/desktop/Button.qml index 6a977fa..e1afb7a 100644 --- a/desktop/Button.qml +++ b/desktop/Button.qml @@ -15,14 +15,15 @@ Rectangle { id: btn property alias text: label.text property alias font: label.font + property string icon: "" property bool danger: false property bool enabled: true // The mouse event, for a caller that reads modifiers; a handler that // takes no argument ignores it. signal clicked(var mouse) - implicitWidth: label.implicitWidth + 22 - implicitHeight: label.implicitHeight + 12 + implicitWidth: content.implicitWidth + 22 + implicitHeight: content.implicitHeight + 12 radius: 7 opacity: enabled ? 1 : 0.4 color: area.pressed && enabled @@ -33,12 +34,25 @@ Rectangle { border.width: 1 border.color: Qt.alpha(danger ? Theme.red : Theme.text, 0.2) - Text { - id: label + Row { + id: content anchors.centerIn: parent - font { family: Theme.fontFamily; pixelSize: Theme.fontSize - 2 } - color: (area.pressed && btn.enabled) ? Theme.base - : danger ? Theme.red : Theme.text + spacing: 6 + + Text { + id: iconText + visible: btn.icon !== "" + text: btn.icon + color: label.color + font { family: Theme.iconFamily; pixelSize: label.font.pixelSize } + } + + Text { + id: label + font { family: Theme.fontFamily; pixelSize: Theme.fontSize - 2 } + color: (area.pressed && btn.enabled) ? Theme.base + : btn.danger ? Theme.red : Theme.text + } } MouseArea { |
