Wrap some more settings manipulation

This commit is contained in:
twinaphex 2017-04-25 15:31:32 +02:00
parent 83684df3e9
commit 15a8f0c485
6 changed files with 38 additions and 15 deletions

View File

@ -505,6 +505,10 @@ typedef struct settings
settings->modified = true; \ settings->modified = true; \
var = newvar var = newvar
#define configuration_set_uint(settings, var, newvar) \
settings->modified = true; \
var = newvar
#define configuration_set_int(settings, var, newvar) \ #define configuration_set_int(settings, var, newvar) \
settings->modified = true; \ settings->modified = true; \
var = newvar var = newvar

View File

@ -577,13 +577,14 @@ void d3d_device_free(LPDIRECT3DDEVICE dev, LPDIRECT3D pd3d)
D3DTEXTUREFILTERTYPE d3d_translate_filter(unsigned type) D3DTEXTUREFILTERTYPE d3d_translate_filter(unsigned type)
{ {
settings_t *settings = config_get_ptr();
switch (type) switch (type)
{ {
case RARCH_FILTER_UNSPEC: case RARCH_FILTER_UNSPEC:
{
settings_t *settings = config_get_ptr();
if (!settings->video.smooth) if (!settings->video.smooth)
break; break;
}
/* fall-through */ /* fall-through */
case RARCH_FILTER_LINEAR: case RARCH_FILTER_LINEAR:
return D3DTEXF_LINEAR; return D3DTEXF_LINEAR;

View File

@ -834,11 +834,11 @@ void win32_set_window(unsigned *width, unsigned *height,
bool fullscreen, bool windowed_full, void *rect_data) bool fullscreen, bool windowed_full, void *rect_data)
{ {
#ifndef _XBOX #ifndef _XBOX
settings_t *settings = config_get_ptr();
RECT *rect = (RECT*)rect_data; RECT *rect = (RECT*)rect_data;
if (!fullscreen || windowed_full) if (!fullscreen || windowed_full)
{ {
settings_t *settings = config_get_ptr();
const ui_window_t *window = ui_companion_driver_get_window_ptr(); const ui_window_t *window = ui_companion_driver_get_window_ptr();
if (!fullscreen && settings->ui.menubar_enable) if (!fullscreen && settings->ui.menubar_enable)

View File

@ -33,8 +33,10 @@ static bool slang_texture_semantic_is_array(slang_texture_semantic sem)
return true; return true;
default: default:
return false; break;
} }
return false;
} }
slang_reflection::slang_reflection() slang_reflection::slang_reflection()

View File

@ -58,7 +58,9 @@ static void input_autoconfigure_joypad_reindex_devices(autoconfig_params_t *para
settings_t *settings = config_get_ptr(); settings_t *settings = config_get_ptr();
for(i = 0; i < params->max_users; i++) for(i = 0; i < params->max_users; i++)
settings->input.device_name_index[i] = 0; {
configuration_set_uint(settings, settings->input.device_name_index[i], 0);
}
for(i = 0; i < params->max_users; i++) for(i = 0; i < params->max_users; i++)
{ {
@ -70,7 +72,10 @@ static void input_autoconfigure_joypad_reindex_devices(autoconfig_params_t *para
{ {
if(string_is_equal(tmp, settings->input.device_names[j]) if(string_is_equal(tmp, settings->input.device_names[j])
&& settings->input.device_name_index[i] == 0) && settings->input.device_name_index[i] == 0)
settings->input.device_name_index[j] = k++; {
configuration_set_uint(settings, settings->input.device_name_index[j], k);
k++;
}
} }
} }
} }
@ -152,7 +157,9 @@ static void input_autoconfigure_joypad_add(config_file_t *conf,
block_osd_spam = settings->input.autoconfigured[params->idx] block_osd_spam = settings->input.autoconfigured[params->idx]
&& !string_is_empty(params->name); && !string_is_empty(params->name);
settings->input.autoconfigured[params->idx] = true; configuration_set_bool(settings,
settings->input.autoconfigured[params->idx], true);
input_autoconfigure_joypad_conf(conf, input_autoconfigure_joypad_conf(conf,
settings->input.autoconf_binds[params->idx]); settings->input.autoconf_binds[params->idx]);
@ -165,7 +172,9 @@ static void input_autoconfigure_joypad_add(config_file_t *conf,
task_set_title(task, strdup(msg)); task_set_title(task, strdup(msg));
remote_is_bound = true; remote_is_bound = true;
if (params->idx == 0) if (params->idx == 0)
settings->input.swap_override = true; {
configuration_set_bool(settings, settings->input.swap_override, true);
}
} }
else else
{ {
@ -177,8 +186,12 @@ static void input_autoconfigure_joypad_add(config_file_t *conf,
/* allow overriding the swap menu controls for player 1*/ /* allow overriding the swap menu controls for player 1*/
if (params->idx == 0) if (params->idx == 0)
{
if (config_get_bool(conf, "input_swap_override", &tmp)) if (config_get_bool(conf, "input_swap_override", &tmp))
settings->input.swap_override = tmp; {
configuration_set_bool(settings, settings->input.swap_override, tmp);
}
}
if (!block_osd_spam) if (!block_osd_spam)
task_set_title(task, strdup(msg)); task_set_title(task, strdup(msg));
@ -423,8 +436,9 @@ bool input_autoconfigure_connect(
state->max_users = settings->input.max_users; state->max_users = settings->input.max_users;
input_config_set_device_name(state->idx, state->name); input_config_set_device_name(state->idx, state->name);
settings->input.pid[state->idx] = state->pid;
settings->input.vid[state->idx] = state->vid; configuration_set_int(settings, settings->input.pid[state->idx], state->pid);
configuration_set_int(settings, settings->input.vid[state->idx], state->vid);
for (i = 0; i < RARCH_BIND_LIST_END; i++) for (i = 0; i < RARCH_BIND_LIST_END; i++)
@ -434,7 +448,9 @@ bool input_autoconfigure_connect(
settings->input.autoconf_binds[state->idx][i].joykey_label[0] = '\0'; settings->input.autoconf_binds[state->idx][i].joykey_label[0] = '\0';
settings->input.autoconf_binds[state->idx][i].joyaxis_label[0] = '\0'; settings->input.autoconf_binds[state->idx][i].joyaxis_label[0] = '\0';
} }
settings->input.autoconfigured[state->idx] = false;
configuration_set_bool(settings,
settings->input.autoconfigured[state->idx], false);
task->state = state; task->state = state;
task->handler = input_autoconfigure_connect_handler; task->handler = input_autoconfigure_connect_handler;