prosperon/source/engine/window.h

50 lines
1,011 B
C
Raw Permalink Normal View History

2021-11-30 21:29:18 -06:00
#ifndef WINDOW_H
#define WINDOW_H
2024-03-13 16:30:55 -05:00
#include <HandmadeMath.h>
struct window {
int id;
2024-03-13 16:30:55 -05:00
HMM_Vec2 size; // Actual width and height of the window
HMM_Vec2 rendersize; // The desired rendering resolution, what the assets are at
HMM_Vec2 psize;
float left;
float top;
double dpi;
int render;
int mouseFocus;
int keyboardFocus;
int fullscreen;
int minimized;
int iconified;
int focus;
int shown;
2024-03-13 16:30:55 -05:00
int mode;
float aspect;
float raspect;
char *title;
2024-04-10 16:21:46 -05:00
int vsync;
int enable_clipboard;
int enable_dragndrop;
int high_dpi;
int sample_count;
2024-03-13 16:30:55 -05:00
int start;
2021-11-30 21:29:18 -06:00
};
2024-03-13 16:30:55 -05:00
typedef struct window window;
struct texture;
extern struct window mainwin;
void window_resize(int width, int height);
void window_focused(int focus);
void window_iconified(int s);
void window_suspended(int s);
2022-02-06 10:14:57 -06:00
2024-03-13 16:30:55 -05:00
void window_apply(window *w);
void window_free(window *w);
void window_setfullscreen(window *w, int f);
2024-03-18 08:16:25 -05:00
void set_icon(const char *png);
void window_seticon(struct window *w, struct texture *icon);
2021-11-30 21:29:18 -06:00
#endif