Files
Tower-Defense2/include/td/input/Display.h
2025-07-18 13:11:18 +02:00

46 lines
665 B
C++

#pragma once
#include <string>
#include <SDL3/SDL_video.h>
#include <td/misc/Signal.h>
namespace td {
class Display {
public:
utils::Signal<float> OnAspectRatioChange;
Display(int a_Width, int a_Height, const std::string& a_Title);
~Display();
void PollEvents();
void Update();
bool IsCloseRequested() {
return m_ShouldClose;
}
float GetAspectRatio() {
return m_AspectRatio;
}
int GetWindowWidth() {
return m_LastWidth;
}
int GetWindowHeight() {
return m_LastHeight;
}
private:
SDL_Window* m_Window;
SDL_GLContext m_GLContext;
int m_LastWidth, m_LastHeight;
float m_AspectRatio;
bool m_ShouldClose;
};
} // namespace td