mirror of
https://github.com/libretro/RetroArch
synced 2025-03-01 16:13:40 +00:00
[zr] tidy up zr_common
This commit is contained in:
parent
f41280e82c
commit
34d618238b
@ -88,24 +88,24 @@ static void zrmenu_main(zrmenu_handle_t *zr)
|
||||
{
|
||||
struct zr_context *ctx = &zr->ctx;
|
||||
|
||||
if (zr->window_enabled[ZRMENU_WND_MAIN])
|
||||
if (zr->window[ZRMENU_WND_MAIN].open)
|
||||
zrmenu_wnd_main(ctx, zr);
|
||||
if (zr->window_enabled[ZRMENU_WND_CONTROL])
|
||||
if (zr->window[ZRMENU_WND_CONTROL].open)
|
||||
zrmenu_wnd_control(ctx, zr);
|
||||
if (zr->window_enabled[ZRMENU_WND_SHADER_PARAMETERS])
|
||||
if (zr->window[ZRMENU_WND_SHADER_PARAMETERS].open)
|
||||
zrmenu_wnd_shader_parameters(ctx, zr);
|
||||
if (zr->window_enabled[ZRMENU_WND_TEST])
|
||||
if (zr->window[ZRMENU_WND_TEST].open)
|
||||
zrmenu_wnd_test(ctx, zr);
|
||||
if (zr->window_enabled[ZRMENU_WND_WIZARD])
|
||||
if (zr->window[ZRMENU_WND_WIZARD].open)
|
||||
zrmenu_wnd_wizard(ctx, zr);
|
||||
|
||||
zr->window_enabled[ZRMENU_WND_CONTROL] = !zr_window_is_closed(ctx, "Control");
|
||||
zr->window_enabled[ZRMENU_WND_SHADER_PARAMETERS] = !zr_window_is_closed(ctx, "Shader Parameters");
|
||||
zr->window_enabled[ZRMENU_WND_TEST] = !zr_window_is_closed(ctx, "Test");
|
||||
zr->window_enabled[ZRMENU_WND_WIZARD] = !zr_window_is_closed(ctx, "Setup Wizard");
|
||||
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_enabled[ZRMENU_WND_MAIN] = true;
|
||||
zr->window[ZRMENU_WND_MAIN].open = true;
|
||||
|
||||
zr_buffer_info(&zr->status, &zr->ctx.memory);
|
||||
}
|
||||
@ -567,11 +567,11 @@ static void zrmenu_frame(void *data)
|
||||
zrmenu_input_mouse_button(&zr->ctx);
|
||||
zrmenu_input_keyboard(&zr->ctx);
|
||||
|
||||
if (width != zr->width || height != zr->height)
|
||||
if (width != zr->size.x || height != zr->size.y)
|
||||
{
|
||||
zr->width = width;
|
||||
zr->height = height;
|
||||
zr->resize = true;
|
||||
zr->size.x = width;
|
||||
zr->size.y = height;
|
||||
zr->size_changed = true;
|
||||
}
|
||||
|
||||
zr_input_end(&zr->ctx);
|
||||
@ -655,7 +655,7 @@ static void *zrmenu_init(void **userdata)
|
||||
"zahnrad", sizeof(zr->assets_directory));
|
||||
zrmenu_init_device(zr);
|
||||
|
||||
zr->window_enabled[ZRMENU_WND_WIZARD] = true;
|
||||
zr->window[ZRMENU_WND_WIZARD].open = true;
|
||||
|
||||
return menu;
|
||||
error:
|
||||
|
@ -347,7 +347,7 @@ void zrmenu_wnd_main(struct zr_context *ctx, zrmenu_handle_t *zr)
|
||||
settings_t *settings = config_get_ptr();
|
||||
struct zr_panel layout;
|
||||
|
||||
if (zr_begin(ctx, &layout, "Main", zr_rect(-1, -1, 120, zr->height + 1),
|
||||
if (zr_begin(ctx, &layout, "Main", zr_rect(-1, -1, 120, zr->size.x + 1),
|
||||
ZR_WINDOW_NO_SCROLLBAR))
|
||||
{
|
||||
struct zr_panel menu;
|
||||
@ -390,29 +390,29 @@ void zrmenu_wnd_main(struct zr_context *ctx, zrmenu_handle_t *zr)
|
||||
if (zr_menu_item(ctx, ZR_TEXT_LEFT, "Control"))
|
||||
{
|
||||
zr_window_close(ctx, "Control");
|
||||
zr->window_enabled[ZRMENU_WND_CONTROL] =
|
||||
!zr->window_enabled[ZRMENU_WND_CONTROL];
|
||||
zr->window[ZRMENU_WND_CONTROL].open =
|
||||
!zr->window[ZRMENU_WND_CONTROL].open;
|
||||
}
|
||||
|
||||
if (zr_menu_item(ctx, ZR_TEXT_LEFT, "Shader Parameters"))
|
||||
{
|
||||
zr_window_close(ctx, "Shader Parameters");
|
||||
zr->window_enabled[ZRMENU_WND_SHADER_PARAMETERS] =
|
||||
!zr->window_enabled[ZRMENU_WND_SHADER_PARAMETERS];
|
||||
zr->window[ZRMENU_WND_SHADER_PARAMETERS].open =
|
||||
!zr->window[ZRMENU_WND_SHADER_PARAMETERS].open;
|
||||
}
|
||||
|
||||
if (zr_menu_item(ctx, ZR_TEXT_LEFT, "Test Window"))
|
||||
{
|
||||
zr_window_close(ctx, "Test");
|
||||
zr->window_enabled[ZRMENU_WND_TEST] =
|
||||
!zr->window_enabled[ZRMENU_WND_TEST];
|
||||
zr->window[ZRMENU_WND_TEST].open =
|
||||
!zr->window[ZRMENU_WND_TEST].open;
|
||||
}
|
||||
|
||||
if (zr_menu_item(ctx, ZR_TEXT_LEFT, "Wizard"))
|
||||
{
|
||||
zr_window_close(ctx, "Test");
|
||||
zr->window_enabled[ZRMENU_WND_WIZARD] =
|
||||
!zr->window_enabled[ZRMENU_WND_WIZARD];
|
||||
zr->window[ZRMENU_WND_WIZARD].open =
|
||||
!zr->window[ZRMENU_WND_WIZARD].open;
|
||||
}
|
||||
|
||||
zr_menu_end(ctx);
|
||||
@ -422,8 +422,8 @@ void zrmenu_wnd_main(struct zr_context *ctx, zrmenu_handle_t *zr)
|
||||
|
||||
}
|
||||
|
||||
if (zr->resize)
|
||||
zr_window_set_size(ctx, zr_vec2(zr_window_get_size(ctx).x, zr->height));
|
||||
if (zr->size_changed)
|
||||
zr_window_set_size(ctx, zr_vec2(zr_window_get_size(ctx).x, zr->size.y));
|
||||
|
||||
zr_end(ctx);
|
||||
}
|
||||
@ -437,8 +437,8 @@ void zrmenu_wnd_wizard(struct zr_context *ctx, zrmenu_handle_t *zr)
|
||||
settings_t *settings = config_get_ptr();
|
||||
struct zr_panel layout;
|
||||
|
||||
if (zr_begin(ctx, &layout, "Setup Wizard", zr_rect(zr->width/2 -width/2,
|
||||
zr->height/2 - height/2, width, height),
|
||||
if (zr_begin(ctx, &layout, "Setup Wizard", zr_rect(zr->size.x/2 -width/2,
|
||||
zr->size.y/2 - height/2, width, height),
|
||||
ZR_WINDOW_CLOSABLE|ZR_WINDOW_MINIMIZABLE|ZR_WINDOW_MOVABLE|
|
||||
ZR_WINDOW_BORDER))
|
||||
{
|
||||
|
@ -47,20 +47,31 @@ struct icons {
|
||||
struct zr_image speaker;
|
||||
};
|
||||
|
||||
struct window {
|
||||
bool open;
|
||||
struct zr_vec2 position;
|
||||
struct zr_vec2 size;
|
||||
};
|
||||
|
||||
typedef struct zrmenu_handle
|
||||
{
|
||||
char box_message[PATH_MAX_LENGTH];
|
||||
char assets_directory[PATH_MAX_LENGTH];
|
||||
bool window_enabled[5];
|
||||
bool resize;
|
||||
unsigned width;
|
||||
unsigned height;
|
||||
/* zahnrad mandatory */
|
||||
void *memory;
|
||||
struct zr_context ctx;
|
||||
struct zr_memory_status status;
|
||||
enum zrmenu_theme theme;
|
||||
|
||||
/* window control variables */
|
||||
struct zr_vec2 size;
|
||||
bool size_changed;
|
||||
struct window window[5];
|
||||
|
||||
/* menu driver variables */
|
||||
char box_message[PATH_MAX_LENGTH];
|
||||
|
||||
/* image & theme related variables */
|
||||
char assets_directory[PATH_MAX_LENGTH];
|
||||
struct icons icons;
|
||||
enum zrmenu_theme theme;
|
||||
|
||||
|
||||
struct
|
||||
@ -74,7 +85,6 @@ typedef struct zrmenu_handle
|
||||
|
||||
void zrmenu_set_style(struct zr_context *ctx, enum zrmenu_theme theme);
|
||||
|
||||
|
||||
void zrmenu_wnd_wizard(struct zr_context *ctx, zrmenu_handle_t *zr);
|
||||
void zrmenu_wnd_shader_parameters(struct zr_context *ctx, zrmenu_handle_t *zr);
|
||||
void zrmenu_wnd_control(struct zr_context *ctx, zrmenu_handle_t *zr);
|
||||
|
Loading…
x
Reference in New Issue
Block a user