17#define WINDOW_2_Y (55)
18#define WINDOW_2_HEIGHT (133)
20extern u8 D_filemenu_80250958[];
21extern u8 D_filemenu_80250960[];
23#define WINDOW_1_Y (10)
24#define WINDOW_2_Y (67)
25#define WINDOW_2_HEIGHT (113)
79 s32* posX, s32* posY, s32* posZ,
80 f32* scaleX, f32* scaleY,
81 f32* rotX, f32* rotY, f32* rotZ,
88 window->
flags &= ~WINDOW_FLAG_INITIAL_ANIMATION;
96 s32 width, s32 height,
97 s32 opacity, s32 darkening
110 xOffset = temp_s2 + 6 + i * 11;
121 xOffset = temp_s2 + 86;
165#define KEYBOARD_ROW_HEIGHT 15
166#define FILEMENU_C9_OFFSET 16
168#define KEYBOARD_ROW_HEIGHT 17
169#define FILEMENU_C9_OFFSET 5
171#define KEYBOARD_COL_WIDTH 19
175 s32 baseX, s32 baseY,
176 s32 width, s32 height,
177 s32 opacity, s32 darkening
179 s32 changeLayoutOffset;
184 s32 xOffset, yOffset;
194 currentPage = menu->
state;
195 previousPage = menu->
state != 1;
196 if (changeLayoutOffset > 16) {
197 changeLayoutOffset = 16;
200 for (row = 0; row < menu->
numRows; row++) {
201 for (layer = 0; layer < 2; layer++) {
202 yOffset = 15 * row + 4;
209 baseY + yOffset + changeLayoutOffset);
214 baseY + yOffset + changeLayoutOffset,
216 baseY + yOffset + 16);
219 for (col = 0; col < menu->
numCols; col++) {
222 if (col == menu->
col && row == menu->
row) {
235 if (c >= 0xA2 && c < 0xF0) {
276 gDPSetScissor(
gMainGfxPos++, G_SC_NON_INTERLACE, baseX, baseY, baseX + width, baseY + height);
278 for (col = 0; col < menu->
numCols; col++) {
279 for (row = 0; row < menu->
numRows; row++) {
282 if (col == menu->
col && row == menu->
row) {
295 if (c >= 0xA2 && c < 0xF0) {
386 if (menu->
col > 10) {
388 }
else if (menu->
col == 8 || menu->
col == 9) {
392 else if (menu->
col == 5 || menu->
col == 6) {
412 if (menu->
col > 10) {
414 }
else if (menu->
col == 8 || menu->
col == 9) {
418 else if (menu->
col == 5 || menu->
col == 6) {
425 if (prevSelected != menu->
selected) {
583 for (i = 0; i < 3; i++) {
@ WINDOW_FLAG_INITIAL_ANIMATION
@ FILE_MESSAGE_ENTER_A_FILE_NAME
@ SOUND_CREATE_FILE_MOVE_CURSOR
@ SOUND_CREATE_FILE_BACKSPACE
@ SOUND_CREATE_FILE_CHANGE_CHARSET
@ SOUND_CREATE_FILE_SET_CHARACTER
@ MSG_CHAR_MENU_USE_CHARSET_B
@ MSG_CHAR_MENU_USE_CHARSET_A
@ WIN_FILES_OPTION_CENTER
@ WIN_FILES_INPUT_KEYBOARD
@ WIN_FILES_CONFIRM_PROMPT
@ WIN_FILES_CONFIRM_OPTIONS
void set_window_update(s32 panelID, s32)
void filemenu_set_cursor_goal_pos(s32 windowIndex, s32 posX, s32 posY)
void setup_pause_menu_tab(MenuWindowBP *bpArray, s32 arraySize)
u8 * filemenu_get_menu_message(s32 idx)
void filemenu_set_selected(MenuPanel *menu, s32 col, s32 row)
void hud_element_draw_without_clipping(s32 id)
void hud_element_draw_next(s32 id)
void hud_element_set_render_pos(s32 id, s32 x, s32 y)
s32 hud_element_create(HudScript *anim)
Creates a new HUD element and returns its ID.
void hud_element_set_flags(s32 id, s32 flags)
Turns on the given flags.
void hud_element_free(s32 id)
#define INCLUDE_ASM(TYPE, FOLDER, NAME, ARGS...)
void sfx_play_sound(s32 soundID)
#define MENU_PANEL_SELECTED_GRID_DATA(panel)
WindowUpdateFunc fpUpdate
void(* func)(s32 windowIndex, s32 *flags, s32 *posX, s32 *posY, s32 *posZ, f32 *scaleX, f32 *scaleY, f32 *rotX, f32 *rotY, f32 *rotZ, s32 *darkening, s32 *opacity)