summaryrefslogtreecommitdiff
path: root/DetailCardItem.ui.qml
blob: 068c3871be58b51de4c6f3b04e97026fbef49efb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
import QtQuick 2.15
import QtQuick.Controls 2.15
import QtGraphicalEffects 1.15

Item {
	property string imageSource: "Darapsa.svg"

	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
}