From 27255cdb64b87c048fad70ca893f684cf61819a4 Mon Sep 17 00:00:00 2001 From: dec05eba Date: Thu, 1 Aug 2024 20:46:13 +0200 Subject: Change global widget container to page --- src/gui/WidgetContainer.cpp | 57 --------------------------------------------- 1 file changed, 57 deletions(-) delete mode 100644 src/gui/WidgetContainer.cpp (limited to 'src/gui/WidgetContainer.cpp') diff --git a/src/gui/WidgetContainer.cpp b/src/gui/WidgetContainer.cpp deleted file mode 100644 index 8824d1a..0000000 --- a/src/gui/WidgetContainer.cpp +++ /dev/null @@ -1,57 +0,0 @@ -#include "../../include/gui/WidgetContainer.hpp" -#include "../../include/gui/Widget.hpp" - -namespace gsr { - // static - WidgetContainer& WidgetContainer::get_instance() { - static WidgetContainer instance; - return instance; - } - - void WidgetContainer::add_widget(Widget *widget) { - // TODO: to_be_added, and remove in the draw loop - #ifdef DEBUG - for(Widget *existing_widget : widgets) { - if(existing_widget == widget) - return; - } - #endif - widgets.push_back(widget); - } - - void WidgetContainer::remove_widget(Widget *widget) { - // TODO: to_be_removed, and remove in draw loop - for(auto it = widgets.begin(), end = widgets.end(); it != end; ++it) { - if(*it == widget) { - widgets.erase(it); - return; - } - } - } - - void WidgetContainer::on_event(mgl::Event &event, mgl::Window &window) { - // Process widgets by visibility (backwards) - for(auto it = widgets.rbegin(), end = widgets.rend(); it != end; ++it) { - if(!(*it)->on_event(event, window)) - return; - } - } - - void WidgetContainer::draw(mgl::Window &window) { - for(auto it = widgets.begin(); it != widgets.end(); ++it) { - Widget *widget = *it; - if(widget->move_to_top) { - widget->move_to_top = false; - std::swap(*it, widgets.back()); - /*if(widgets.back() != widget) { - widgets.erase(it); - widgets.push_back(widget); - }*/ - } - } - - for(Widget *widget : widgets) { - widget->draw(window); - } - } -} \ No newline at end of file -- cgit v1.2.3