Better way of managing Controllers
This commit is contained in:
parent
c5cc1870f3
commit
b2d3257ae9
@ -19,8 +19,6 @@ public:
|
||||
virtual void ControllerExit()
|
||||
{
|
||||
cc->gameModel->SetUser(cc->loginWindow->GetUser());
|
||||
delete cc->loginWindow;
|
||||
cc->loginWindow = NULL;
|
||||
}
|
||||
};
|
||||
|
||||
@ -116,9 +114,14 @@ void GameController::DrawPoints(queue<ui::Point*> & pointQueue)
|
||||
}
|
||||
}
|
||||
|
||||
void GameController::Tick()
|
||||
void GameController::Update()
|
||||
{
|
||||
//gameModel->GetSimulation()->update_particles();
|
||||
if(loginWindow && loginWindow->HasExited)
|
||||
{
|
||||
delete loginWindow;
|
||||
loginWindow = NULL;
|
||||
}
|
||||
}
|
||||
|
||||
void GameController::SetPaused(bool pauseState)
|
||||
|
@ -31,7 +31,7 @@ public:
|
||||
GameView * GetView();
|
||||
void AdjustBrushSize(int direction);
|
||||
void DrawPoints(queue<ui::Point*> & pointQueue);
|
||||
void Tick();
|
||||
void Update();
|
||||
void SetPaused(bool pauseState);
|
||||
void SetPaused();
|
||||
void SetActiveMenu(Menu * menu);
|
||||
|
@ -414,7 +414,7 @@ void GameView::OnTick(float dt)
|
||||
{
|
||||
c->DrawPoints(pointQueue);
|
||||
}
|
||||
c->Tick();
|
||||
c->Update();
|
||||
}
|
||||
|
||||
void GameView::OnDraw()
|
||||
|
@ -8,7 +8,9 @@
|
||||
#include "LoginController.h"
|
||||
#include "client/User.h"
|
||||
|
||||
LoginController::LoginController(ControllerCallback * callback) {
|
||||
LoginController::LoginController(ControllerCallback * callback):
|
||||
HasExited(false)
|
||||
{
|
||||
// TODO Auto-generated constructor stub
|
||||
loginView = new LoginView();
|
||||
loginModel = new LoginModel();
|
||||
@ -38,6 +40,7 @@ void LoginController::Exit()
|
||||
}
|
||||
if(callback)
|
||||
callback->ControllerExit();
|
||||
HasExited = true;
|
||||
}
|
||||
|
||||
LoginController::~LoginController() {
|
||||
|
@ -23,6 +23,7 @@ class LoginController {
|
||||
LoginModel * loginModel;
|
||||
ControllerCallback * callback;
|
||||
public:
|
||||
bool HasExited;
|
||||
LoginController(ControllerCallback * callback = NULL);
|
||||
void Login(string username, string password);
|
||||
void Exit();
|
||||
|
Reference in New Issue
Block a user