feat: add icon button
This commit is contained in:
@@ -0,0 +1,32 @@
|
||||
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: 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
|
||||
|
||||
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 ? Theme.card : "transparent"
|
||||
border.width: 0
|
||||
// custom
|
||||
radius: Theme.radius
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user