Files
Seele/src/Engine/Window/Window.h
T
2023-12-28 21:42:18 +01:00

30 lines
655 B
C++

#pragma once
#include "View.h"
#include "Graphics/RenderTarget.h"
namespace Seele
{
DECLARE_REF(WindowManager)
// The logical window, with the graphics proxy
class Window
{
public:
Window(PWindowManager owner, Gfx::OWindow handle);
~Window();
void addView(PView view);
void pollInputs();
void render();
Gfx::PWindow getGfxHandle();
void setFocused(PView view);
void onResize(uint32 width, uint32 height);
constexpr bool isPaused() const
{
return gfxHandle->isPaused();
}
protected:
PWindowManager owner;
Array<PView> views;
Gfx::OWindow gfxHandle;
};
DEFINE_REF(Window)
} // namespace Seele