diff options
| author | Erik Prabowo Kamal <erik@darapsa.org> | 2025-12-12 22:03:27 +0800 |
|---|---|---|
| committer | Erik Prabowo Kamal <erik@darapsa.org> | 2025-12-12 22:03:27 +0800 |
| commit | d71942a538dd9fd9e335cd32639e78eb9aad90e1 (patch) | |
| tree | b10e734c67d09da6c1f105d9fd925be50dfbbddb /Course/Grid/Card.ui.qml | |
| parent | cd1e0f2af47b2be460e45b750788809eb252193a (diff) | |
Reimplement Qt5 OpacityMask using Qt6 MultiEffect
Remaining ones.
See 93b25dfa97494184493e02b75766e57bc6fe79bb
https://darapsa.org/qeduport.git/commit/?id=93b25dfa97494184493e02b75766e57bc6fe79bb
Diffstat (limited to 'Course/Grid/Card.ui.qml')
| -rw-r--r-- | Course/Grid/Card.ui.qml | 42 |
1 files changed, 18 insertions, 24 deletions
diff --git a/Course/Grid/Card.ui.qml b/Course/Grid/Card.ui.qml index dbc32ad..a70a05a 100644 --- a/Course/Grid/Card.ui.qml +++ b/Course/Grid/Card.ui.qml @@ -2,7 +2,6 @@ import QtQuick import QtQuick.Controls import QtQuick.Layouts import QtQuick.Effects -import Qt5Compat.GraphicalEffects Item { id: item1 @@ -24,35 +23,30 @@ Item { id: columnLayout anchors.fill: parent spacing: 0 - Rectangle { + Image { id: cardItemImage - radius: 8 Layout.fillHeight: true - Layout.preferredHeight: 255 Layout.fillWidth: true - Layout.preferredWidth: 300 - Image { - id: cardItemImageSource - source: "https://eduport.webestica.com/assets/images/courses/4by3/08.jpg" - fillMode: Image.PreserveAspectCrop - width: parent.width - height: parent.height - visible: false + source: "https://eduport.webestica.com/assets/images/courses/4by3/08.jpg" + sourceSize { + width: 300 + height: 255 } - OpacityMask { - id: cardItemImageMask - anchors.fill: cardItemImage - source: cardItemImageSource - maskSource: cardItemImage + fillMode: Image.PreserveAspectCrop + layer { + enabled: true + effect: MultiEffect { + maskEnabled: true + maskSource: maskRectangle + } } - Rectangle { - id: rectangle - width: cardItemImageMask.width - height: 5 - color: "#ffffff" - anchors.bottom: cardItemImageMask.bottom - anchors.bottomMargin: 0 + id: maskRectangle + width: cardItemImage.sourceSize.width + height: cardItemImage.sourceSize.height + radius: 8 + layer.enabled: true + visible: false } } ColumnLayout { |