mirror of
https://github.com/libretro/RetroArch
synced 2025-03-02 19:13:34 +00:00
Create OVERLAY_STATUS_DEFERRED_LOADING_IMAGE
This commit is contained in:
parent
d349b2a37a
commit
0595189fab
@ -561,6 +561,38 @@ error:
|
||||
return false;
|
||||
}
|
||||
|
||||
bool input_overlay_load_overlays_image_iterate(input_overlay_t *ol)
|
||||
{
|
||||
bool not_done = true;
|
||||
|
||||
if (!ol)
|
||||
return false;
|
||||
|
||||
not_done = ol->pos < ol->size;
|
||||
|
||||
if (!not_done)
|
||||
{
|
||||
ol->pos = 0;
|
||||
ol->state = OVERLAY_STATUS_DEFERRED_LOADING_RESOLVE;
|
||||
return true;
|
||||
}
|
||||
|
||||
if (!input_overlay_load_overlay_image(ol, ol->conf,
|
||||
ol->overlay_path, &ol->overlays[ol->pos], ol->pos))
|
||||
{
|
||||
RARCH_ERR("[Overlay]: Failed to load overlay image #%u.\n", (unsigned)ol->pos);
|
||||
goto error;
|
||||
}
|
||||
|
||||
ol->state = OVERLAY_STATUS_DEFERRED_LOADING;
|
||||
|
||||
return true;
|
||||
error:
|
||||
ol->state = OVERLAY_STATUS_DEFERRED_ERROR;
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
bool input_overlay_load_overlays_iterate(input_overlay_t *ol)
|
||||
{
|
||||
bool not_done = true;
|
||||
@ -631,7 +663,7 @@ bool input_overlay_load_overlays(input_overlay_t *ol)
|
||||
ol->size = overlays;
|
||||
ol->pos = 0;
|
||||
|
||||
ol->state = OVERLAY_STATUS_DEFERRED_LOADING;
|
||||
ol->state = OVERLAY_STATUS_DEFERRED_LOADING_IMAGE;
|
||||
|
||||
return true;
|
||||
|
||||
|
@ -72,6 +72,7 @@ enum overlay_status
|
||||
{
|
||||
OVERLAY_STATUS_NONE = 0,
|
||||
OVERLAY_STATUS_DEFERRED_LOAD,
|
||||
OVERLAY_STATUS_DEFERRED_LOADING_IMAGE,
|
||||
OVERLAY_STATUS_DEFERRED_LOADING,
|
||||
OVERLAY_STATUS_DEFERRED_LOADING_RESOLVE,
|
||||
OVERLAY_STATUS_DEFERRED_DONE,
|
||||
@ -182,6 +183,8 @@ input_overlay_t *input_overlay_new(const char *path, bool enable,
|
||||
|
||||
bool input_overlay_load_overlays(input_overlay_t *ol);
|
||||
|
||||
bool input_overlay_load_overlays_image_iterate(input_overlay_t *ol);
|
||||
|
||||
bool input_overlay_load_overlays_iterate(input_overlay_t *ol);
|
||||
|
||||
bool input_overlay_load_overlays_resolve_iterate(input_overlay_t *ol);
|
||||
|
@ -1024,6 +1024,9 @@ void rarch_main_iterate_overlay_state(void)
|
||||
case OVERLAY_STATUS_DEFERRED_LOAD:
|
||||
input_overlay_load_overlays(driver.overlay);
|
||||
break;
|
||||
case OVERLAY_STATUS_DEFERRED_LOADING_IMAGE:
|
||||
input_overlay_load_overlays_image_iterate(driver.overlay);
|
||||
break;
|
||||
case OVERLAY_STATUS_DEFERRED_LOADING:
|
||||
input_overlay_load_overlays_iterate(driver.overlay);
|
||||
break;
|
||||
|
Loading…
x
Reference in New Issue
Block a user