Files
qt-creator/share/qtcreator/qmldesigner/welcomepage/PushButton.ui.qml
Thomas Hartmann b47e074f62 QmlDesigner: Add QML source
This adds the QML source for the Qt Design Studio Welcome page.
The source code was private before.

Change-Id: I5dcb900ed9a17b1bc3bbcaf50f649ebeb61cc8bf
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2024-01-17 09:46:02 +00:00

109 lines
3.0 KiB
QML

// Copyright (C) 2024 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
import QtQuick
import QtQuick.Templates
import WelcomeScreen 1.0
Button {
id: control
implicitWidth: Math.max(
buttonBackground ? buttonBackground.implicitWidth : 0,
textItem.implicitWidth + leftPadding + rightPadding)
implicitHeight: Math.max(
buttonBackground ? buttonBackground.implicitHeight : 0,
textItem.implicitHeight + topPadding + bottomPadding)
leftPadding: 4
rightPadding: 4
text: "My Button"
state: "normal"
property alias fontpixelSize: textItem.font.pixelSize
property bool decorated: false
background: Rectangle {
id: buttonBackground
color: "#00000000"
implicitWidth: 100
implicitHeight: 40
opacity: buttonBackground.enabled ? 1 : 0.3
radius: 2
border.color: "#047eff"
anchors.fill: parent
}
contentItem: Text {
id: textItem
text: control.text
font.pixelSize: 18
opacity: textItem.enabled ? 1.0 : 0.3
color: Constants.currentGlobalText
horizontalAlignment: Text.AlignHCenter
verticalAlignment: Text.AlignVCenter
}
Rectangle {
id: decoration
width: 10
visible: control.decorated
color: Constants.currentBrand
border.color: Constants.currentBrand
anchors.right: parent.right
anchors.top: parent.top
anchors.bottom: parent.bottom
anchors.rightMargin: 1
anchors.bottomMargin: 1
anchors.topMargin: 1
}
states: [
State {
name: "normal"
when: !control.down && !control.hovered
PropertyChanges {
target: buttonBackground
color: Constants.currentPushButtonNormalBackground
border.color: Constants.currentPushButtonNormalOutline
}
PropertyChanges {
target: textItem
color: Constants.currentGlobalText
}
},
State {
name: "hover"
when: control.hovered && !control.down
PropertyChanges {
target: textItem
color: Constants.currentGlobalText
}
PropertyChanges {
target: buttonBackground
color: Constants.currentPushButtonHoverBackground
border.color: Constants.currentPushButtonHoverOutline
}
},
State {
name: "press"
when: control.down
PropertyChanges {
target: textItem
color: Constants.darkActiveGlobalText
}
PropertyChanges {
target: buttonBackground
color: Constants.currentBrand
border.color: "#00000000"
}
}
]
}