fix image distortion for card images after playing a while

This commit is contained in:
doitux
2007-11-08 11:45:24 +00:00
parent 0326c0be26
commit d0aa437dec
3 changed files with 30 additions and 37 deletions
+16 -16
View File
@@ -86,13 +86,12 @@ mainWindowImpl::mainWindowImpl(ConfigFile *c, QMainWindow *parent)
pixmapLabel_card0a->setMyW(this);
//Flipside festlegen;
flipside = new QPixmap(myAppDataPath +"gfx/cards/default/flipside.png");
if (myConfig->readConfigInt("FlipsideOwn") && myConfig->readConfigString("FlipsideOwnFile") != "") {
QPixmap tmpFlipside(QString::fromUtf8(myConfig->readConfigString("FlipsideOwnFile").c_str()));
flipside = new QPixmap(tmpFlipside.scaled(QSize(80, 111),Qt::IgnoreAspectRatio, Qt::SmoothTransformation));
flipside = new QPixmap(QString::fromUtf8(myConfig->readConfigString("FlipsideOwnFile").c_str()));
}
else {
flipside = new QPixmap(myAppDataPath +"gfx/cards/default/flipside.png");
}
else { flipside->load(myAppDataPath +"gfx/cards/default/flipside.png"); }
//Flipside Animation noch nicht erledigt
flipHolecardsAllInAlreadyDone = FALSE;
@@ -1019,11 +1018,11 @@ void mainWindowImpl::callSettingsDialog() {
//Flipside refresh
if (myConfig->readConfigInt("FlipsideOwn") && myConfig->readConfigString("FlipsideOwnFile") != "") {
QPixmap tmpFlipside(QString::fromUtf8(myConfig->readConfigString("FlipsideOwnFile").c_str()));
flipside = new QPixmap(tmpFlipside.scaled(QSize(57, 80)));
flipside = new QPixmap(QString::fromUtf8(myConfig->readConfigString("FlipsideOwnFile").c_str()));
}
else {
flipside = new QPixmap(myAppDataPath +"gfx/cards/default/flipside.png");
}
else { flipside->load(myAppDataPath +"gfx/cards/default/flipside.png"); }
if(mySession->getCurrentGame()) {
//blind buttons refresh
@@ -1639,7 +1638,7 @@ void mainWindowImpl::dealFlopCards4() {
//Config? mit oder ohne Eye-Candy?
if(myConfig->readConfigInt("ShowFlipCardsAnimation")) {
//mit Eye-Candy
boardCardsArray[0]->startFlipCards(guiGameSpeed, card, flipside);
boardCardsArray[0]->startFlipCards(guiGameSpeed, card, *flipside);
}
else {
//ohne Eye-Candy
@@ -1659,7 +1658,7 @@ void mainWindowImpl::dealFlopCards5() {
//Config? mit oder ohne Eye-Candy?
if(myConfig->readConfigInt("ShowFlipCardsAnimation")) {
//mit Eye-Candy
boardCardsArray[1]->startFlipCards(guiGameSpeed, card, flipside);
boardCardsArray[1]->startFlipCards(guiGameSpeed, card, *flipside);
}
else {
//ohne Eye-Candy
@@ -1679,7 +1678,7 @@ void mainWindowImpl::dealFlopCards6() {
//Config? mit oder ohne Eye-Candy?
if(myConfig->readConfigInt("ShowFlipCardsAnimation")) {
//mit Eye-Candy
boardCardsArray[2]->startFlipCards(guiGameSpeed, card, flipside);
boardCardsArray[2]->startFlipCards(guiGameSpeed, card, *flipside);
}
else {
//ohne Eye-Candy
@@ -1715,7 +1714,7 @@ void mainWindowImpl::dealTurnCards2() {
//Config? mit oder ohne Eye-Candy?
if(myConfig->readConfigInt("ShowFlipCardsAnimation")) {
//mit Eye-Candy
boardCardsArray[3]->startFlipCards(guiGameSpeed, card, flipside);
boardCardsArray[3]->startFlipCards(guiGameSpeed, card, *flipside);
}
else {
//ohne Eye-Candy
@@ -1739,6 +1738,7 @@ void mainWindowImpl::dealRiverCards0() { dealRiverCards0Timer->start(preDealCard
void mainWindowImpl::dealRiverCards1() {
boardCardsArray[4]->setPixmap(*flipside, TRUE);
// QTimer::singleShot(dealCardsSpeed, this, SLOT( dealRiverCards2() ));
dealRiverCards1Timer->start(dealCardsSpeed);
}
@@ -1754,7 +1754,7 @@ void mainWindowImpl::dealRiverCards2() {
//Config? mit oder ohne Eye-Candy?
if(myConfig->readConfigInt("ShowFlipCardsAnimation")) {
//mit Eye-Candy
boardCardsArray[4]->startFlipCards(guiGameSpeed, card, flipside);
boardCardsArray[4]->startFlipCards(guiGameSpeed, card, *flipside);
}
else {
//ohne Eye-Candy
@@ -2485,7 +2485,7 @@ void mainWindowImpl::postRiverRunAnimation2() {
if((*it_c)->getMyID() || ((*it_c)->getMyID()==0 && myConfig->readConfigInt("AntiPeekMode")) ) {
for(j=0; j<2; j++) {
holeCardsArray[(*it_c)->getMyID()][j]->startFlipCards(guiGameSpeed, QPixmap(myAppDataPath +"gfx/cards/default/"+QString::number(tempCardsIntArray[j], 10)+".png"), flipside);
holeCardsArray[(*it_c)->getMyID()][j]->startFlipCards(guiGameSpeed, QPixmap(myAppDataPath +"gfx/cards/default/"+QString::number(tempCardsIntArray[j], 10)+".png"), *flipside);
}
}
//set Player value (logging)
@@ -2828,7 +2828,7 @@ void mainWindowImpl::flipHolecardsAllIn() {
if((*it_c)->getMyAction() != PLAYER_ACTION_FOLD) {
if((*it_c)->getMyID() || ((*it_c)->getMyID()==0 && myConfig->readConfigInt("AntiPeekMode")) ) {
for(j=0; j<2; j++) {
holeCardsArray[(*it_c)->getMyID()][j]->startFlipCards(guiGameSpeed, QPixmap(myAppDataPath +"gfx/cards/default/"+QString::number(tempCardsIntArray[j], 10)+".png"), flipside);
holeCardsArray[(*it_c)->getMyID()][j]->startFlipCards(guiGameSpeed, QPixmap(myAppDataPath +"gfx/cards/default/"+QString::number(tempCardsIntArray[j], 10)+".png"), *flipside);
}
}
//set Player value (logging)
+10 -16
View File
@@ -29,10 +29,7 @@ MyCardsPixmapLabel::MyCardsPixmapLabel(QFrame* parent)
// rotationIntervall = 0.03;
isFlipside = FALSE;
front = new QPixmap;
flipside = new QPixmap;
fadeOutTimer = new QTimer;
connect(fadeOutTimer, SIGNAL(timeout()), this, SLOT(nextFadeOutFrame()));
flipCardsTimer = new QTimer;
@@ -78,7 +75,7 @@ void MyCardsPixmapLabel::nextFadeOutFrame() {
}
void MyCardsPixmapLabel::startFlipCards(int speed, QPixmap frontPix, QPixmap *flipsidePix) {
void MyCardsPixmapLabel::startFlipCards(int speed, const QPixmap &frontPix, const QPixmap &flipsidePix) {
stopFlipCards = FALSE;
@@ -87,11 +84,8 @@ void MyCardsPixmapLabel::startFlipCards(int speed, QPixmap frontPix, QPixmap *fl
frameFlipCardsAction1Size = 1.0;
frameFlipCardsAction2Size = 0.0;
*front = frontPix;
flipside = flipsidePix;
*flipside = flipside->scaled(width(), height(), Qt::IgnoreAspectRatio, Qt::SmoothTransformation);
*front = front->scaled(width(), height(), Qt::IgnoreAspectRatio, Qt::SmoothTransformation);
front = frontPix.scaled(width(), height(), Qt::IgnoreAspectRatio, Qt::SmoothTransformation);;
flipside = flipsidePix.scaled(width(), height(), Qt::IgnoreAspectRatio, Qt::SmoothTransformation);;
if(speed <= 4) { flipCardsScaleIntervall = 0.1; }
if(speed > 4 && speed <= 6) { flipCardsScaleIntervall = 0.20; }
@@ -152,7 +146,7 @@ void MyCardsPixmapLabel::setPixmap(const QPixmap &pic, const bool flipsideIs) {
void MyCardsPixmapLabel::setFrontPixmap ( const QPixmap &pic ) {
myHiddenFront = pic;
myHiddenFront = pic.scaled(width(), height(), Qt::IgnoreAspectRatio, Qt::SmoothTransformation);;
}
void MyCardsPixmapLabel::paintEvent(QPaintEvent * event) {
@@ -180,26 +174,26 @@ void MyCardsPixmapLabel::paintEvent(QPaintEvent * event) {
if (flipCardsAction1) {
QPainter painter2(this);
QPointF center(flipside->width()/2.0, flipside->height()/2.0);
QPointF center(flipside.width()/2.0, flipside.height()/2.0);
painter2.translate(center);
painter2.scale(frameFlipCardsAction1Size ,1);
painter2.translate(-center);
painter2.drawPixmap(0,0, *flipside);
painter2.drawPixmap(0,0, flipside);
}
if (flipCardsAction2) {
QPainter painter3(this);
QPointF center(front->width()/2.0, front->height()/2.0);
QPointF center(front.width()/2.0, front.height()/2.0);
painter3.translate(center);
painter3.scale(frameFlipCardsAction2Size ,1);
painter3.translate(-center);
painter3.drawPixmap(0,0, *front);
painter3.drawPixmap(0,0, front);
}
if (fastFlipCardsFront && !fadeOutAction && !flipCardsAction1 && !flipCardsAction2) {
if(objectName().contains("pixmapLabel_card0")) {
QPainter painter4(this);
painter4.drawPixmap(0,0, myHiddenFront.scaled(width(), height(), Qt::IgnoreAspectRatio, Qt::SmoothTransformation));
painter4.drawPixmap(0,0, myHiddenFront);
}
}
}
+4 -5
View File
@@ -36,14 +36,11 @@ public:
bool getFadeOutAction() const { return fadeOutAction;}
void startFadeOut(int);
void startFlipCards(int, QPixmap, QPixmap*);
void startFlipCards(int, const QPixmap & , const QPixmap &);
void stopFlipCardsAnimation();
void paintEvent(QPaintEvent * event);
QPixmap *front;
QPixmap *flipside;
signals:
void signalFastFlipCards(bool);
@@ -51,7 +48,7 @@ signals:
public slots:
void setPixmap ( const QPixmap &, const bool );
void setFrontPixmap ( const QPixmap & );
void setFrontPixmap ( const QPixmap &);
void nextFadeOutFrame();
void nextFlipCardsFrame();
@@ -86,6 +83,8 @@ private:
bool mousePress;
bool fastFlipCardsFront;
QPixmap front;
QPixmap flipside;
QPixmap myHiddenFront;
friend class mainWindowImpl;