thunderbrew/src/gx/Screen.hpp

52 lines
1.1 KiB
C++
Raw Normal View History

2023-01-02 13:17:18 -06:00
#ifndef GX_SCREEN_HPP
#define GX_SCREEN_HPP
#include <cstdint>
#include <common/Handle.hpp>
#include <storm/List.hpp>
#include <storm/Region.hpp>
2023-01-02 13:17:18 -06:00
typedef HOBJECT HLAYER;
enum SCRNSTOCK {
STOCK_SYSFONT = 0,
STOCK_PERFFONT = 1,
SCRNSTOCKOBJECTS = 2
};
class CILayer : public CHandleObject {
public:
RECTF rect;
RECTF visible;
float zorder;
uint32_t flags;
void* param;
void (*paintfunc)(void*, const RECTF*, const RECTF*, float);
TSLink<CILayer> zorderlink;
};
class CSRgn {
public:
HSRGN m_handle;
};
namespace Screen {
extern int32_t s_captureScreen;
extern float s_elapsedSec;
extern int32_t s_presentDisable;
}
void ILayerInitialize();
2023-01-02 13:17:18 -06:00
void IStockInitialize();
2023-01-02 13:17:18 -06:00
void ScrnInitialize(int32_t a1);
2023-01-02 13:17:18 -06:00
void ScrnLayerCreate(const RECTF* rect, float zOrder, uint32_t flags, void* param, void (*paintFunc)(void*, const RECTF*, const RECTF*, float), HLAYER* layerPtr);
2023-01-02 13:17:18 -06:00
void ScrnLayerSetRect(HLAYER layer, const RECTF* rect);
void ScrnSetStockFont(SCRNSTOCK stockID, const char* fontTexturePath);
2023-01-02 13:17:18 -06:00
#endif