From 97f58c467f41bc8501b20812321b4c323db115bc Mon Sep 17 00:00:00 2001 From: doitux Date: Tue, 2 Sep 2008 22:04:18 +0000 Subject: [PATCH] startwindow refactoring. BROKEN --- src/gui/qt/guiwrapper.cpp | 6 +----- src/gui/qt/guiwrapper.h | 3 ++- src/gui/qt/startwindow/startwindowimpl.cpp | 17 +++++++++++++---- src/gui/qt/startwindow/startwindowimpl.h | 3 ++- src/pokerth.cpp | 17 +++++++++-------- 5 files changed, 27 insertions(+), 19 deletions(-) diff --git a/src/gui/qt/guiwrapper.cpp b/src/gui/qt/guiwrapper.cpp index 806d7d89..40e4b2a5 100644 --- a/src/gui/qt/guiwrapper.cpp +++ b/src/gui/qt/guiwrapper.cpp @@ -29,17 +29,13 @@ using namespace std; -GuiWrapper::GuiWrapper(ConfigFile *c) : myLog(NULL), myW(NULL), myConfig(c) +GuiWrapper::GuiWrapper(ConfigFile *c, startWindowImpl *s) : myLog(NULL), myW(NULL), myConfig(c), myStartWindow(s) { myW = new gameTableImpl(myConfig); -// myW->show(); myLog = new Log(myW, myConfig); - myStartWindow = boost::shared_ptr(new startWindowImpl(myW, myConfig)); - myStartWindow->show(); - myW->setStartWindow(myStartWindow); } diff --git a/src/gui/qt/guiwrapper.h b/src/gui/qt/guiwrapper.h index 66ae72ed..ca0d40f5 100644 --- a/src/gui/qt/guiwrapper.h +++ b/src/gui/qt/guiwrapper.h @@ -31,10 +31,11 @@ class Log; class Chat; class ConfigFile; + class GuiWrapper : public GuiInterface { public: - GuiWrapper(ConfigFile*); + GuiWrapper(ConfigFile*, startWindowImpl*); ~GuiWrapper(); diff --git a/src/gui/qt/startwindow/startwindowimpl.cpp b/src/gui/qt/startwindow/startwindowimpl.cpp index 096613a8..8c97d9d0 100644 --- a/src/gui/qt/startwindow/startwindowimpl.cpp +++ b/src/gui/qt/startwindow/startwindowimpl.cpp @@ -25,6 +25,7 @@ #include "session.h" #include "game.h" +#include "guiwrapper.h" #include "configfile.h" #include "gametableimpl.h" @@ -43,11 +44,18 @@ #include "timeoutmsgboximpl.h" #include "lobbychat.h" - - -startWindowImpl::startWindowImpl(gameTableImpl *w, ConfigFile *c) - : myW(w), myConfig(c) +startWindowImpl::startWindowImpl(ConfigFile *c) + : myW(NULL), myConfig(c) { + + boost::shared_ptr myGuiInterface(new GuiWrapper(myConfig, this)); + { + boost::shared_ptr session(new Session(myGuiInterface.get(), myConfig)); + session->init(); // TODO handle error + myGuiInterface->setSession(session); + } + + // #ifdef __APPLE__ // setWindowModality(Qt::ApplicationModal); // setWindowFlags(Qt::WindowSystemMenuHint | Qt::CustomizeWindowHint | Qt::Dialog); @@ -123,6 +131,7 @@ startWindowImpl::startWindowImpl(gameTableImpl *w, ConfigFile *c) connect(this, SIGNAL(signalIrcError(int)), myGameLobbyDialog->getLobbyChat(), SLOT(chatError(int))); connect(this, SIGNAL(signalIrcServerError(int)), myGameLobbyDialog->getLobbyChat(), SLOT(chatServerError(int))); + this->show(); } diff --git a/src/gui/qt/startwindow/startwindowimpl.h b/src/gui/qt/startwindow/startwindowimpl.h index ada75bab..b5ba6b9a 100644 --- a/src/gui/qt/startwindow/startwindowimpl.h +++ b/src/gui/qt/startwindow/startwindowimpl.h @@ -25,6 +25,7 @@ #include "game_defs.h" class GuiInterface; +class GuiWrapper; class Session; class Game; @@ -46,7 +47,7 @@ class timeoutMsgBoxImpl; class startWindowImpl: public QMainWindow, public Ui::startWindow { Q_OBJECT public: - startWindowImpl(gameTableImpl *w = 0, ConfigFile *c =0); + startWindowImpl(ConfigFile *c =0); void setSession(boost::shared_ptr session) { mySession = session; } Session &getSession() { assert(mySession.get()); return *mySession; } diff --git a/src/pokerth.cpp b/src/pokerth.cpp index 32cd0c7f..2cacadd5 100755 --- a/src/pokerth.cpp +++ b/src/pokerth.cpp @@ -25,7 +25,7 @@ #endif #include "session.h" -#include "guiwrapper.h" +#include "startwindowimpl.h" #include "configfile.h" #include "startsplash.h" #include "game_defs.h" @@ -65,7 +65,7 @@ using namespace std; -class GuiWrapper; +class startWindowImpl; class Game; int main( int argc, char **argv ) @@ -133,12 +133,13 @@ int main( int argc, char **argv ) /////////////////////////////////////////////////// - boost::shared_ptr myGuiInterface(new GuiWrapper(myConfig)); - { - boost::shared_ptr session(new Session(myGuiInterface.get(), myConfig)); - session->init(); // TODO handle error - myGuiInterface->setSession(session); - } + boost::shared_ptr(new startWindowImpl(myConfig)); +// boost::shared_ptr myGuiInterface(new GuiWrapper(myConfig)); +// { +// boost::shared_ptr session(new Session(myGuiInterface.get(), myConfig)); +// session->init(); // TODO handle error +// myGuiInterface->setSession(session); +// } int retVal = a.exec();