#pragma once #include "BsEditorPrerequisites.h" #include "BsModule.h" namespace BansheeEngine { class BS_ED_EXPORT DropDownWindowManager : public Module { public: DropDownWindowManager(); ~DropDownWindowManager(); template T* open(const RenderWindowPtr& parent, Viewport* target, const Vector2I& position, Args &&...args) { close(); mOpenWindow = bs_new(parent, target, position, std::forward(args)...); return static_cast(mOpenWindow); } void close(); void update(); protected: DropDownWindow* mOpenWindow; }; }