start implementing chancelabel

This commit is contained in:
doitux
2008-10-13 20:03:56 +00:00
parent de53c89fca
commit 1962bfe925
6 changed files with 291 additions and 192 deletions
+177 -177
View File
@@ -1,27 +1,27 @@
# QMake pro-file for PokerTH game
isEmpty( PREFIX ) {
PREFIX=/usr
}
isEmpty( PREFIX ){
PREFIX =/usr
}
TEMPLATE = app
CODECFORSRC = UTF-8
#CONFIG += qt thread embed_manifest_exe exceptions rtti stl warn_on release
CONFIG += qt thread embed_manifest_exe exceptions rtti stl warn_on debug
#####Uncomment this for RELEASE
#QTPLUGIN += qjpeg qgif
UI_DIR = uics
MOC_DIR = mocs
OBJECTS_DIR = obj
DEFINES += ENABLE_IPV6
DEFINES += PREFIX=\"$${PREFIX}\"
TARGET = pokerth
RESOURCES = src/gui/qt/resources/pokerth.qrc
INCLUDEPATH += . \
src \
src/engine \
@@ -58,7 +58,7 @@ INCLUDEPATH += . \
src/gui/qt/gamelobbydialog \
src/gui/qt/gamelobbydialog/lobbychat \
src/gui/qt/timeoutmsgbox
DEPENDPATH += . \
src \
src/config \
@@ -97,7 +97,7 @@ DEPENDPATH += . \
src/gui/qt/gamelobbydialog \
src/gui/qt/gamelobbydialog/lobbychat \
src/gui/qt/timeoutmsgbox
# Input
HEADERS += \
src/game.h \
@@ -184,8 +184,9 @@ HEADERS += \
src/gui/qttoolsinterface.h \
src/gui/qt/qttools/qttoolswrapper.h \
src/gui/qt/qttools/qthelper/qthelper.h \
src/gui/generic/serverguiwrapper.h
src/gui/generic/serverguiwrapper.h \
src/gui/qt/gametable/mychancelabel.h
FORMS += \
src/gui/qt/gametable.ui \
src/gui/qt/aboutpokerth.ui \
@@ -203,7 +204,7 @@ FORMS += \
src/gui/qt/gamelobbydialog.ui \
src/gui/qt/mymessagedialog.ui \
src/gui/qt/manualblindsorderdialog.ui
SOURCES += \
src/pokerth.cpp \
src/gui/qt/chattools/chattools.cpp \
@@ -243,8 +244,9 @@ SOURCES += \
src/gui/qt/gamelobbydialog/lobbychat/lobbychat.cpp \
src/gui/qt/timeoutmsgbox/timeoutmsgboximpl.cpp \
src/net/common/net_helper_client.cpp \
src/core/common/loghelper_client.cpp
src/core/common/loghelper_client.cpp \
src/gui/qt/gametable/mychancelabel.cpp
TRANSLATIONS = \
ts/pokerth_bg.ts \
ts/pokerth_de.ts \
@@ -264,163 +266,161 @@ TRANSLATIONS = \
ts/pokerth_zhcn.ts \
ts/pokerth_fi.ts \
ts/pokerth_START_HERE.ts
win32{
DEFINES += CURL_STATICLIB
DEPENDPATH += src/net/win32/ src/core/win32
INCLUDEPATH += ../boost/ ../SDL/include ../SDL_mixer
INCLUDEPATH += ../SDL/include/SDL ../SDL_mixer/include ../GnuTLS/include ../curl/include ../zlib
LIBPATH += ../boost/stage/lib ../GnuTLS/lib ../curl/lib ../zlib
LIBS += -lpokerth_lib
win32-msvc2005{
LIBPATH += Release/lib ../SDL/VisualC/SDL/Release ../SDL/VisualC/SDLmain/Release ../SDL_mixer/VisualC/Release
#LIBPATH += Debug/lib ../SDL/VisualC/SDL/Debug ../SDL/VisualC/SDLmain/Debug ../SDL_mixer/VisualC/Debug
LIBS += -llibgnutls-openssl -llibgcrypt
LIBS += -llibcurl
}
win32-g++{
#LIBPATH += Release/lib
LIBPATH += Debug/lib
LIBPATH += ../SDL/lib ../SDL_mixer/lib
LIBS += -lgnutls-openssl -lgnutls -lgcrypt -ltasn1 -lgpg-error
LIBS += -lcurl
LIBS += -lz
LIBS += -llibboost_thread-mgw34-mt-1_36
LIBS += -llibboost_filesystem-mgw34-mt-1_36
LIBS += -llibboost_system-mgw34-mt-1_36
LIBS += -llibboost_iostreams-mgw34-mt-1_36
LIBS += -llibboost_zlib-mgw34-mt-1_36
}
LIBS += -lgdi32 -lcomdlg32 -loleaut32 -limm32 -lwinmm -lwinspool -lole32 -luuid -luser32 -lmsimg32 -lshell32 -lkernel32 -lws2_32 -ladvapi32 -lsdl -lsdlmain -lsdl_mixer -lwldap32
RC_FILE = pokerth.rc
}
!win32{
DEPENDPATH += src/net/linux/ src/core/linux
}
unix{
# workaround for problems with boost_filesystem exceptions
QMAKE_LFLAGS += -no_dead_strip_inits_and_terms
}
unix: !mac{
##### My release static build options
#QMAKE_CXXFLAGS += -ffunction-sections -fdata-sections
#QMAKE_LFLAGS += -Wl,--gc-sections
LIBPATH += lib
LIB_DIRS = $${PREFIX}/lib $${PREFIX}/lib64
BOOST_FS = boost_filesystem boost_filesystem-mt
BOOST_THREAD = boost_thread boost_thread-mt
BOOST_IOSTREAMS = boost_iostreams boost_iostreams-mt
for(dir, LIB_DIRS) {
exists($$dir) {
for(lib, BOOST_THREAD) {
exists($${dir}/lib$${lib}.so*) {
message("Found $$lib")
BOOST_THREAD = -l$$lib
}
}
for(lib, BOOST_FS) {
exists($${dir}/lib$${lib}.so*) {
message("Found $$lib")
BOOST_FS = -l$$lib
}
}
for(lib, BOOST_IOSTREAMS) {
exists($${dir}/lib$${lib}.so*) {
message("Found $$lib")
BOOST_IOSTREAMS = -l$$lib
}
}
}
}
BOOST_LIBS = $$BOOST_THREAD $$BOOST_FS $$BOOST_IOSTREAMS
!count(BOOST_LIBS, 3) {
error("could not locate required library: \
libboost (version >= 1.34.1) --> http://www.boost.org/")
}
if ($$system(sdl-config --version)) {
error("Could not determine if required library is installed: \
libSDL_mixer, libSDL --> http://www.libsdl.org/")
}
UNAME = $$system(uname -s)
BSD = $$find(UNAME, "BSD")
LIBS += -lpokerth_lib
LIBS += $$BOOST_LIBS
LIBS += -lSDL_mixer -lcurl
!isEmpty( BSD ) {
LIBS += -lcrypto
} else {
LIBS += -lgnutls-openssl -lgcrypt
}
TARGETDEPS += ./lib/libpokerth_lib.a
##### My release static libs
#LIBS += -lgcrypt_static -lgpg-error_static -lgnutls-openssl_static -lgnutls_static -lSDL_mixer_static -lSDL -lmikmod -lcurl
#### INSTALL ####
binary.path += $${PREFIX}/bin/
binary.files += pokerth
data.path += $${PREFIX}/share/pokerth/data/
data.files += data/*
pixmap.path += $${PREFIX}/share/pixmaps/
pixmap.files += pokerth.png
desktop.path += $${PREFIX}/share/applications/
desktop.files += pokerth.desktop
INSTALLS += binary data pixmap desktop
}
mac{
# make it universal
CONFIG += x86
CONFIG += ppc
QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.3
# for universal-compilation on PPC-Mac uncomment the following line
# on Intel-Mac you have to comment this line out or build will fail.
# QMAKE_MAC_SDK=/Developer/SDKs/MacOSX10.4u.sdk/
LIBPATH += lib
LIBS += -lpokerth_lib
# Qt static (path is standard for self-compiling qt)
#LIBS += /usr/local/Trolltech/Qt-4.2.3/lib/libQtCore.a
#LIBS += /usr/local/Trolltech/Qt-4.2.3/lib/libQtGui.a
# QT dynamic linked framework (see also mac_post_make.sh)
LIBS += -framework QtCore
LIBS += -framework QtGui
# SDL and SDL_mixer come as frameworks
LIBS += -framework SDL
LIBS += -framework SDL_mixer
# standard path for darwinports
# make sure you have a universal version of boost
LIBS += /usr/local/lib/libboost_thread-mt-1_35.a
LIBS += /usr/local/lib/libboost_filesystem-mt-1_35.a
LIBS += /usr/local/lib/libboost_system-mt-1_35.a
LIBS += /usr/local/lib/libboost_iostreams-mt-1_35.a
# libraries installed on every mac
LIBS += -lcrypto -lssl -lz -lcurl -framework Carbon
# set the application icon
RC_FILE = pokerth.icns
LIBPATH += /Developer/SDKs/MacOSX10.4u.sdk/usr/lib
INCLUDEPATH += /Developer/SDKs/MacOSX10.4u.sdk/usr/include/
INCLUDEPATH += /Library/Frameworks/SDL.framework/Headers
INCLUDEPATH += /Library/Frameworks/SDL_mixer.framework/Headers
}
win32 {
DEFINES += CURL_STATICLIB
DEPENDPATH += src/net/win32/ src/core/win32
INCLUDEPATH += ../boost/ ../SDL/include ../SDL_mixer
INCLUDEPATH += ../SDL/include/SDL ../SDL_mixer/include ../GnuTLS/include ../curl/include ../zlib
LIBPATH += ../boost/stage/lib ../GnuTLS/lib ../curl/lib ../zlib
LIBS += -lpokerth_lib
win32-msvc2005 {
LIBPATH += Release/lib ../SDL/VisualC/SDL/Release ../SDL/VisualC/SDLmain/Release ../SDL_mixer/VisualC/Release
#LIBPATH += Debug/lib ../SDL/VisualC/SDL/Debug ../SDL/VisualC/SDLmain/Debug ../SDL_mixer/VisualC/Debug
LIBS += -llibgnutls-openssl -llibgcrypt
LIBS += -llibcurl
}
win32-g++ {
#LIBPATH += Release/lib
LIBPATH += Debug/lib
LIBPATH += ../SDL/lib ../SDL_mixer/lib
LIBS += -lgnutls-openssl -lgnutls -lgcrypt -ltasn1 -lgpg-error
LIBS += -lcurl
LIBS += -lz
LIBS += -llibboost_thread-mgw34-mt-1_36
LIBS += -llibboost_filesystem-mgw34-mt-1_36
LIBS += -llibboost_system-mgw34-mt-1_36
LIBS += -llibboost_iostreams-mgw34-mt-1_36
LIBS += -llibboost_zlib-mgw34-mt-1_36
}
LIBS += -lgdi32 -lcomdlg32 -loleaut32 -limm32 -lwinmm -lwinspool -lole32 -luuid -luser32 -lmsimg32 -lshell32 -lkernel32 -lws2_32 -ladvapi32 -lsdl -lsdlmain -lsdl_mixer -lwldap32
RC_FILE = pokerth.rc
}
!win32 {
DEPENDPATH += src/net/linux/ src/core/linux
}
unix {
# workaround for problems with boost_filesystem exceptions
QMAKE_LFLAGS += -no_dead_strip_inits_and_terms
}
unix : !mac {
##### My release static build options
#QMAKE_CXXFLAGS += -ffunction-sections -fdata-sections
#QMAKE_LFLAGS += -Wl,--gc-sections
LIBPATH += lib
LIB_DIRS = $${PREFIX}/lib $${PREFIX}/lib64
BOOST_FS = boost_filesystem boost_filesystem-mt
BOOST_THREAD = boost_thread boost_thread-mt
BOOST_IOSTREAMS = boost_iostreams boost_iostreams-mt
for(dir, LIB_DIRS){
exists($$dir){
for(lib, BOOST_THREAD){
exists($${dir}/lib$${lib}.so*){
message("Found $$lib")
BOOST_THREAD = -l$$lib
}
}
for(lib, BOOST_FS){
exists($${dir}/lib$${lib}.so*){
message("Found $$lib")
BOOST_FS = -l$$lib
}
}
for(lib, BOOST_IOSTREAMS){
exists($${dir}/lib$${lib}.so*){
message("Found $$lib")
BOOST_IOSTREAMS = -l$$lib
}
}
}
}
BOOST_LIBS = $$BOOST_THREAD $$BOOST_FS $$BOOST_IOSTREAMS
!count(BOOST_LIBS, 3){
error( libboost (version >= 1.34.1) --> http://www.boost.org/")
}
if($$system(sdl-config --version)){
error( libSDL_mixer, libSDL --> http://www.libsdl.org/")
}
UNAME = $$system(uname -s)
BSD = $$find(UNAME, "BSD")
LIBS += -lpokerth_lib
LIBS += $$BOOST_LIBS
LIBS += -lSDL_mixer -lcurl
!isEmpty( BSD ){
LIBS += -lcrypto
} else {
LIBS += -lgnutls-openssl -lgcrypt
}
TARGETDEPS += ./lib/libpokerth_lib.a
##### My release static libs
#LIBS += -lgcrypt_static -lgpg-error_static -lgnutls-openssl_static -lgnutls_static -lSDL_mixer_static -lSDL -lmikmod -lcurl
#### INSTALL ####
binary.path += $${PREFIX}/bin/
binary.files += pokerth
data.path += $${PREFIX}/share/pokerth/data/
data.files += data/*
pixmap.path += $${PREFIX}/share/pixmaps/
pixmap.files += pokerth.png
desktop.path += $${PREFIX}/share/applications/
desktop.files += pokerth.desktop
INSTALLS += binary data pixmap desktop
}
mac {
# make it universal
CONFIG += x86
CONFIG += ppc
QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.3
# for universal-compilation on PPC-Mac uncomment the following line
# on Intel-Mac you have to comment this line out or build will fail.
# QMAKE_MAC_SDK=/Developer/SDKs/MacOSX10.4u.sdk/
LIBPATH += lib
LIBS += -lpokerth_lib
# Qt static (path is standard for self-compiling qt)
#LIBS += /usr/local/Trolltech/Qt-4.2.3/lib/libQtCore.a
#LIBS += /usr/local/Trolltech/Qt-4.2.3/lib/libQtGui.a
# QT dynamic linked framework (see also mac_post_make.sh)
LIBS += -framework QtCore
LIBS += -framework QtGui
# SDL and SDL_mixer come as frameworks
LIBS += -framework SDL
LIBS += -framework SDL_mixer
# standard path for darwinports
# make sure you have a universal version of boost
LIBS += /usr/local/lib/libboost_thread-mt-1_35.a
LIBS += /usr/local/lib/libboost_filesystem-mt-1_35.a
LIBS += /usr/local/lib/libboost_system-mt-1_35.a
LIBS += /usr/local/lib/libboost_iostreams-mt-1_35.a
# libraries installed on every mac
LIBS += -lcrypto -lssl -lz -lcurl -framework Carbon
# set the application icon
RC_FILE = pokerth.icns
LIBPATH += /Developer/SDKs/MacOSX10.4u.sdk/usr/lib
INCLUDEPATH += /Developer/SDKs/MacOSX10.4u.sdk/usr/include/
INCLUDEPATH += /Library/Frameworks/SDL.framework/Headers
INCLUDEPATH += /Library/Frameworks/SDL_mixer.framework/Headers
}
+33 -1
View File
@@ -1836,7 +1836,7 @@
</item>
</layout>
</item>
<item row="3" column="0" >
<item row="4" column="0" >
<spacer name="verticalSpacer" >
<property name="orientation" >
<enum>Qt::Vertical</enum>
@@ -1849,6 +1849,13 @@
</property>
</spacer>
</item>
<item row="3" column="0" >
<widget class="QLabel" name="label_votesMonitor" >
<property name="text" >
<string/>
</property>
</widget>
</item>
</layout>
</widget>
</widget>
@@ -2645,6 +2652,26 @@
</item>
</layout>
</widget>
<widget class="QWidget" name="tab_Chance" >
<attribute name="title" >
<string>Chance</string>
</attribute>
<layout class="QGridLayout" name="gridLayout_2" >
<property name="margin" >
<number>2</number>
</property>
<property name="spacing" >
<number>0</number>
</property>
<item row="0" column="0" >
<widget class="MyChanceLable" name="label" >
<property name="text" >
<string/>
</property>
</widget>
</item>
</layout>
</widget>
</widget>
</item>
<item row="1" column="0" >
@@ -3116,6 +3143,11 @@
<extends>QLabel</extends>
<header>myavatarlabel.h</header>
</customwidget>
<customwidget>
<class>MyChanceLable</class>
<extends>QLabel</extends>
<header>mychancelable.h</header>
</customwidget>
</customwidgets>
<resources/>
<connections>
+15 -14
View File
@@ -27,6 +27,7 @@
#include "mycardspixmaplabel.h"
#include "mysetlabel.h"
#include "myavatarlabel.h"
#include "mychancelabel.h"
#include "log.h"
#include "chat.h"
@@ -398,6 +399,7 @@ gameTableImpl::gameTableImpl(ConfigFile *c, QMainWindow *parent)
label_timeout->setStyleSheet("QLabel { color: #99D500;}");
label_kickVoteTimeout->setStyleSheet("QLabel { color: #99D500;}");
label_kickUser->setStyleSheet("QLabel { color: #99D500;}");
label_votesMonitor->setStyleSheet("QLabel { color: #99D500;}");
statusbar->setStyleSheet(" QStatusBar { "+ font1String +" font-size: 12px; color: #B7FF00; }");
@@ -2651,7 +2653,9 @@ void gameTableImpl::keyPressEvent ( QKeyEvent * event ) {
}
else { keyUpDownChatCounter = 0; }
//TESTING UNIT
// if (event->key() == Qt::Key_M) { startVoteOnKick(3,60); }
// if (event->key() == Qt::Key_N) { endVoteOnKick(); }
}
void gameTableImpl::changePlayingMode() {
@@ -2686,14 +2690,6 @@ bool gameTableImpl::eventFilter(QObject *obj, QEvent *event)
myChat->nickAutoCompletition();
return true;
}
else if (event->type() == QEvent::KeyPress && keyEvent->key() == Qt::Key_M) { //TESTING UNIT
startVoteOnKick(3,60);
return true;
}
else if (event->type() == QEvent::KeyPress && keyEvent->key() == Qt::Key_N) { //TESTING UNIT
stopVoteOnKickTimeout();
return true;
}
else if (event->type() == QEvent::Close) {
event->ignore();
closeGameTable();
@@ -2833,7 +2829,7 @@ void gameTableImpl::localGameModification() {
void gameTableImpl::networkGameModification() {
if(tabWidget_Left->widget(1) != tab_Chat)
tabWidget_Left->insertTab(1, tab_Chat, QString(tr(" Chat "))); /*TODO text abgeschnitten --> stylesheets*/
tabWidget_Left->insertTab(1, tab_Chat, QString(tr("Chat"))); /*TODO text abgeschnitten --> stylesheets*/
tabWidget_Left->removeTab(2);
@@ -3082,9 +3078,10 @@ void gameTableImpl::startVoteOnKick(int playerId, int timeoutSec)
tabWidget_Left->setCurrentIndex(2);
PlayerInfo info(myStartWindow->getSession()->getClientPlayerInfo(playerId));
label_kickUser->setText(tr("Do you want to kick %1 \nfrom this game?").arg(QString::fromUtf8(info.playerName.c_str())));
label_kickUser->setText(tr("Do you want to kick <b>%1</b> \nfrom this game?").arg(QString::fromUtf8(info.playerName.c_str())));
voteOnKickTimeoutSecs = timeoutSec;
playerAboutToKickId = playerId;
startVoteOnKickTimeout();
}
@@ -3092,8 +3089,7 @@ void gameTableImpl::endVoteOnKick()
{
stopVoteOnKickTimeout();
tabWidget_Left->removeTab(2);
tabWidget_Left->setCurrentIndex(1);
// tabWidget_Left->setCurrentIndex(1);
}
void gameTableImpl::voteOnKickYes()
@@ -3119,7 +3115,12 @@ void gameTableImpl::stopVoteOnKickTimeout()
void gameTableImpl::nextVoteOnKickTimeoutAnimationFrame()
{
qDebug() << voteOnKickTimeoutSecs-voteOnKickRealTimer.elapsed().total_seconds();
label_kickVoteTimeout->setText(tr("%1 secs left").arg(voteOnKickTimeoutSecs-voteOnKickRealTimer.elapsed().total_seconds()));
}
void gameTableImpl::refreshVotesMonitor()
{
PlayerInfo info(myStartWindow->getSession()->getClientPlayerInfo(playerAboutToKickId));
label_votesMonitor->setText(tr("Player <b>%1</b> has %2 votes against him.").arg(QString::fromUtf8(info.playerName.c_str())));
}
+3
View File
@@ -286,6 +286,7 @@ public slots:
void startVoteOnKickTimeout();
void stopVoteOnKickTimeout();
void nextVoteOnKickTimeoutAnimationFrame();
void refreshVotesMonitor();
private:
@@ -402,7 +403,9 @@ private:
int keyUpDownChatCounter;
int myLastPreActionBetValue;
int voteOnKickTimeoutSecs;
int playerAboutToKickId;
// StyleSheetReader *myStyleSheetReader;
friend class GuiWrapper;
+24
View File
@@ -0,0 +1,24 @@
//
// C++ Implementation: mycardspixmaplabel
//
// Description:
//
//
// Author: FThauer FHammer <f.thauer@web.de>, (C) 2007
//
// Copyright: See COPYING file that comes with this distribution
//
//
#include "mychancelabel.h"
#include "gametableimpl.h"
using namespace std;
MyChanceLabel::MyChanceLabel(QWidget* parent)
: QLabel(parent) {
}
MyChanceLabel::~MyChanceLabel()
{
}
+39
View File
@@ -0,0 +1,39 @@
//
// C++ Interface: mycardspixmaplabel
//
// Description:
//
//
// Author: FThauer FHammer <f.thauer@web.de>, (C) 2007
//
// Copyright: See COPYING file that comes with this distribution
//
//
#ifndef MYCHANCELABEL_H
#define MYCHANCELABEL_H
#include <iostream>
#include <QtGui>
#include <QtCore>
class gameTableImpl;
class MyChanceLabel : public QLabel
{
Q_OBJECT
public:
MyChanceLabel(QWidget*);
~MyChanceLabel();
void setMyW ( gameTableImpl* theValue ) { myW = theValue; }
private:
gameTableImpl *myW;
};
#endif