#pragma once #include #include "GuiButton.h" #include "structs.h" #include "Texture.h" #include "../TextureManager.h" class Screen { public: Screen() = default; Screen(const std::string& filePath, Vector2f pos, Vector2f size, TextureManager* manager); Screen(Screen& other) = delete; Screen& operator=(Screen& other) = delete; Screen(Screen&& other) = delete; Screen& operator=(Screen&& other) = delete; virtual ~Screen(); void AddElement(GuiElement* element); virtual void Update(float elapsedSecs); virtual void Draw() const; private: Vector2f m_Position; Vector2f m_Size; Texture* m_Background{ nullptr }; std::vector m_Elements; };