static void zrmenu_main(zrmenu_handle_t *zr) { struct zr_context *ctx = &zr->ctx; if (zr->window[ZRMENU_WND_MAIN].open) zrmenu_wnd_main(zr); if (zr->window[ZRMENU_WND_CONTROL].open) zrmenu_wnd_control(zr); if (zr->window[ZRMENU_WND_SHADER_PARAMETERS].open) zrmenu_wnd_shader_parameters(zr); if (zr->window[ZRMENU_WND_TEST].open) zrmenu_wnd_test(zr); if (zr->window[ZRMENU_WND_WIZARD].open) zrmenu_wnd_wizard(zr); zr->window[ZRMENU_WND_CONTROL].open = !zr_window_is_closed(ctx, "Control"); zr->window[ZRMENU_WND_SHADER_PARAMETERS].open = !zr_window_is_closed(ctx, "Shader Parameters"); zr->window[ZRMENU_WND_TEST].open = !zr_window_is_closed(ctx, "Test"); zr->window[ZRMENU_WND_WIZARD].open = !zr_window_is_closed(ctx, "Setup Wizard"); if(zr_window_is_closed(ctx, "Setup Wizard")) zr->window[ZRMENU_WND_MAIN].open = true; zr_buffer_info(&zr->status, &zr->ctx.memory); }
static int run_demo(struct demo *gui) { int ret = 1; static int init = 0; static struct node_editor nodedit; struct zr_context *ctx = &gui->ctx; if (!init) { memset(&nodedit, 0, sizeof(nodedit)); node_editor_init(&nodedit); init = 1; } /* windows */ simple_window(ctx); demo_window(ctx); node_editor_demo(ctx, &nodedit); #ifndef DEMO_DO_NOT_DRAW_IMAGES grid_demo(ctx); button_demo(ctx, &gui->icons); basic_demo(ctx, &gui->icons); #endif ret = control_window(ctx, gui); zr_buffer_info(&gui->status, &gui->ctx.memory); return ret; }