23#define __WIZARD_ENGINE_INTERNAL__
28SDL_Window* wze::window::_base = {};
29uint16_t wze::window::_width = {};
30uint16_t wze::window::_height = {};
32SDL_Window* wze::window::base() {
36uint16_t wze::window::width() {
40uint16_t wze::window::height() {
44std::string wze::window::title() {
45 return SDL_GetWindowTitle(base());
48void wze::window::set_title(std::string
const& title) {
49 SDL_SetWindowTitle(base(), title.c_str());
52void wze::window::set_icon(std::shared_ptr<image>
const& icon) {
53 SDL_SetWindowIcon(base(), icon.get());
56bool wze::window::visible() {
57 return (
bool)(SDL_GetWindowFlags(base()) & SDL_WINDOW_SHOWN);
60bool wze::window::focused() {
61 return (
bool)(SDL_GetWindowFlags(base()) & SDL_WINDOW_INPUT_FOCUS);
64void wze::window::initialize(std::string
const& title, uint16_t width,
66 _base = SDL_CreateWindow(title.empty() ?
"Wizard Engine" : title.c_str(),
67 SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED,
71 | SDL_WINDOW_FULLSCREEN_DESKTOP
75 throw exception(SDL_GetError());
79 set_icon(assets::load_image(
"./wizard_engine/icon.png"));
Subsystem to handle game window.