diff --git a/PowderToy++.files b/PowderToy++.files index 0827b342d..a6f35abef 100644 --- a/PowderToy++.files +++ b/PowderToy++.files @@ -132,4 +132,8 @@ C:/Users/Simon/Projects/FacialTurd-PowderToypp/src/Misc.cpp C:/Users/Simon/Projects/FacialTurd-PowderToypp/src/PowderToy.cpp C:/Users/Simon/Projects/FacialTurd-PowderToypp/src/Renderer.cpp C:/Users/Simon/Projects/FacialTurd-PowderToypp/src/Simulation.cpp -C:/Users/Simon/Projects/FacialTurd-PowderToypp/Changelog.txt \ No newline at end of file +C:/Users/Simon/Projects/FacialTurd-PowderToypp/Changelog.txt +src/interface/ControlFactory.cpp +includes/interface/ControlFactory.h +src/GameSession.cpp +includes/GameSession.h diff --git a/includes/GameSession.h b/includes/GameSession.h new file mode 100644 index 000000000..8417e0ca4 --- /dev/null +++ b/includes/GameSession.h @@ -0,0 +1,10 @@ +#ifndef GAMESESSION_H +#define GAMESESSION_H + +class GameSession +{ +public: + GameSession(); +}; + +#endif // GAMESESSION_H diff --git a/includes/interface/ControlFactory.h b/includes/interface/ControlFactory.h new file mode 100644 index 000000000..8bfd7806a --- /dev/null +++ b/includes/interface/ControlFactory.h @@ -0,0 +1,15 @@ +#ifndef CONTROLFACTORY_H +#define CONTROLFACTORY_H + +#include "Panel.h" +#include "Window.h" +#include "GameSession.h" + +class ControlFactory +{ +public: + static ui::Panel * MainMenu(GameSession * session, int x, int y, int width, int height); + +}; + +#endif // CONTROLFACTORY_H diff --git a/src/GameSession.cpp b/src/GameSession.cpp new file mode 100644 index 000000000..364f268e6 --- /dev/null +++ b/src/GameSession.cpp @@ -0,0 +1,6 @@ +#include "GameSession.h" + +GameSession::GameSession() +{ + //Boop +} diff --git a/src/PowderToy.cpp b/src/PowderToy.cpp index d634ccef2..973aaa365 100644 --- a/src/PowderToy.cpp +++ b/src/PowderToy.cpp @@ -10,6 +10,9 @@ #include "interface/Window.h" #include "interface/Button.h" #include "interface/Sandbox.h" +#include "interface/Panel.h" +#include "interface/ControlFactory.h" +#include "GameSession.h" SDL_Surface * SDLOpen() { @@ -45,11 +48,13 @@ int main(int argc, char * argv[]) //Simulation * sim = new Simulation(); //ren = new Renderer(g, sim); + GameSession * gameSession = new GameSession(); ui::Window * window = new ui::Window(); ui::Sandbox * sandbox = new ui::Sandbox(); ui::Button * button = new ui::Button(100, 100, 100, 100, "poP"); window->Add(sandbox); window->Add(button); + window->Add(ControlFactory::MainMenu(gameSession, 0, 0, 200, 200)); SDL_Event event; while(!SDLPoll(&event)) diff --git a/src/interface/ControlFactory.cpp b/src/interface/ControlFactory.cpp new file mode 100644 index 000000000..300ceba94 --- /dev/null +++ b/src/interface/ControlFactory.cpp @@ -0,0 +1,11 @@ +#include "interface/ControlFactory.h" +#include "interface/Button.h" +#include "interface/Panel.h" +#include "interface/Window.h" + +ui::Panel * ControlFactory::MainMenu(GameSession * session, int x, int y, int width, int height) +{ + ui::Panel * mainMenu = new ui::Panel(x, y, width, height); + //mainMenu->Add(new ui::Button(0, 0, 20, 20, "Turd")); + return mainMenu; +}