static int zarch_zui_render_sidebar(zui_t *zui) { int width, x1, y1; static struct zui_tabbed tabbed = {~0U}; tabbed.vertical = true; tabbed.tab_width = 100; zarch_zui_tabbed_begin(zui, &tabbed, zui->width - 100, 20); width = 290; x1 = zui->width - width - 20; y1 = 20; if (zarch_zui_button_full(zui, x1, y1, x1 + width, y1 + 64, "Settings")) zarch_layout = LAY_SETTINGS; y1 += 64; if (zarch_zui_button_full(zui, x1, y1, x1 + width, y1 + 64, "Exit")) { menu_driver_ctl(RARCH_MENU_CTL_SET_PENDING_SHUTDOWN, NULL); return 1; } return 0; }
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_sidebar(zui_t *zui) { int width, x1, y1; static zui_tabbed_t tabbed = {~0}; tabbed.vertical = true; tabbed.tab_width = 100; zarch_zui_tabbed_begin(zui, &tabbed, zui->width - 100, 20); width = 290; x1 = zui->width - width - 20; y1 = 20; if (zarch_zui_button_full(zui, x1, y1, x1 + width, y1 + 64, "Settings")) layout = LAY_SETTINGS; y1 += 64; if (zarch_zui_button_full(zui, x1, y1, x1 + width, y1 + 64, "Exit")) { zui->time_to_quit = true; return 1; } 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; }
static void zarch_zui_render_lay_settings(zui_t *zui) { int width, x1, y1; static struct zui_tabbed tabbed = {~0U}; tabbed.vertical = true; tabbed.tab_width = 100; zarch_zui_tabbed_begin(zui, &tabbed, zui->width - 100, 20); width = 290; x1 = zui->width - width - 20; y1 = 20; y1 += 64; if (zarch_zui_button_full(zui, x1, y1, x1 + width, y1 + 64, "Back")) zarch_layout = LAY_HOME; }