2023-05-31 21:07:14 -04:00
|
|
|
import QtCore
|
|
|
|
import QtQuick
|
|
|
|
import QtQuick.Controls
|
|
|
|
import QtQuick.Controls.Basic
|
|
|
|
import Qt5Compat.GraphicalEffects
|
|
|
|
|
|
|
|
Button {
|
|
|
|
id: myButton
|
|
|
|
padding: 10
|
2023-06-13 20:08:27 -04:00
|
|
|
property bool toggled: false
|
2023-05-31 21:07:14 -04:00
|
|
|
property alias source: image.source
|
2023-07-06 10:53:43 -04:00
|
|
|
property alias fillMode: image.fillMode
|
2023-05-31 21:07:14 -04:00
|
|
|
contentItem: Text {
|
|
|
|
text: myButton.text
|
|
|
|
horizontalAlignment: Text.AlignHCenter
|
|
|
|
color: myButton.enabled ? theme.textColor : theme.mutedTextColor
|
2023-08-07 13:54:13 -04:00
|
|
|
font.pixelSize: theme.fontSizeLarge
|
2023-05-31 21:07:14 -04:00
|
|
|
Accessible.role: Accessible.Button
|
|
|
|
Accessible.name: text
|
|
|
|
}
|
|
|
|
|
|
|
|
background: Item {
|
|
|
|
anchors.fill: parent
|
|
|
|
Rectangle {
|
|
|
|
anchors.fill: parent
|
|
|
|
color: "transparent"
|
2023-06-13 20:08:27 -04:00
|
|
|
visible: myButton.toggled
|
2023-05-31 21:07:14 -04:00
|
|
|
border.color: theme.backgroundLightest
|
|
|
|
border.width: 1
|
|
|
|
radius: 10
|
|
|
|
}
|
|
|
|
Image {
|
|
|
|
id: image
|
|
|
|
anchors.centerIn: parent
|
|
|
|
mipmap: true
|
|
|
|
width: 30
|
|
|
|
height: 30
|
|
|
|
}
|
|
|
|
ColorOverlay {
|
|
|
|
anchors.fill: image
|
|
|
|
source: image
|
|
|
|
color: myButton.hovered ? theme.textColor : "transparent"
|
|
|
|
}
|
|
|
|
}
|
|
|
|
Accessible.role: Accessible.Button
|
|
|
|
Accessible.name: text
|
2023-08-07 13:54:13 -04:00
|
|
|
}
|