mirror of https://github.com/zeldaret/tp.git
64 lines
2.4 KiB
C++
64 lines
2.4 KiB
C++
#ifndef JSTUDIOTOOLLIBRARY_CONTROLSET_H
|
|
#define JSTUDIOTOOLLIBRARY_CONTROLSET_H
|
|
|
|
#include "JSystem/JStudio/JStudioToolLibrary/console.h"
|
|
|
|
namespace JStudioToolLibrary {
|
|
struct TControlSet {
|
|
struct TControl {
|
|
typedef void* (*generateFn)(JORMContext*, TControlSet*, const TControl&);
|
|
typedef void* (*replyFn)(const JORPropertyEvent*, TControlSet*, const TControl&);
|
|
typedef void* (*updateFn)(TControlSet*, const TControl&);
|
|
|
|
TControl();
|
|
TControl(const char*, generateFn, replyFn, updateFn);
|
|
|
|
void update(TControlSet*) const;
|
|
void reply(const JORPropertyEvent*, TControlSet*) const;
|
|
void generate(JORMContext*, TControlSet*) const;
|
|
bool isEnd() const;
|
|
const char* getLabel() const;
|
|
int getID(const TControlSet&) const;
|
|
void setStyle(TControlSet*, u32) const;
|
|
|
|
/* 0x00 */ char* szLabel_;
|
|
/* 0x04 */ void* pfnGenerate_;
|
|
/* 0x08 */ void* pfnReply_;
|
|
/* 0x0C */ void* pfnUpdate_;
|
|
};
|
|
|
|
TControlSet(TConsole*, const TControl*, u32, u32, const u32*);
|
|
|
|
TConsole* getConsole();
|
|
|
|
TControl* control_getControl_IDOffset(u32) const;
|
|
u32 control_getNumber() const;
|
|
void control_generate(JORMContext*);
|
|
void control_generate_all(JORMContext*);
|
|
void control_generate(JORMContext*, const TControl&);
|
|
void control_generate_IDOffset(JORMContext*, const u32*);
|
|
void control_generate_IDOffset(JORMContext*, u32);
|
|
void control_generate_separator(JORMContext*, TControlSet*, const TControl&);
|
|
void control_generate_label(JORMContext*, TControlSet*, const TControl&);
|
|
void control_reply(const JORPropertyEvent*);
|
|
void control_getControl(u32) const;
|
|
u32 control_getIDBegin() const;
|
|
void control_toID(const TControl*) const;
|
|
u32 control_toID_IDOffset(u32) const;
|
|
u32 control_toIDOffset(const TControl&) const;
|
|
void control_update_IDOffset(u32);
|
|
void control_update(const TControl&);
|
|
void control_update_IDOffset(const u32*);
|
|
void control_setStyle(const TControl&, u32);
|
|
void control_setStyle_IDOffset(u32, u32);
|
|
|
|
/* 0x00 */ TConsole* pConsole_;
|
|
/* 0x04 */ TControl* paoControl_;
|
|
/* 0x08 */ u32 uNumber_;
|
|
/* 0x0C */ u32 field_0xc;
|
|
/* 0x10 */ u32 field_0x10;
|
|
};
|
|
}
|
|
|
|
#endif
|