Tag UI - actually more of a box at the moment
This commit is contained in:
parent
81f3114cb2
commit
7e3d45bbfb
@ -71,7 +71,8 @@ GameController::GameController():
|
|||||||
renderOptions(NULL),
|
renderOptions(NULL),
|
||||||
loginWindow(NULL),
|
loginWindow(NULL),
|
||||||
ssave(NULL),
|
ssave(NULL),
|
||||||
console(NULL)
|
console(NULL),
|
||||||
|
tagsWindow(NULL)
|
||||||
{
|
{
|
||||||
gameView = new GameView();
|
gameView = new GameView();
|
||||||
gameModel = new GameModel();
|
gameModel = new GameModel();
|
||||||
@ -99,6 +100,10 @@ GameController::~GameController()
|
|||||||
{
|
{
|
||||||
delete loginWindow;
|
delete loginWindow;
|
||||||
}
|
}
|
||||||
|
if(tagsWindow)
|
||||||
|
{
|
||||||
|
delete tagsWindow;
|
||||||
|
}
|
||||||
if(console)
|
if(console)
|
||||||
{
|
{
|
||||||
delete console;
|
delete console;
|
||||||
@ -333,7 +338,8 @@ void GameController::OpenLogin()
|
|||||||
|
|
||||||
void GameController::OpenTags()
|
void GameController::OpenTags()
|
||||||
{
|
{
|
||||||
//TODO: Implement
|
tagsWindow = new TagsController(NULL);
|
||||||
|
ui::Engine::Ref().ShowWindow(tagsWindow->GetView());
|
||||||
}
|
}
|
||||||
|
|
||||||
void GameController::OpenDisplayOptions()
|
void GameController::OpenDisplayOptions()
|
||||||
|
@ -10,6 +10,7 @@
|
|||||||
#include "render/RenderController.h"
|
#include "render/RenderController.h"
|
||||||
#include "login/LoginController.h"
|
#include "login/LoginController.h"
|
||||||
#include "ssave/SSaveController.h"
|
#include "ssave/SSaveController.h"
|
||||||
|
#include "tags/TagsController.h"
|
||||||
#include "console/ConsoleController.h"
|
#include "console/ConsoleController.h"
|
||||||
//#include "cat/TPTScriptInterface.h"
|
//#include "cat/TPTScriptInterface.h"
|
||||||
#include "cat/LuaScriptInterface.h"
|
#include "cat/LuaScriptInterface.h"
|
||||||
@ -32,6 +33,7 @@ private:
|
|||||||
LoginController * loginWindow;
|
LoginController * loginWindow;
|
||||||
SSaveController * ssave;
|
SSaveController * ssave;
|
||||||
ConsoleController * console;
|
ConsoleController * console;
|
||||||
|
TagsController * tagsWindow;
|
||||||
CommandInterface * commandInterface;
|
CommandInterface * commandInterface;
|
||||||
public:
|
public:
|
||||||
class LoginCallback;
|
class LoginCallback;
|
||||||
|
37
src/tags/TagsController.cpp
Normal file
37
src/tags/TagsController.cpp
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
/*
|
||||||
|
* TagsController.cpp
|
||||||
|
*
|
||||||
|
* Created on: Mar 5, 2012
|
||||||
|
* Author: Simon
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "TagsController.h"
|
||||||
|
#include "interface/Engine.h"
|
||||||
|
|
||||||
|
#include "TagsModel.h"
|
||||||
|
#include "TagsView.h"
|
||||||
|
|
||||||
|
TagsController::TagsController(ControllerCallback * callback):
|
||||||
|
HasDone(false)
|
||||||
|
{
|
||||||
|
tagsModel = new TagsModel();
|
||||||
|
tagsView = new TagsView();
|
||||||
|
tagsView->AttachController(this);
|
||||||
|
tagsModel->AddObserver(tagsView);
|
||||||
|
|
||||||
|
this->callback = callback;
|
||||||
|
}
|
||||||
|
|
||||||
|
void TagsController::Exit()
|
||||||
|
{
|
||||||
|
if(ui::Engine::Ref().GetWindow() == tagsView)
|
||||||
|
ui::Engine::Ref().CloseWindow();
|
||||||
|
if(callback)
|
||||||
|
callback->ControllerExit();
|
||||||
|
HasDone = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
TagsController::~TagsController() {
|
||||||
|
// TODO Auto-generated destructor stub
|
||||||
|
}
|
||||||
|
|
28
src/tags/TagsController.h
Normal file
28
src/tags/TagsController.h
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
/*
|
||||||
|
* TagsController.h
|
||||||
|
*
|
||||||
|
* Created on: Mar 5, 2012
|
||||||
|
* Author: Simon
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef TAGSCONTROLLER_H_
|
||||||
|
#define TAGSCONTROLLER_H_
|
||||||
|
|
||||||
|
#include "Controller.h"
|
||||||
|
#include "TagsView.h"
|
||||||
|
|
||||||
|
class TagsView;
|
||||||
|
class TagsModel;
|
||||||
|
class TagsController {
|
||||||
|
ControllerCallback * callback;
|
||||||
|
TagsView * tagsView;
|
||||||
|
TagsModel * tagsModel;
|
||||||
|
public:
|
||||||
|
bool HasDone;
|
||||||
|
TagsController(ControllerCallback * callback);
|
||||||
|
TagsView * GetView() {return tagsView;}
|
||||||
|
void Exit();
|
||||||
|
virtual ~TagsController();
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif /* TAGSCONTROLLER_H_ */
|
23
src/tags/TagsModel.cpp
Normal file
23
src/tags/TagsModel.cpp
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
/*
|
||||||
|
* TagsModel.cpp
|
||||||
|
*
|
||||||
|
* Created on: Mar 5, 2012
|
||||||
|
* Author: Simon
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "TagsModel.h"
|
||||||
|
|
||||||
|
TagsModel::TagsModel() {
|
||||||
|
// TODO Auto-generated constructor stub
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
void TagsModel::AddObserver(TagsView * observer)
|
||||||
|
{
|
||||||
|
observers.push_back(observer);
|
||||||
|
}
|
||||||
|
|
||||||
|
TagsModel::~TagsModel() {
|
||||||
|
// TODO Auto-generated destructor stub
|
||||||
|
}
|
||||||
|
|
22
src/tags/TagsModel.h
Normal file
22
src/tags/TagsModel.h
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
/*
|
||||||
|
* TagsModel.h
|
||||||
|
*
|
||||||
|
* Created on: Mar 5, 2012
|
||||||
|
* Author: Simon
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef TAGSMODEL_H_
|
||||||
|
#define TAGSMODEL_H_
|
||||||
|
|
||||||
|
#include <vector>
|
||||||
|
|
||||||
|
class TagsView;
|
||||||
|
class TagsModel {
|
||||||
|
std::vector<TagsView*> observers;
|
||||||
|
public:
|
||||||
|
TagsModel();
|
||||||
|
void AddObserver(TagsView * observer);
|
||||||
|
virtual ~TagsModel();
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif /* TAGSMODEL_H_ */
|
29
src/tags/TagsView.cpp
Normal file
29
src/tags/TagsView.cpp
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
/*
|
||||||
|
* TagsView.cpp
|
||||||
|
*
|
||||||
|
* Created on: Mar 5, 2012
|
||||||
|
* Author: Simon
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "TagsView.h"
|
||||||
|
|
||||||
|
#include "TagsController.h"
|
||||||
|
#include "TagsModel.h"
|
||||||
|
|
||||||
|
TagsView::TagsView():
|
||||||
|
ui::Window(ui::Point(-1, -1), ui::Point(200, 300)){
|
||||||
|
// TODO Auto-generated constructor stub
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
void TagsView::OnDraw()
|
||||||
|
{
|
||||||
|
Graphics * g = ui::Engine::Ref().g;
|
||||||
|
g->clearrect(Position.X-2, Position.Y-2, Size.X+3, Size.Y+3);
|
||||||
|
g->drawrect(Position.X, Position.Y, Size.X, Size.Y, 255, 255, 255, 255);
|
||||||
|
}
|
||||||
|
|
||||||
|
TagsView::~TagsView() {
|
||||||
|
// TODO Auto-generated destructor stub
|
||||||
|
}
|
||||||
|
|
24
src/tags/TagsView.h
Normal file
24
src/tags/TagsView.h
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
/*
|
||||||
|
* TagsView.h
|
||||||
|
*
|
||||||
|
* Created on: Mar 5, 2012
|
||||||
|
* Author: Simon
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef TAGSVIEW_H_
|
||||||
|
#define TAGSVIEW_H_
|
||||||
|
|
||||||
|
#include "interface/Window.h"
|
||||||
|
|
||||||
|
class TagsController;
|
||||||
|
class TagsModel;
|
||||||
|
class TagsView: public ui::Window {
|
||||||
|
TagsController * c;
|
||||||
|
public:
|
||||||
|
TagsView();
|
||||||
|
virtual void OnDraw();
|
||||||
|
void AttachController(TagsController * c_) { c = c_; };
|
||||||
|
virtual ~TagsView();
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif /* TAGSVIEW_H_ */
|
Reference in New Issue
Block a user