From 29b5bafe16ba82773da97c77951309d585bc9a6b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=A6=8C=EA=A6=AB=EA=A6=B6=EA=A6=8F=EA=A7=80=EA=A6=A6?= =?UTF-8?q?=EA=A6=BF=EA=A6=A7=EA=A6=AE=EA=A6=91=EA=A6=A9=EA=A6=AD=EA=A7=80?= Date: Mon, 13 Feb 2023 20:41:27 +0800 Subject: Shorten names Use something like import "qeduport" as Eduport --- CardDetail.ui.qml | 126 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 126 insertions(+) create mode 100644 CardDetail.ui.qml (limited to 'CardDetail.ui.qml') diff --git a/CardDetail.ui.qml b/CardDetail.ui.qml new file mode 100644 index 0000000..e7f4ffe --- /dev/null +++ b/CardDetail.ui.qml @@ -0,0 +1,126 @@ +import QtQuick 2.15 +import QtQuick.Controls 2.15 +import QtGraphicalEffects 1.15 + +Item { + property string imageSource: "https://eduport.webestica.com/assets/images/courses/4by3/01.jpg" + property alias buy: buy + + DropShadow { + source: rectangle + color: Qt.rgba(.113, .227, .325, .15) + anchors.fill: rectangle + } + + Rectangle { + id: rectangle + radius: 10 + anchors { + top: parent.top + topMargin: 25.6 + left: parent.left + leftMargin: 12.8 + right: parent.right + rightMargin: 12.8 + bottom: parent.bottom + } + + Image { + id: image + source: imageSource + sourceSize { + width: parent.width - 16 + height: parent.width * 3 / 4 + } + width: sourceSize.width + height: sourceSize.height + anchors { + top: parent.top + topMargin: 8 + horizontalCenter: parent.horizontalCenter + } + layer.enabled: true + layer.effect: OpacityMask { + maskSource: Rectangle { + width: image.width + height: image.height + radius: 10 + } + } + } + + Item { + id: body + width: parent.width - 16 + anchors { + top: image.bottom + horizontalCenter: parent.horizontalCenter + bottom: parent.bottom + bottomMargin: 8 + } + + Item { + id: info + width: parent.width - 32 + anchors { + top: parent.top + topMargin: 16 + horizontalCenter: parent.horizontalCenter + bottom: buttons.top + bottomMargin: 16 + } + } + + Item { + id: buttons + width: parent.width - 32 + height: 40.5 + anchors { + horizontalCenter: parent.horizontalCenter + bottom: parent.bottom + bottomMargin: 16 + } + + Button { + id: trial + text: qsTr("Free trial") + contentItem: Text { + text: trial.text + font.pixelSize: 15 + color: trial.down ? "#ffffff" + : "#066ac9" + } + background: Rectangle { + color: trial.down ? "#066ac9" + : "#ffffff" + border.color: "#066ac9" + radius: 8 + } + height: parent.height + anchors.left: parent.left + } + + Button { + id: buy + text: qsTr("Buy course") + contentItem: Text { + text: buy.text + font.pixelSize: 15 + color: "#ffffff" + } + background: Rectangle { + color: buy.down ? "#0aa073" + : "#0cbc87" + border.color: buy.down + ? "#0a966c" : "#0cbc87" + radius: 8 + } + height: parent.height + anchors.right: parent.right + } + } + } + } + + height: width * 1.2 +} -- cgit v1.2.3