26 lines
765 B
QML
26 lines
765 B
QML
|
import QtQuick
|
||
|
import Solitare
|
||
|
|
||
|
Item {
|
||
|
id: cardModel
|
||
|
width: 80
|
||
|
height: width * 1.4 // Maintian the aspect ratio of a playing card
|
||
|
|
||
|
required property PlayingCard card
|
||
|
required property bool isFaceDown
|
||
|
property string backStyle: "red"
|
||
|
signal clicked
|
||
|
|
||
|
Image {
|
||
|
id: cardImage
|
||
|
anchors.fill: parent
|
||
|
source: cardModel.isFaceDown ? "qrc:/img/playing_cards/backs/" + cardModel.backStyle + ".svg" : cardModel.card ? "qrc:/img/playing_cards/fronts/" + cardModel.card.suitString + "_" + cardModel.card.valueString + ".svg" : "qrc:/img/playing_cards/backs/blue.svg"
|
||
|
fillMode: Image.PreserveAspectFit
|
||
|
|
||
|
MouseArea {
|
||
|
anchors.fill: parent
|
||
|
onClicked: cardModel.clicked()
|
||
|
}
|
||
|
}
|
||
|
}
|