- Consolidate development files into final implementation - Replace basic prototypes with full feature implementations - Add complete hash-based save data access system - Implement advanced map pin management algorithms - Add comprehensive error handling and user feedback - Complete Korok seed database with all 908 locations
44 lines
No EOL
981 B
C
44 lines
No EOL
981 B
C
#ifndef UI_H
|
|
#define UI_H
|
|
|
|
typedef void (*func_t)();
|
|
typedef struct {
|
|
char ItemStr[30];
|
|
func_t ItemFunc;
|
|
} MenuItem;
|
|
|
|
typedef struct {
|
|
char HeaderStr[30];
|
|
u32 ItemCount;
|
|
u32 StartLine;
|
|
u32 SelectedIndex;
|
|
MenuItem *Menu_Items;
|
|
} Menu;
|
|
|
|
void _clearScreen();
|
|
void _drawMenu();
|
|
void loadMenu(Menu* menu);
|
|
void _confirm_no();
|
|
void confirmThenRunElse(func_t yes_func, func_t no_func);
|
|
void confirmThenRun(func_t yes_func);
|
|
void _setCursorPos(u32 x_pos, u32 y_pos);
|
|
void handleMenuButtonPress(u64 button);
|
|
bool handleButtonPress(u64 button);
|
|
void printMessage(const char* message, ...);
|
|
void printfAtCursor(u32 x_pos, u32 y_pos, const char* format, ...) ;
|
|
void _drawMessagePane();
|
|
void initUI();
|
|
void exitApp();
|
|
void saveAndExitApp();
|
|
|
|
/*#define MENU_START_LINEE 21
|
|
#define MENU_END_LINEE 25
|
|
enum menu_items {
|
|
none = MENU_START_LINEE-1,
|
|
add_missing_koroks,
|
|
erase_all_map_pins,
|
|
convert_invalid_map_pins,
|
|
save_file,
|
|
exit_app
|
|
};*/
|
|
#endif |