#pragma once #include "../../Widgets/Widget.h" #include "../Engine/Geometry.h" namespace UI { // helper class for efficiently updating layout class DirtyManager { private: Widget* rootWidget = nullptr; public: DirtyManager() = default; explicit DirtyManager(Widget* root) : rootWidget(root) {} void SetRootWidget(Widget* root); // do we need to messure and arrange? void UpdateLayout(Size viewportSize); // do we need to render anything? bool NeedsRender() const; }; }