Files
tp/libs/JSystem/include/JSystem/JAWExtSystem/JAWExtSystem.h
T
Luke Street 9649319ec4 Reorganize library code into libs/ (#3119)
* Reorganize files into libs/{dolphin,JSystem,PowerPC_EABI_Support,revolution,TRK_MINNOW_DOLPHIN}

* Update configure.py and project.py for new libs structure

* Refactor `#include <dolphin/x.h>` -> `<x.h>`

* Remove `__REVOLUTION_SDK__` forwards from dolphin

* Fix dolphin/ references in revolution

* Wrap `#include <dolphin.h>` in `!__REVOLUTION_SDK__`

* Always build TRK against dolphin headers

* Resolve revolution SDK header resolution issues
2026-03-01 14:35:36 -08:00

50 lines
1.4 KiB
C++

#ifndef JAWEXTSYSTEM_H
#define JAWEXTSYSTEM_H
#include "JSystem/JAWExtSystem/JAWSystem.h"
#include "JSystem/JGadget/std-list.h"
class JAWWindow;
struct JUTGamePad;
namespace JAWExtSystem {
BOOL registWindow(u32, JAWWindow*, int, int);
BOOL destroyWindow(u32, JAWWindow*);
void nextPage();
void prevPage();
void nextWindow();
void prevWindow();
void draw();
void padProc(const JUTGamePad&);
class TSystemInterface : public JAWSystemInterface {
public:
TSystemInterface() {}
virtual BOOL registWindow(u32 param_1, JAWWindow* param_2, int param_3, int param_4) {
return JAWExtSystem::registWindow(param_1, param_2, param_3, param_4);
}
virtual BOOL destroyWindow(u32 param_1, JAWWindow* param_2) {
return JAWExtSystem::destroyWindow(param_1, param_2);
}
virtual void setForegroundWindow(JAWWindow*) {}
};
class TCurrentHeap {
public:
TCurrentHeap(const TSystemInterface& interface) {
heap = JKRGetCurrentHeap();
JKRSetCurrentHeap(interface.getCurrentHeap());
}
~TCurrentHeap() { JKRSetCurrentHeap(heap); }
/* 0x00 */ JKRHeap* heap;
};
extern JGadget::TList<JAWWindow*> sPage[128];
extern TSystemInterface sInterface;
extern s32 sCurrentPage;
extern u8 lbl_80748E44;
}
#endif /* JAWEXTSYSTEM_H */