mirror of
https://github.com/libretro/RetroArch
synced 2025-03-02 19:13:34 +00:00
Get rid of some menu shader functions
This commit is contained in:
parent
502f3ddc74
commit
f0f3df3043
@ -160,8 +160,8 @@ static void menu_action_setting_disp_set_label_shader_filter_pass(
|
||||
const char *path,
|
||||
char *s2, size_t len2)
|
||||
{
|
||||
struct video_shader_pass *shader_pass = menu_shader_manager_get_pass(
|
||||
type - MENU_SETTINGS_SHADER_PASS_FILTER_0);
|
||||
struct video_shader *shader = menu_shader_get();
|
||||
struct video_shader_pass *shader_pass = shader ? &shader->pass[type - MENU_SETTINGS_SHADER_PASS_FILTER_0] : NULL;
|
||||
|
||||
*s = '\0';
|
||||
*w = 19;
|
||||
@ -374,10 +374,13 @@ static void menu_action_setting_disp_set_label_shader_num_passes(
|
||||
const char *path,
|
||||
char *s2, size_t len2)
|
||||
{
|
||||
struct video_shader *shader = menu_shader_get();
|
||||
unsigned pass_count = shader ? shader->passes : 0;
|
||||
|
||||
*s = '\0';
|
||||
*w = 19;
|
||||
strlcpy(s2, path, len2);
|
||||
snprintf(s, len, "%u", menu_shader_manager_get_amount_passes());
|
||||
snprintf(s, len, "%u", pass_count);
|
||||
}
|
||||
|
||||
static void menu_action_setting_disp_set_label_shader_pass(
|
||||
@ -389,8 +392,8 @@ static void menu_action_setting_disp_set_label_shader_pass(
|
||||
const char *path,
|
||||
char *s2, size_t len2)
|
||||
{
|
||||
struct video_shader_pass *shader_pass = menu_shader_manager_get_pass(
|
||||
type - MENU_SETTINGS_SHADER_PASS_0);
|
||||
struct video_shader *shader = menu_shader_get();
|
||||
struct video_shader_pass *shader_pass = shader ? &shader->pass[type - MENU_SETTINGS_SHADER_PASS_0] : NULL;
|
||||
|
||||
*s = '\0';
|
||||
*w = 19;
|
||||
@ -468,9 +471,10 @@ static void menu_action_setting_disp_set_label_shader_preset_parameter(
|
||||
const char *path,
|
||||
char *s2, size_t len2)
|
||||
{
|
||||
const struct video_shader_parameter *param =
|
||||
menu_shader_manager_get_parameters(
|
||||
type - MENU_SETTINGS_SHADER_PRESET_PARAMETER_0);
|
||||
struct video_shader *shader = menu_shader_get();
|
||||
struct video_shader_parameter *param = shader ?
|
||||
&shader->parameters[type - MENU_SETTINGS_SHADER_PRESET_PARAMETER_0]
|
||||
: NULL;
|
||||
|
||||
*s = '\0';
|
||||
*w = 19;
|
||||
@ -490,10 +494,10 @@ static void menu_action_setting_disp_set_label_shader_scale_pass(
|
||||
const char *path,
|
||||
char *s2, size_t len2)
|
||||
{
|
||||
unsigned pass = 0;
|
||||
unsigned scale_value = 0;
|
||||
struct video_shader_pass *shader_pass = menu_shader_manager_get_pass(
|
||||
type - MENU_SETTINGS_SHADER_PASS_SCALE_0);
|
||||
unsigned pass = 0;
|
||||
unsigned scale_value = 0;
|
||||
struct video_shader *shader = menu_shader_get();
|
||||
struct video_shader_pass *shader_pass = shader ? &shader->pass[type - MENU_SETTINGS_SHADER_PASS_SCALE_0] : NULL;
|
||||
|
||||
*s = '\0';
|
||||
*w = 19;
|
||||
|
@ -61,6 +61,7 @@ static int generic_shader_action_parameter_left(
|
||||
static int shader_action_parameter_left(unsigned type, const char *label, bool wraparound)
|
||||
{
|
||||
video_shader_ctx_t shader_info;
|
||||
struct video_shader *shader = menu_shader_get();
|
||||
struct video_shader_parameter *param = NULL;
|
||||
|
||||
video_shader_driver_get_current_shader(&shader_info);
|
||||
@ -70,8 +71,8 @@ static int shader_action_parameter_left(unsigned type, const char *label, bool w
|
||||
return menu_cbs_exit();
|
||||
generic_shader_action_parameter_left(param, type, label, wraparound);
|
||||
|
||||
param = menu_shader_manager_get_parameters(
|
||||
type - MENU_SETTINGS_SHADER_PARAMETER_0);
|
||||
param = shader ? &shader->parameters[type -
|
||||
MENU_SETTINGS_SHADER_PARAMETER_0] : NULL;
|
||||
if (!param)
|
||||
return menu_cbs_exit();
|
||||
return generic_shader_action_parameter_left(param, type, label, wraparound);
|
||||
@ -229,7 +230,8 @@ static int action_left_shader_scale_pass(unsigned type, const char *label,
|
||||
unsigned current_scale, delta;
|
||||
unsigned pass = type -
|
||||
MENU_SETTINGS_SHADER_PASS_SCALE_0;
|
||||
struct video_shader_pass *shader_pass = menu_shader_manager_get_pass(pass);
|
||||
struct video_shader *shader = menu_shader_get();
|
||||
struct video_shader_pass *shader_pass = shader ? &shader->pass[pass] : NULL;
|
||||
|
||||
if (!shader_pass)
|
||||
return menu_cbs_exit();
|
||||
@ -249,7 +251,8 @@ static int action_left_shader_filter_pass(unsigned type, const char *label,
|
||||
{
|
||||
unsigned delta = 2;
|
||||
unsigned pass = type - MENU_SETTINGS_SHADER_PASS_FILTER_0;
|
||||
struct video_shader_pass *shader_pass = menu_shader_manager_get_pass(pass);
|
||||
struct video_shader *shader = menu_shader_get();
|
||||
struct video_shader_pass *shader_pass = shader ? &shader->pass[pass] : NULL;
|
||||
|
||||
if (!shader_pass)
|
||||
return menu_cbs_exit();
|
||||
@ -289,11 +292,12 @@ static int action_left_shader_num_passes(unsigned type, const char *label,
|
||||
{
|
||||
bool refresh = false;
|
||||
struct video_shader *shader = menu_shader_get();
|
||||
unsigned pass_count = shader ? shader->passes : 0;
|
||||
|
||||
if (!shader)
|
||||
return menu_cbs_exit();
|
||||
|
||||
if (menu_shader_manager_get_amount_passes())
|
||||
if (pass_count > 0)
|
||||
menu_shader_manager_decrement_amount_passes();
|
||||
|
||||
menu_entries_ctl(MENU_ENTRIES_CTL_SET_REFRESH, &refresh);
|
||||
|
@ -1150,8 +1150,9 @@ static int generic_action_ok(const char *path,
|
||||
break;
|
||||
case ACTION_OK_LOAD_SHADER_PASS:
|
||||
{
|
||||
struct video_shader_pass *shader_pass = menu_shader_manager_get_pass((unsigned)hack_shader_pass);
|
||||
flush_char = msg_hash_to_str((enum msg_hash_enums)flush_id);
|
||||
struct video_shader *shader = menu_shader_get();
|
||||
struct video_shader_pass *shader_pass = shader ? &shader->pass[(unsigned)hack_shader_pass] : NULL;
|
||||
flush_char = msg_hash_to_str((enum msg_hash_enums)flush_id);
|
||||
strlcpy(
|
||||
shader_pass->source.path,
|
||||
action_path,
|
||||
|
@ -64,6 +64,7 @@ static int generic_shader_action_parameter_right(struct video_shader_parameter *
|
||||
int shader_action_parameter_right(unsigned type, const char *label, bool wraparound)
|
||||
{
|
||||
video_shader_ctx_t shader_info;
|
||||
struct video_shader *shader = menu_shader_get();
|
||||
struct video_shader_parameter *param = NULL;
|
||||
|
||||
video_shader_driver_get_current_shader(&shader_info);
|
||||
@ -73,8 +74,8 @@ int shader_action_parameter_right(unsigned type, const char *label, bool wraparo
|
||||
if (!param)
|
||||
return menu_cbs_exit();
|
||||
generic_shader_action_parameter_right(param, type, label, wraparound);
|
||||
param = menu_shader_manager_get_parameters(
|
||||
type - MENU_SETTINGS_SHADER_PARAMETER_0);
|
||||
param = &shader_info.data->parameters[type -
|
||||
MENU_SETTINGS_SHADER_PARAMETER_0];
|
||||
if (!param)
|
||||
return menu_cbs_exit();
|
||||
return generic_shader_action_parameter_right(param, type, label, wraparound);
|
||||
@ -239,7 +240,8 @@ static int action_right_shader_scale_pass(unsigned type, const char *label,
|
||||
unsigned current_scale, delta;
|
||||
unsigned pass =
|
||||
type - MENU_SETTINGS_SHADER_PASS_SCALE_0;
|
||||
struct video_shader_pass *shader_pass = menu_shader_manager_get_pass(pass);
|
||||
struct video_shader *shader = menu_shader_get();
|
||||
struct video_shader_pass *shader_pass = shader ? &shader->pass[pass] : NULL;
|
||||
|
||||
if (!shader_pass)
|
||||
return menu_cbs_exit();
|
||||
@ -258,7 +260,8 @@ static int action_right_shader_filter_pass(unsigned type, const char *label,
|
||||
{
|
||||
unsigned pass = type - MENU_SETTINGS_SHADER_PASS_FILTER_0;
|
||||
unsigned delta = 1;
|
||||
struct video_shader_pass *shader_pass = menu_shader_manager_get_pass(pass);
|
||||
struct video_shader *shader = menu_shader_get();
|
||||
struct video_shader_pass *shader_pass = shader ? &shader->pass[pass] : NULL;
|
||||
|
||||
if (!shader_pass)
|
||||
return menu_cbs_exit();
|
||||
@ -297,11 +300,12 @@ static int action_right_shader_num_passes(unsigned type, const char *label,
|
||||
{
|
||||
bool refresh = false;
|
||||
struct video_shader *shader = menu_shader_get();
|
||||
unsigned pass_count = shader ? shader->passes : 0;
|
||||
|
||||
if (!shader)
|
||||
return menu_cbs_exit();
|
||||
|
||||
if ((menu_shader_manager_get_amount_passes() < GFX_MAX_SHADERS))
|
||||
if (pass_count < GFX_MAX_SHADERS)
|
||||
menu_shader_manager_increment_amount_passes();
|
||||
|
||||
menu_entries_ctl(MENU_ENTRIES_CTL_SET_REFRESH, &refresh);
|
||||
|
@ -1363,7 +1363,8 @@ error:
|
||||
static int menu_displaylist_parse_shader_options(menu_displaylist_info_t *info)
|
||||
{
|
||||
unsigned i;
|
||||
unsigned pass_count = menu_shader_manager_get_amount_passes();
|
||||
struct video_shader *shader = menu_shader_get();
|
||||
unsigned pass_count = shader ? shader->passes : 0;
|
||||
|
||||
menu_entries_append_enum(info->list,
|
||||
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_SHADER_APPLY_CHANGES),
|
||||
|
@ -44,36 +44,6 @@ struct video_shader *menu_shader_get(void)
|
||||
return NULL;
|
||||
}
|
||||
|
||||
struct video_shader_parameter *menu_shader_manager_get_parameters(unsigned i)
|
||||
{
|
||||
struct video_shader *shader = menu_shader_get();
|
||||
|
||||
if (!shader)
|
||||
return NULL;
|
||||
|
||||
return &shader->parameters[i];
|
||||
}
|
||||
|
||||
struct video_shader_pass *menu_shader_manager_get_pass(unsigned i)
|
||||
{
|
||||
struct video_shader *shader = menu_shader_get();
|
||||
|
||||
if (!shader)
|
||||
return NULL;
|
||||
|
||||
return &shader->pass[i];
|
||||
}
|
||||
|
||||
unsigned menu_shader_manager_get_amount_passes(void)
|
||||
{
|
||||
struct video_shader *shader = menu_shader_get();
|
||||
|
||||
if (!shader)
|
||||
return 0;
|
||||
|
||||
return shader->passes;
|
||||
}
|
||||
|
||||
void menu_shader_manager_decrement_amount_passes(void)
|
||||
{
|
||||
struct video_shader *shader = menu_shader_get();
|
||||
@ -444,8 +414,9 @@ int menu_shader_manager_clear_num_passes(void)
|
||||
|
||||
int menu_shader_manager_clear_parameter(unsigned i)
|
||||
{
|
||||
struct video_shader_parameter *param =
|
||||
menu_shader_manager_get_parameters(i);
|
||||
struct video_shader *shader = menu_shader_get();
|
||||
struct video_shader_parameter *param = shader ?
|
||||
&shader->parameters[i] : NULL;
|
||||
|
||||
if (!param)
|
||||
return 0;
|
||||
@ -459,8 +430,9 @@ int menu_shader_manager_clear_parameter(unsigned i)
|
||||
|
||||
int menu_shader_manager_clear_pass_filter(unsigned i)
|
||||
{
|
||||
struct video_shader_pass *shader_pass =
|
||||
menu_shader_manager_get_pass(i);
|
||||
struct video_shader *shader = menu_shader_get();
|
||||
struct video_shader_pass *shader_pass = shader ?
|
||||
&shader->pass[i] : NULL;
|
||||
|
||||
if (!shader_pass)
|
||||
return -1;
|
||||
@ -472,8 +444,9 @@ int menu_shader_manager_clear_pass_filter(unsigned i)
|
||||
|
||||
void menu_shader_manager_clear_pass_scale(unsigned i)
|
||||
{
|
||||
struct video_shader_pass *shader_pass =
|
||||
menu_shader_manager_get_pass(i);
|
||||
struct video_shader *shader = menu_shader_get();
|
||||
struct video_shader_pass *shader_pass = shader ?
|
||||
&shader->pass[i] : NULL;
|
||||
|
||||
if (!shader_pass)
|
||||
return;
|
||||
@ -485,8 +458,9 @@ void menu_shader_manager_clear_pass_scale(unsigned i)
|
||||
|
||||
void menu_shader_manager_clear_pass_path(unsigned i)
|
||||
{
|
||||
struct video_shader_pass *shader_pass =
|
||||
menu_shader_manager_get_pass(i);
|
||||
struct video_shader *shader = menu_shader_get();
|
||||
struct video_shader_pass *shader_pass = shader ?
|
||||
&shader->pass[i] : NULL;
|
||||
|
||||
if (shader_pass)
|
||||
*shader_pass->source.path = '\0';
|
||||
|
@ -23,13 +23,7 @@
|
||||
|
||||
RETRO_BEGIN_DECLS
|
||||
|
||||
struct video_shader *menu_shader_get();
|
||||
|
||||
struct video_shader_parameter *menu_shader_manager_get_parameters(unsigned i);
|
||||
|
||||
struct video_shader_pass *menu_shader_manager_get_pass(unsigned i);
|
||||
|
||||
unsigned menu_shader_manager_get_amount_passes(void);
|
||||
struct video_shader *menu_shader_get(void);
|
||||
|
||||
void menu_shader_manager_free(void);
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user