#pragma once

#include "GuiWidget.h"

#include <vector>
#include <memory>

namespace td {
namespace gui {

class GuiManager {
private:
    std::vector<std::shared_ptr<GuiWidget>> m_Widgets;
public:
    void renderWidgets() {
        for (auto widget : m_Widgets) {
            widget->render();
        }
    }

    void addWidgets(const std::shared_ptr<GuiWidget>& widget) {
        m_Widgets.push_back(std::move(widget));
    }
};

} // namespace gui
} // namespace td
