From 630b1f509f8f8f56fe7c6ed40db76abffbcf1063 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: Wed, 15 Feb 2023 11:01:10 +0800 Subject: Fix course detail fonts & buttons --- CourseDetailClassic.ui.qml | 119 +++++++++++++++++++++++++++++++++------------ 1 file changed, 87 insertions(+), 32 deletions(-) diff --git a/CourseDetailClassic.ui.qml b/CourseDetailClassic.ui.qml index f448672..79ec0e4 100644 --- a/CourseDetailClassic.ui.qml +++ b/CourseDetailClassic.ui.qml @@ -13,6 +13,11 @@ Flickable { property alias detailTime: time property alias detailTrial: trial property alias detailBuy: buy + property bool doesntEmbed: Qt.platform.os === "android" + || Qt.platform.os === "linux" + || Qt.platform.os === "osx" + || Qt.platform.os === "unix" + || Qt.platform.os === "windows" contentHeight: body.height ColumnLayout { @@ -28,6 +33,26 @@ Flickable { Layout.fillWidth: true } + FontLoader { + id: heebo + source: "Heebo/Heebo-Bold.ttf" + } + + FontLoader { + id: bold + source: doesntEmbed ? "" : "Roboto/Roboto-Bold.ttf" + } + + FontLoader { + id: medium + source: doesntEmbed ? "" : "Roboto/Roboto-Medium.ttf" + } + + FontLoader { + id: regular + source: doesntEmbed ? "" : "Roboto/Roboto-Regular.ttf" + } + Item { Layout.fillWidth: true implicitHeight: width * 1.2 @@ -90,36 +115,47 @@ Flickable { Label { id: price text: "$150" - font.pixelSize: 32 - font.family: "roboto" + font { + family: heebo.name + pointSize: 23 + } } Label { id: originalPrice text: "$350" color: "#4d000000" - font.pixelSize: 14 - font.strikeout: true - font.family: "roboto" + font { + family: doesntEmbed + ? "Roboto" + : regular.name + pointSize: 15 + strikeout: true + } } Rectangle { id: discountLabel implicitWidth: discount.width implicitHeight: discount.height - radius: 4 + radius: 6 color: "#fd7e14" Label { id: discount text: qsTr("60% off") - font.pixelSize: 12 - font.family: "roboto" + color: "white" + font { + family: doesntEmbed + ? "Roboto" + : regular.name + pointSize: 13.6 + } horizontalAlignment: Text.AlignHCenter verticalAlignment: Text.AlignVCenter - bottomPadding: 2 - topPadding: 2 - rightPadding: 8 - leftPadding: 8 + topPadding: 4.46 + leftPadding: 8.29 + rightPadding: 8.29 + bottomPadding: 4.46 } } } @@ -129,55 +165,74 @@ Flickable { Label { text: qsTr("5 days left at this price") - font.pixelSize: 14 - font.family: "roboto" color: "#d6293e" + font { + family: doesntEmbed + ? "Roboto" + : regular.name + pointSize: 15 + } } } } } RowLayout { - Layout.bottomMargin: 16 + Layout.topMargin: 16 Layout.fillWidth: true spacing: 16 + Button { id: trial text: qsTr("Free trial") - Layout.fillWidth: true + horizontalPadding: 16 + verticalPadding: 8 contentItem: Text { horizontalAlignment: Text.AlignHCenter text: trial.text - font.pixelSize: 14 - font.family: "roboto" - color: trial.down ? "#ffffff" - : "#066ac9" + color: trial.down ? "#ffffff" : "#066ac9" + font { + family: doesntEmbed + ? "Roboto" + : medium.name + weight: Font.Medium + pointSize: 15 + } } background: Rectangle { - color: trial.down ? "#066ac9" - : "#ffffff" - border.color: "#066ac9" - radius: 8 + color: trial.down ? "#066ac9" : "#ffffff" + radius: 5.2 + border { + color: "#066ac9" + width: 1 + } } } Button { id: buy text: qsTr("Buy course") - Layout.fillWidth: true + horizontalPadding: 16 + verticalPadding: 8 contentItem: Text { horizontalAlignment: Text.AlignHCenter text: buy.text - font.pixelSize: 14 - font.family: "roboto" color: "#ffffff" + font { + family: doesntEmbed + ? "Roboto" + : medium.name + weight: Font.Medium + pointSize: 15 + } } background: Rectangle { - color: buy.down ? "#0aa073" - : "#0cbc87" - border.color: buy.down - ? "#0a966c" : "#0cbc87" - radius: 8 + color: buy.down ? "#0aa073" : "#0cbc87" + radius: 5.2 + border { + color: buy.down ? "#0a966c" : "#0cbc87" + width: 1 + } } } } -- cgit v1.2.3