Introduce Menu class
This commit is contained in:
@@ -1,17 +1,34 @@
|
||||
#include "Screen.h"
|
||||
|
||||
Screen::Screen(Framebuffer *framebuffer, ShaderProgram *shaderProgram) :
|
||||
framebuffer(framebuffer), shaderProgram(shaderProgram)
|
||||
Screen::Screen(screenType p_type, Framebuffer *framebuffer, ShaderProgram *shaderProgram) :
|
||||
type(p_type), framebuffer(framebuffer), shaderProgram(shaderProgram)
|
||||
{
|
||||
|
||||
switch(type) {
|
||||
case loadingScreen: {
|
||||
Texture *temp_loadingScreenTex = new Texture("res/textures/loading.png", textureType::texture_diffuse);
|
||||
textures.push_back(temp_loadingScreenTex);
|
||||
Widget *temp_loadingScreenWidget = new Widget(temp_loadingScreenTex, 0.f, 0.f, 1.f, 1.f);
|
||||
widgets.push_back(temp_loadingScreenWidget);
|
||||
break;
|
||||
}
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
Screen::~Screen()
|
||||
{
|
||||
|
||||
// Iterate over Widgets and Textures to delete all of them
|
||||
for(auto it = widgets.begin(); it != widgets.end(); it++) {
|
||||
delete *it;
|
||||
}
|
||||
for(auto it = textures.begin(); it != textures.end(); it++) {
|
||||
delete *it;
|
||||
}
|
||||
}
|
||||
|
||||
void Screen::addWidget(Widget* widget)
|
||||
void Screen::addWidget(Widget *widget)
|
||||
{
|
||||
widgets.push_back(widget);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user