mirror of
https://github.com/zeldaret/tp
synced 2026-05-23 06:54:28 -04:00
5867eaf68b
* typedef for cPhs_Step * make sdk includes consistent * d_menu_quit / d_msg_scrn_explain debug * d_a_obj_testcube mostly done * d_debug_pad mostly done * jstudio tool library headers * some JStudioCameraEditor headers * d_jcam_editor mostly done * try fixing some shield regressions * d_bg_parts mostly done * fix merge errors * debug fix
46 lines
911 B
C++
46 lines
911 B
C++
#ifndef JUTNAMETAB_H
|
|
#define JUTNAMETAB_H
|
|
|
|
#include <dolphin/types.h>
|
|
|
|
/**
|
|
* @ingroup jsystem-jutility
|
|
*
|
|
*/
|
|
struct ResNTAB {
|
|
u16 mEntryNum;
|
|
u16 mPad0;
|
|
struct Entry {
|
|
u16 mKeyCode;
|
|
u16 mOffs;
|
|
} mEntries[1];
|
|
|
|
inline const char* getName(u32 index) const {
|
|
return ((const char*)mEntries) + mEntries[index].mOffs - 4;
|
|
}
|
|
};
|
|
|
|
/**
|
|
* @ingroup jsystem-jutility
|
|
*
|
|
*/
|
|
class JUTNameTab {
|
|
public:
|
|
JUTNameTab();
|
|
JUTNameTab(const ResNTAB* pNameTable);
|
|
virtual ~JUTNameTab() {};
|
|
|
|
void setResource(const ResNTAB* pNameTable);
|
|
s32 getIndex(char const*) const;
|
|
const char* getName(u16 index) const;
|
|
u16 calcKeyCode(char const* pName) const;
|
|
const ResNTAB* getResNameTable() const { return mNameTable; }
|
|
|
|
private:
|
|
/* 0x4 */ const ResNTAB* mNameTable;
|
|
/* 0x8 */ const char* mpStrData;
|
|
/* 0xC */ u16 mNameNum;
|
|
};
|
|
|
|
#endif /* JUTNAMETAB_H */
|