// cardDisplay.cpp
#include "CardsDisplay.h"
#include <QDataStream>
const int CardsDisplay::cardHeight = 243;
const int CardsDisplay::cardWidth = 150;
CardsDisplay::CardsDisplay(int n)
{
cardsLayout = new QBoxLayout(QBoxLayout::LeftToRight);
size = n;
readPics();
for (int i{}; i<size; i++)
{
QLabel* card = new QLabel();
card->setFixedSize(cardWidth,cardHeight);
card->setPixmap( pics[52].scaled(cardWidth,cardHeight) );
cardsLayout->addWidget(card);
cards.append(card);
}
cardsWidget.setLayout(cardsLayout);
}
void CardsDisplay::setCard(int pos, int num)
{
if (num >= pics.size() || pos >= size) return;
cards[pos]->setPixmap( pics[num].scaled(cardWidth,cardHeight) );
}
CardsDisplay::~CardsDisplay()
{
for (int i{}; i< size; i++)
delete cards[i];
}
void CardsDisplay::readPics()
{
QFile file("cardpics.dat");
file.open(QIODevice::ReadOnly);
QDataStream in(&file);
in >> pics;
}
void CardsDisplay::clear()
{
for (int i{}; i<size; i++)
cards[i]->setPixmap( pics[52].scaled(cardWidth,cardHeight) );
}