static int zarch_zui_render_lay_root(zui_t *zui) { char item[PATH_MAX_LENGTH]; static struct zui_tabbed tabbed = {~0U}; zarch_zui_tabbed_begin(zui, &tabbed, 0, 0); tabbed.width = zui->width - 290 - 40; zui->next_selection_set = false; if (zarch_zui_render_lay_root_recent(zui, &tabbed)) return 0; if (zarch_zui_render_lay_root_load (zui, &tabbed)) return 0; if (zarch_zui_render_lay_root_collections(zui, &tabbed)) return 0; if (zarch_zui_render_lay_root_downloads(zui, &tabbed)) return 0; #ifdef ZARCH_DEBUG item[0] = '\0'; snprintf(item, sizeof(item), "item id: %d\n", zui->active_id); zarch_zui_draw_text(zui, ZUI_FG_NORMAL, 1600 +12, 300 + 41, item); snprintf(item, sizeof(item), "tab idx: %d\n", tabbed.active_id); zarch_zui_draw_text(zui, ZUI_FG_NORMAL, 1600 +12, 300 + 81, item); snprintf(item, sizeof(item), "item hot idx: %d\n", zui->item.hot); zarch_zui_draw_text(zui, ZUI_FG_NORMAL, 1600 +12, 300 + 111, item); #endif menu_display_push_quad(zui->width, zui->height, zui_bg_hilite, 0, 60, zui->width - 290 - 40, 60+4); return 0; }
static int zarch_zui_render_lay_root(zui_t *zui) { char item[PATH_MAX_LENGTH]; static zui_tabbed_t tabbed = {~0}; zarch_zui_tabbed_begin(zui, &tabbed, 0, 0); tabbed.width = zui->width - 290 - 40; zui->next_selection_set = false; if (zarch_zui_render_lay_root_recent(zui, &tabbed)) return 0; if (zarch_zui_render_lay_root_load (zui, &tabbed)) return 0; if (zarch_zui_render_lay_root_collections(zui, &tabbed)) return 0; if (zarch_zui_render_lay_root_downloads(zui, &tabbed)) return 0; (void)item; #ifdef ZARCH_DEBUG snprintf(item, sizeof(item), "item id: %d\n", zui->active_id); zarch_zui_draw_text(zui, ZUI_FG_NORMAL, 1600 +12, 300 + 41, item); snprintf(item, sizeof(item), "tab idx: %d\n", tabbed.active_id); zarch_zui_draw_text(zui, ZUI_FG_NORMAL, 1600 +12, 300 + 81, item); snprintf(item, sizeof(item), "item hot idx: %d\n", zui->item.hot); zarch_zui_draw_text(zui, ZUI_FG_NORMAL, 1600 +12, 300 + 111, item); #endif if (zui->pending_selection == -1) { switch (zui->action) { case MENU_ACTION_UP: if (zui->prev_id != -1 && zui->prev_id != zui->active_id) { if (zui->prev_id < zui->active_id) zui->pending_selection = zui->prev_id; } break; case MENU_ACTION_DOWN: if (zui->next_id != -1 && zui->next_id != zui->active_id) { if (zui->next_id > zui->active_id) zui->pending_selection = zui->next_id; } break; default: break; } } else zui->pending_selection = -1; zarch_zui_push_quad(zui->width, zui->height, ZUI_BG_HILITE, &zui->ca, 0, 60, zui->width - 290 - 40, 60+4); return 0; }