mirror of
https://gitlab.com/ryandwyer/perfect-dark
synced 2026-08-29 16:32:40 -04:00
Untangle menuitemdata structs
This commit is contained in:
@@ -32,7 +32,7 @@ void func0f0f1494(void);
|
||||
char *menuResolveText(uintptr_t thing, void *dialogoritem);
|
||||
char *menuResolveParam2Text(struct menuitem *item);
|
||||
char *menuResolveDialogTitle(struct menudialogdef *dialogdef);
|
||||
void func0f0f15a4(struct menuitem *item, s32 *arg1);
|
||||
void menuGetItemBlocksRequired(struct menuitem *item, s32 *arg1);
|
||||
void menuCalculateItemSize(struct menuitem *item, s16 *width, s16 *height, struct menudialog *dialog);
|
||||
void func0f0f1d6c(struct menudialogdef *dialogdef, struct menudialog *dialog, struct menu *menu);
|
||||
void dialog0f0f1ef4(struct menudialog *dialog);
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
#include "types.h"
|
||||
|
||||
s32 menuitem0f0e5d2c(s32 arg0, struct menuitem *item);
|
||||
s16 menuitem0f0e5ef8(s16 arg0, struct menuitem *item);
|
||||
s16 menuitemListGetOffsetY(s16 optionindex, struct menuitem *item);
|
||||
Gfx *menuitemListRenderHeader(Gfx *gdl, s16 x1, s16 y1, s16 width, s16 arg4, s16 height, char *text, struct menudialog *dialog);
|
||||
Gfx *menuitemListOverlay(Gfx *gdl, s16 x, s16 y, s16 x2, s16 y2);
|
||||
Gfx *menuitemListRender(Gfx *gdl, struct menurendercontext *context);
|
||||
|
||||
+23
-39
@@ -3247,15 +3247,19 @@ struct menuitemdata_controller {
|
||||
s8 prevmode;
|
||||
};
|
||||
|
||||
struct menuitemdata_list {
|
||||
s16 curoffsety;
|
||||
s16 index;
|
||||
s16 targetoffsety;
|
||||
s16 viewheight;
|
||||
};
|
||||
|
||||
struct menuitemdata_dropdown {
|
||||
u16 unk00;
|
||||
u16 unk02;
|
||||
s16 unk04;
|
||||
u16 unk06;
|
||||
u16 unk08;
|
||||
u16 unk0a;
|
||||
struct menuitemdata_list list;
|
||||
u16 unk08; // unused
|
||||
u16 unk0a; // unused
|
||||
s16 scrolloffset;
|
||||
u16 unk0e;
|
||||
u16 unk0e; // unused
|
||||
};
|
||||
|
||||
struct menuitemdata_keyboard {
|
||||
@@ -3266,18 +3270,11 @@ struct menuitemdata_keyboard {
|
||||
u8 capseffective : 1; // Same as above, but inverted if holding L or R
|
||||
};
|
||||
|
||||
struct menuitemdata_list {
|
||||
s16 unk00;
|
||||
s16 unk02;
|
||||
s16 unk04;
|
||||
s16 unk06;
|
||||
};
|
||||
|
||||
struct menuitemdata_marquee {
|
||||
u16 totalmoved;
|
||||
u16 sum;
|
||||
u16 unk04;
|
||||
u16 unk06;
|
||||
u16 texthash;
|
||||
u16 viewwidth;
|
||||
u16 unk06; // unused
|
||||
};
|
||||
|
||||
struct menuitemdata_ranking {
|
||||
@@ -3285,15 +3282,17 @@ struct menuitemdata_ranking {
|
||||
};
|
||||
|
||||
struct menuitemdata_scrollable {
|
||||
s16 unk00;
|
||||
s16 unk02;
|
||||
s16 unk04;
|
||||
s16 unk06;
|
||||
s16 unk08;
|
||||
s16 scrolloffset;
|
||||
s16 unk02; // unused
|
||||
s16 maxscrolloffset;
|
||||
s16 dialogheight;
|
||||
#if VERSION >= VERSION_PAL_BETA
|
||||
s16 language;
|
||||
#endif
|
||||
};
|
||||
|
||||
struct menuitemdata_slider {
|
||||
s16 unk00;
|
||||
s16 multiplier;
|
||||
};
|
||||
|
||||
union menuitemdata {
|
||||
@@ -3343,22 +3342,8 @@ struct handlerdata_list {
|
||||
s32 unk0c;
|
||||
};
|
||||
|
||||
struct handlerdata_list2 {
|
||||
s16 unk00;
|
||||
s16 unk02;
|
||||
u32 unk04;
|
||||
u32 unk08;
|
||||
u32 unk0c;
|
||||
};
|
||||
|
||||
struct handlerdata_slider {
|
||||
union {
|
||||
u32 value;
|
||||
struct {
|
||||
u16 unk00;
|
||||
s16 unk02;
|
||||
};
|
||||
};
|
||||
u32 value;
|
||||
char *label;
|
||||
};
|
||||
|
||||
@@ -3392,7 +3377,6 @@ union handlerdata {
|
||||
struct handlerdata_carousel carousel;
|
||||
struct handlerdata_checkbox checkbox;
|
||||
struct handlerdata_list list;
|
||||
struct handlerdata_list2 list2;
|
||||
struct handlerdata_dropdown dropdown;
|
||||
struct handlerdata_keyboard keyboard;
|
||||
struct handlerdata_label label;
|
||||
|
||||
Reference in New Issue
Block a user