static void init_demo(struct demo_gui *gui, struct gui_font *font) { struct gui_config *config = &gui->config; gui->font = *font; gui->running = gui_true; gui_command_buffer_init_fixed(&gui->show_buffer, gui->memory, MAX_MEMORY/2, GUI_CLIP); gui_command_buffer_init_fixed(&gui->control_buffer, gui_ptr_add(void*, gui->memory, (MAX_MEMORY/2)), MAX_MEMORY/2, GUI_CLIP); gui_config_default(config, GUI_DEFAULT_ALL, font); gui_stack_clear(&gui->stack); init_show(&gui->show, config, &gui->show_buffer, &gui->stack); init_control(&gui->control, config, &gui->control_buffer, &gui->stack); gui->show.hook.flags |= GUI_PANEL_HIDDEN; }
/* ----------------------------------------------------------------- * INIT * ----------------------------------------------------------------- */ static void init_demo(struct demo_gui *gui, struct gui_font *font) { struct gui_config *config = &gui->config; struct state *win = &gui->state; struct gui_clipboard clip; gui->font = *font; gui->running = gui_true; gui_command_queue_init_fixed(&gui->queue, gui->memory, MAX_MEMORY); gui_config_default(config, GUI_DEFAULT_ALL, font); /* panel */ gui_panel_init(&gui->panel, 30, 30, 280, 530, GUI_PANEL_BORDER|GUI_PANEL_MOVEABLE|GUI_PANEL_SCALEABLE, &gui->queue, config, gui->input); gui_panel_init(&gui->sub, 400, 50, 220, 180, GUI_PANEL_BORDER|GUI_PANEL_MOVEABLE|GUI_PANEL_SCALEABLE, &gui->queue, config, gui->input); /* widget state */ tree_init(&win->test); clip.userdata.ptr = NULL, clip.copy = copy; clip.paste = paste; gui_edit_box_init_fixed(&win->edit, win->edit_buffer, MAX_BUFFER, &clip, NULL); win->prog_values[0] = 30; win->prog_values[1] = 80; win->prog_values[2] = 70; win->prog_values[3] = 50; win->scaleable = gui_true; win->slider = 2.0f; win->progressbar = 50; win->spinner = 100; }