mirror of
https://github.com/TerryCavanagh/VVVVVV.git
synced 2024-12-23 10:09:43 +01:00
77a571017d
For future PRs, it'll be very nice to have full control over how VVVVVV gets drawn to the window. This means we can use the entire window size for things like touch input, drawing borders, or anything we want.
50 lines
933 B
C++
50 lines
933 B
C++
#ifndef SCREEN_H
|
|
#define SCREEN_H
|
|
|
|
#include <SDL.h>
|
|
|
|
#include "ScreenSettings.h"
|
|
|
|
class Screen
|
|
{
|
|
public:
|
|
void init(const struct ScreenSettings* settings);
|
|
void destroy(void);
|
|
|
|
void GetSettings(struct ScreenSettings* settings);
|
|
|
|
void LoadIcon(void);
|
|
|
|
void ResizeScreen(int x, int y);
|
|
void ResizeToNearestMultiple(void);
|
|
void GetScreenSize(int* x, int* y);
|
|
|
|
void RenderPresent(void);
|
|
|
|
void toggleFullScreen(void);
|
|
void toggleScalingMode(void);
|
|
void toggleLinearFilter(void);
|
|
void toggleVSync(void);
|
|
|
|
void recacheTextures(void);
|
|
|
|
bool isForcedFullscreen(void);
|
|
|
|
int windowDisplay;
|
|
int windowWidth;
|
|
int windowHeight;
|
|
bool isWindowed;
|
|
bool isFiltered;
|
|
bool badSignalEffect;
|
|
int scalingMode;
|
|
bool vsync;
|
|
|
|
SDL_Window *m_window;
|
|
SDL_Renderer *m_renderer;
|
|
};
|
|
|
|
#ifndef GAMESCREEN_DEFINITION
|
|
extern Screen gameScreen;
|
|
#endif
|
|
|
|
#endif /* SCREEN_H */
|