This commit is contained in:
doitux committed 2007-02-01 22:45:32 +00:00
1 parent 1a639b911b
commit a61787bc8e
114 files changed
+117 -3701

No files matched your search

File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
+260
View File
@@ -0,0 +1,260 @@
/***************************************************************************
* Copyright (C) 2006 by FThauer FHammer *
* f.thauer@web.de *
* *
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License, or *
* (at your option) any later version. *
* *
* This program is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
* GNU General Public License for more details. *
* *
* You should have received a copy of the GNU General Public License *
* along with this program; if not, write to the *
* Free Software Foundation, Inc., *
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
***************************************************************************/
#ifndef MAINWINDOWIMPL_H
#define MAINWINDOWIMPL_H
#include "ui_mainwindow.h"
#include <iostream>
#include <string>
#include <QtGui>
#include <QtCore>
class Game;
class Session;
class Log;
class ConfigFile;
class BoardInterface;
class HandInterface;
class PlayerInterface;
class MyCardsPixmapLabel;
class QColor;
class mainWindowImpl: public QMainWindow, public Ui::mainWindow {
Q_OBJECT
public:
mainWindowImpl(QMainWindow *parent = 0 );
void setGame(Game*);
void setHand(HandInterface*);
void setSession(Session*);
void setLog(Log*);
int getMaxQuantityPlayers() const { return maxQuantityPlayers; }
//refresh-Funktionen
void refreshSet();
void refreshButton();
void refreshPlayerName();
void refreshAction();
void refreshCash();
void refreshGroupbox();
void refreshAll();
void refreshChangePlayer();
void refreshPot();
// Karten-Funktionen
void dealHoleCards();
//Spieler-Funktionen
void meInAction();
void disableMyButtons();
void highlightRoundLabel(std::string);
void setSpeeds();
public slots:
void setGameSpeed(const int theValue) { guiGameSpeed = theValue; setSpeeds(); } // Achtung Faktor 10!!!
void callNewGameDialog() ;
void callAboutPokerthDialog();
void callSettingsDialog();
void myFold();
void myCheck();
void myCall();
void myBet();
void mySet();
void myRaise();
void myAllIn();
void dealFlopCards0();
void dealFlopCards1();
void dealFlopCards2();
void dealFlopCards3();
void dealFlopCards4();
void dealFlopCards5();
void dealFlopCards6();
void dealTurnCards0();
void dealTurnCards1();
void dealTurnCards2();
void dealRiverCards0();
void dealRiverCards1();
void dealRiverCards2();
void nextPlayerAnimation();
void preflopAnimation1();
void preflopAnimation1Action();
void preflopAnimation2();
void preflopAnimation2Action();
void flopAnimation1();
void flopAnimation1Action();
void flopAnimation2();
void flopAnimation2Action();
void turnAnimation1();
void turnAnimation1Action();
void turnAnimation2();
void turnAnimation2Action();
void riverAnimation1();
void riverAnimation1Action();
void riverAnimation2();
void riverAnimation2Action();
void postRiverAnimation1();
void postRiverAnimation1Action();
void postRiverRunAnimation1();
void postRiverRunAnimation2();
void postRiverRunAnimation3();
void postRiverRunAnimation4();
void postRiverRunAnimation5();
void postRiverRunAnimation6();
void flipHolecardsAllIn();
void handSwitchRounds();
void startNewHand();
void stopTimer();
void nextRoundCleanGui();
void userWidgetsBackgroudColor();
void breakButtonClicked();
void keyPressEvent ( QKeyEvent * event );
void switchToolBox();
void paintStartSplash();
private:
Game *actualGame;
HandInterface *actualHand;
Session *mySession;
Log *myLog;
ConfigFile *myConfig;
//MyPixmapCardsLabel
MyCardsPixmapLabel *pixmapLabel_cardBoard0;
MyCardsPixmapLabel *pixmapLabel_cardBoard1;
MyCardsPixmapLabel *pixmapLabel_cardBoard2;
MyCardsPixmapLabel *pixmapLabel_cardBoard3;
MyCardsPixmapLabel *pixmapLabel_cardBoard4;
MyCardsPixmapLabel *pixmapLabel_card0a;
MyCardsPixmapLabel *pixmapLabel_card0b;
MyCardsPixmapLabel *pixmapLabel_card1a;
MyCardsPixmapLabel *pixmapLabel_card1b;
MyCardsPixmapLabel *pixmapLabel_card2a;
MyCardsPixmapLabel *pixmapLabel_card2b;
MyCardsPixmapLabel *pixmapLabel_card3a;
MyCardsPixmapLabel *pixmapLabel_card3b;
MyCardsPixmapLabel *pixmapLabel_card4a;
MyCardsPixmapLabel *pixmapLabel_card4b;
//Timer
QTimer *potDistributeTimer;
QTimer *timer;
QTimer *dealFlopCards0Timer;
QTimer *dealFlopCards1Timer;
QTimer *dealFlopCards2Timer;
QTimer *dealFlopCards3Timer;
QTimer *dealFlopCards4Timer;
QTimer *dealFlopCards5Timer;
QTimer *dealFlopCards6Timer;
QTimer *dealTurnCards0Timer;
QTimer *dealTurnCards1Timer;
QTimer *dealTurnCards2Timer;
QTimer *dealRiverCards0Timer;
QTimer *dealRiverCards1Timer;
QTimer *dealRiverCards2Timer;
QTimer *nextPlayerAnimationTimer;
QTimer *preflopAnimation1Timer;
QTimer *preflopAnimation2Timer;
QTimer *flopAnimation1Timer;
QTimer *flopAnimation2Timer;
QTimer *turnAnimation1Timer;
QTimer *turnAnimation2Timer;
QTimer *riverAnimation1Timer;
QTimer *riverAnimation2Timer;
QTimer *postRiverAnimation1Timer;
QTimer *postRiverRunAnimation1Timer;
QTimer *postRiverRunAnimation2Timer;
QTimer *postRiverRunAnimation3Timer;
QTimer *postRiverRunAnimation5Timer;
QTimer *postRiverRunAnimation6Timer;
QWidget *userWidgetsArray[8];
QLabel *buttonLabelArray[5];
QLabel *cashLabelArray[5];
QLabel *cashTopLabelArray[5];
QLabel *setLabelArray[5];
QLabel *actionLabelArray[5];
QGroupBox *groupBoxArray[5];
MyCardsPixmapLabel *boardCardsArray[5];
MyCardsPixmapLabel *holeCardsArray[5][2];
QPixmap *flipside;
int maxQuantityPlayers;
int distributePotAnimCounter;
//Speed
int guiGameSpeed;
int gameSpeed;
int dealCardsSpeed;
int preDealCardsSpeed;
int postDealCardsSpeed;
int AllInDealCardsSpeed;
int postRiverRunAnimationSpeed;
int winnerBlinkSpeed;
int newRoundSpeed;
int nextPlayerSpeed1;
int nextPlayerSpeed2;
int nextPlayerSpeed3;
int preflopNextPlayerSpeed;
int nextOpponentSpeed;
bool debugMode;
bool breakAfterActualHand;
bool flipHolecardsAllInAlreadyDone;
QColor active;
QColor inactive;
QColor highlight;
};
#endif
@@ -0,0 +1,178 @@
//
// C++ Implementation: mycardspixmaplabel
//
// Description:
//
//
// Author: FThauer FHammer <f.thauer@web.de>, (C) 2007
//
// Copyright: See COPYING file that comes with this distribution
//
//
#include "mycardspixmaplabel.h"
using namespace std;
MyCardsPixmapLabel::MyCardsPixmapLabel(QFrame* parent)
: QLabel(parent)
{
fadeOutAction = FALSE;
flipCardsAction1 = FALSE;
flipCardsAction2 = FALSE;
// rotationIntervall = 0.03;
isFlipside = FALSE;
front = new QPixmap;
// flipside = new QPixmap;
fadeOutTimer = new QTimer;
connect(fadeOutTimer, SIGNAL(timeout()), this, SLOT(nextFadeOutFrame()));
flipCardsTimer = new QTimer;
connect(flipCardsTimer, SIGNAL(timeout()), this, SLOT(nextFlipCardsFrame()));
}
MyCardsPixmapLabel::~MyCardsPixmapLabel()
{
}
void MyCardsPixmapLabel::startFadeOut(int speed) {
frameOpacity = 0.0;
if(speed <= 4) { opacityRaiseIntervall = 0.01; }
if(speed > 4 && speed <= 7) { opacityRaiseIntervall = 0.02; }
if(speed > 7 && speed <= 10) { opacityRaiseIntervall = 0.04; }
if(speed != 11) {
fadeOutAction = TRUE;
frameOpacity = 0.0;
fadeOutTimer->start(40);
}
}
void MyCardsPixmapLabel::nextFadeOutFrame() {
if (frameOpacity < 0.65) {
frameOpacity += opacityRaiseIntervall;
update();
}
else {
fadeOutTimer->stop();
fadeOutAction = FALSE;
}
}
void MyCardsPixmapLabel::startFlipCards(int speed, QPixmap frontPix, QPixmap *flipsidePix) {
QLabel::setPixmap(frontPix);
frameFlipCardsAction1Size = 1.0;
frameFlipCardsAction2Size = 0.0;
*front = frontPix;
flipside = flipsidePix;
if(speed <= 4) { flipCardsScaleIntervall = 0.1; }
if(speed > 4 && speed <= 6) { flipCardsScaleIntervall = 0.20; }
if(speed > 6 && speed <= 8) { flipCardsScaleIntervall = 0.25; }
if(speed > 8 && speed <= 10) { flipCardsScaleIntervall = 0.5; }
//
if(speed != 11) {
flipCardsAction1 = TRUE;
flipCardsTimer->start(40);
}
}
void MyCardsPixmapLabel::nextFlipCardsFrame() {
if (frameFlipCardsAction1Size > 0.1 ) {
//erst flipside verkleinern
frameFlipCardsAction1Size -= flipCardsScaleIntervall;
update();
}
else {
if(flipCardsAction1) {
flipCardsAction1 = FALSE;
flipCardsAction2 = TRUE;
}
else {
//dann front vergrößern
if (frameFlipCardsAction2Size < 0.9 ) {
frameFlipCardsAction2Size += flipCardsScaleIntervall;
update();
}
else {
flipCardsAction2 = FALSE;
flipCardsTimer->stop();
}
}
}
}
void MyCardsPixmapLabel::setPixmap(const QPixmap &pic, const bool flipside) {
QLabel::setPixmap(pic);
isFlipside = flipside;
}
void MyCardsPixmapLabel::paintEvent(QPaintEvent * event) {
if (!(flipCardsAction1 || flipCardsAction2)) {
QLabel::paintEvent(event);
}
if (fadeOutAction) {
QPainter painter(this);
// painter.setPen(QColor(74,131,83));
painter.setBrush(QColor(74,131,83));
// painter.setBrush(palette().color(QPalette::Background));
// painter.setBrush(QColor(0,0,0));
painter.setOpacity(frameOpacity);
// painter.drawRect(this->geometry());
if(objectName()=="pixmapLabel_card0b" || objectName()=="pixmapLabel_card0a")
painter.drawRect(-1,-1,81,113);
else
painter.drawRect(-1,-1,58,81);
}
if (flipCardsAction1) {
QPainter painter2(this);
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);
}
if (flipCardsAction2) {
QPainter painter3(this);
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);
}
}
@@ -0,0 +1,69 @@
//
// C++ Interface: mycardspixmaplabel
//
// Description:
//
//
// Author: FThauer FHammer <f.thauer@web.de>, (C) 2007
//
// Copyright: See COPYING file that comes with this distribution
//
//
#ifndef MYCARDSPIXMAPLABEL_H
#define MYCARDSPIXMAPLABEL_H
#include <QtGui>
#include <QtCore>
#include <iostream>
class MyCardsPixmapLabel : public QLabel
{
Q_OBJECT
public:
MyCardsPixmapLabel(QFrame*);
~MyCardsPixmapLabel();
void setIsFlipside(bool theValue){ isFlipside = theValue;}
bool getIsFlipside() const{ return isFlipside;}
void setFadeOutAction(bool theValue) { fadeOutAction = theValue; }
bool getFadeOutAction() const { return fadeOutAction;}
void startFadeOut(int);
void startFlipCards(int, QPixmap, QPixmap*);
void paintEvent(QPaintEvent * event);
public slots:
void setPixmap ( const QPixmap &, const bool );
void nextFadeOutFrame();
void nextFlipCardsFrame();
private:
qreal frameOpacity;
qreal opacityRaiseIntervall;
qreal flipCardsScaleIntervall;
qreal frameFlipCardsAction1Size;
qreal frameFlipCardsAction2Size;
QTimer *fadeOutTimer;
QTimer *flipCardsTimer;
QPixmap *front;
QPixmap *flipside;
bool isFlipside;
bool fadeOutAction;
bool flipCardsAction1;
bool flipCardsAction2;
};
#endif