diff --git a/src/Menu.cpp b/src/Menu.cpp index 6839755..d52e410 100644 --- a/src/Menu.cpp +++ b/src/Menu.cpp @@ -3,6 +3,8 @@ #include "eventActions.h" #include "helper.h" +#include + Menu::Menu(Framebuffer *p_framebuffer, ShaderProgram *p_shaderProgram) : framebuffer(p_framebuffer), shaderProgram(p_shaderProgram) { @@ -18,7 +20,7 @@ Menu::~Menu() } } -Screen *Menu::getScreenByName(const char* unique_name) +Screen *Menu::getScreenByName(const std::string& unique_name) { for (auto it = screens.begin(); it != screens.end(); it++) { if((*it)->getUniqueName() == unique_name) { @@ -33,7 +35,7 @@ Screen *Menu::getActiveScreen() return activeScreen; } -void Menu::showScreenByName(const char *unique_name) +void Menu::showScreenByName (const std::string& unique_name) { auto it = screens.begin(); for (; it != screens.end(); it++) { diff --git a/src/Menu.h b/src/Menu.h index a2dc29e..f61bba1 100644 --- a/src/Menu.h +++ b/src/Menu.h @@ -13,8 +13,8 @@ public: Menu(Framebuffer *p_framebuffer, ShaderProgram *p_shaderProgram); ~Menu(); - Screen *getScreenByName(const char *unique_name); - void showScreenByName(const char *unique_name); + Screen *getScreenByName(const std::string& unique_name); + void showScreenByName(const std::string& unique_name); Screen *getActiveScreen(); void writeWindowActions(bool *windowActionRegister); diff --git a/src/Screen.cpp b/src/Screen.cpp index b1a9103..26b5947 100644 --- a/src/Screen.cpp +++ b/src/Screen.cpp @@ -22,7 +22,7 @@ Screen::~Screen() } } -std::string Screen::getUniqueName() +const std::string& Screen::getUniqueName() { return unique_name; } diff --git a/src/Screen.h b/src/Screen.h index 451fdf2..31d00bb 100644 --- a/src/Screen.h +++ b/src/Screen.h @@ -15,7 +15,7 @@ public: void addWidget(Widget *widget); void draw(); - std::string getUniqueName(); + const std::string& getUniqueName(); std::vector getWidgets(); Widget *getWidgetByName(const char* name);