pokeplatinum/include/underground/item_list_menu.h
scbroede 5b37fec40b
Some checks are pending
build / build (push) Waiting to run
document underground save data (#963)
2026-02-22 12:15:42 -08:00

33 lines
1.1 KiB
C

#ifndef POKEPLATINUM_UNDERGROUND_ITEM_LIST_MENU_H
#define POKEPLATINUM_UNDERGROUND_ITEM_LIST_MENU_H
#include "colored_arrow.h"
#include "heap.h"
#include "list_menu.h"
#include "string_list.h"
#include "underground.h"
typedef void (*MoveItemCallback)(Underground *underground, int origSlot, int slotToMoveAfter);
typedef struct UndergroundItemListMenu {
MoveItemCallback moveItemCallback;
Underground *underground;
StringList *choices;
ListMenu *listMenu;
ColoredArrow *arrow;
u16 initialListPos;
u16 initialCursorPos;
u16 listPos;
u16 cursorPos;
u8 movingItems;
u8 heapID;
u8 isDecorationMenu;
u16 trueCursorPos;
} UndergroundItemListMenu;
UndergroundItemListMenu *UndergroundItemListMenu_New(ListMenuTemplate *template, u16 startListPos, u16 startCursorPos, u8 heapID, MoveItemCallback moveItemCallback, Underground *underground, BOOL isDecorationMenu);
u32 UndergroundItemListMenu_ProcessInput(UndergroundItemListMenu *menu);
void UndergroundItemListMenu_Free(UndergroundItemListMenu *menu, u16 *outListPos, u16 *outCursorPos);
#endif // POKEPLATINUM_UNDERGROUND_ITEM_LIST_MENU_H