chore(gx): clean up screen declarations

This commit is contained in:
fallenoak 2023-03-31 13:09:30 -05:00
parent ee1d46db19
commit 21c2484809
No known key found for this signature in database
GPG Key ID: 7628F8E61AEA070D
2 changed files with 22 additions and 24 deletions

View File

@ -13,7 +13,7 @@ float Screen::s_elapsedSec = 0.0f;
int32_t Screen::s_presentDisable = 0; int32_t Screen::s_presentDisable = 0;
HOBJECT Screen::s_stockObjects[]; HOBJECT Screen::s_stockObjects[];
float Screen::s_stockObjectHeights[] = { 0.01953125f, 0.01953125f }; float Screen::s_stockObjectHeights[] = { 0.01953125f, 0.01953125f };
STORM_EXPLICIT_LIST(CILayer, zorderlink) Screen::s_zorderlist; static STORM_EXPLICIT_LIST(CILayer, zorderlink) s_zOrderList;
int32_t OnIdle(const EVENT_DATA_IDLE* data, void* a2) { int32_t OnIdle(const EVENT_DATA_IDLE* data, void* a2) {
Screen::s_elapsedSec = data->elapsedSec + Screen::s_elapsedSec; Screen::s_elapsedSec = data->elapsedSec + Screen::s_elapsedSec;
@ -45,7 +45,7 @@ int32_t OnPaint(const void* a1, void* a2) {
SRgnCombineRectf(rgn.m_handle, &baseRect, nullptr, 2); SRgnCombineRectf(rgn.m_handle, &baseRect, nullptr, 2);
layer = Screen::s_zorderlist.Head(); layer = s_zOrderList.Head();
while (layer) { while (layer) {
SRgnGetBoundingRectf(rgn.m_handle, &layer->visible); SRgnGetBoundingRectf(rgn.m_handle, &layer->visible);
@ -68,7 +68,7 @@ int32_t OnPaint(const void* a1, void* a2) {
float minX, maxX, minY, maxY, minZ, maxZ; float minX, maxX, minY, maxY, minZ, maxZ;
GxXformViewport(minX, maxX, minY, maxY, minZ, maxZ); GxXformViewport(minX, maxX, minY, maxY, minZ, maxZ);
layer = Screen::s_zorderlist.Head(); layer = s_zOrderList.Head();
while (layer) { while (layer) {
if (layer->visible.right > layer->visible.left && layer->visible.top > layer->visible.bottom) { if (layer->visible.right > layer->visible.left && layer->visible.top > layer->visible.bottom) {
@ -180,33 +180,32 @@ void ScrnInitialize(int32_t a1) {
IStockInitialize(); IStockInitialize();
} }
void ScrnLayerCreate(const RECTF* rect, float zorder, unsigned long flags, void* param, void (*paintFunc)(void*, const RECTF*, const RECTF*, float), HLAYER* layer) { void ScrnLayerCreate(const RECTF* rect, float zOrder, uint32_t flags, void* param, void (*paintFunc)(void*, const RECTF*, const RECTF*, float), HLAYER* layerPtr) {
static RECTF defaultrect = { 0.0f, 0.0f, 1.0f, 1.0f }; static RECTF defaultrect = { 0.0f, 0.0f, 1.0f, 1.0f };
const RECTF* r = rect ? rect : &defaultrect; const RECTF* r = rect ? rect : &defaultrect;
auto m = SMemAlloc(sizeof(CILayer), __FILE__, __LINE__, 0x0); auto m = SMemAlloc(sizeof(CILayer), __FILE__, __LINE__, 0x0);
auto l = new (m) CILayer(); auto layer = new (m) CILayer();
l->rect.left = r->left; layer->rect.left = r->left;
l->rect.bottom = r->bottom; layer->rect.bottom = r->bottom;
l->rect.right = r->right; layer->rect.right = r->right;
l->rect.top = r->top; layer->rect.top = r->top;
l->zorder = zorder; layer->zorder = zOrder;
l->flags = flags; layer->flags = flags;
l->param = param; layer->param = param;
l->paintfunc = paintFunc; layer->paintfunc = paintFunc;
auto node = Screen::s_zorderlist.Head(); auto node = s_zOrderList.Head();
while (node && zorder < node->zorder) { while (node && zOrder < node->zorder) {
node = node->zorderlink.Next(); node = node->zorderlink.Next();
} }
Screen::s_zorderlist.LinkNode(l, 1, node); s_zOrderList.LinkNode(layer, 1, node);
*layer = HandleCreate(l); *layerPtr = HandleCreate(layer);
} }
void ScrnSetStockFont(SCRNSTOCK stockID, const char* fontTexturePath) { void ScrnSetStockFont(SCRNSTOCK stockID, const char* fontTexturePath) {

View File

@ -36,17 +36,16 @@ namespace Screen {
extern int32_t s_presentDisable; extern int32_t s_presentDisable;
extern HOBJECT s_stockObjects[SCRNSTOCKOBJECTS]; extern HOBJECT s_stockObjects[SCRNSTOCKOBJECTS];
extern float s_stockObjectHeights[SCRNSTOCKOBJECTS]; extern float s_stockObjectHeights[SCRNSTOCKOBJECTS];
extern STORM_EXPLICIT_LIST(CILayer, zorderlink) s_zorderlist;
} }
void ILayerInitialize(void); void ILayerInitialize();
void IStockInitialize(void); void IStockInitialize();
void ScrnInitialize(int32_t); void ScrnInitialize(int32_t a1);
void ScrnLayerCreate(const RECTF*, float, unsigned long, void*, void (*)(void*, const RECTF*, const RECTF*, float), HLAYER*); void ScrnLayerCreate(const RECTF* rect, float zOrder, uint32_t flags, void* param, void (*paintFunc)(void*, const RECTF*, const RECTF*, float), HLAYER* layerPtr);
void ScrnSetStockFont(SCRNSTOCK, const char*); void ScrnSetStockFont(SCRNSTOCK stockID, const char* fontTexturePath);
#endif #endif