Fix Recording Settings

This commit is contained in:
twinaphex 2016-10-08 15:05:31 +02:00
parent 3b1cf79c63
commit b3a7d2a7bb
9 changed files with 104 additions and 30 deletions

View File

@ -2210,8 +2210,12 @@ static const char *menu_hash_to_str_us_label_enum(enum msg_hash_enums msg)
return "input_settings_begin"; return "input_settings_begin";
case MENU_ENUM_LABEL_PLAYLIST_SETTINGS_BEGIN: case MENU_ENUM_LABEL_PLAYLIST_SETTINGS_BEGIN:
return "playlist_settings_begin"; return "playlist_settings_begin";
case MENU_ENUM_LABEL_RECORDING_SETTINGS:
return "recording_settings";
case MENU_ENUM_LABEL_PLAYLIST_SETTINGS: case MENU_ENUM_LABEL_PLAYLIST_SETTINGS:
return "playlist_settings"; return "playlist_settings";
case MENU_ENUM_LABEL_DEFERRED_RECORDING_SETTINGS_LIST:
return "deferred_recording_settings";
case MENU_ENUM_LABEL_DEFERRED_PLAYLIST_SETTINGS_LIST: case MENU_ENUM_LABEL_DEFERRED_PLAYLIST_SETTINGS_LIST:
return "deferred_playlist_settings"; return "deferred_playlist_settings";
case MENU_ENUM_LABEL_INPUT_SETTINGS: case MENU_ENUM_LABEL_INPUT_SETTINGS:

View File

@ -210,6 +210,11 @@ static int deferred_push_input_settings_list(menu_displaylist_info_t *info)
return deferred_push_dlist(info, DISPLAYLIST_INPUT_SETTINGS_LIST); return deferred_push_dlist(info, DISPLAYLIST_INPUT_SETTINGS_LIST);
} }
static int deferred_push_recording_settings_list(menu_displaylist_info_t *info)
{
return deferred_push_dlist(info, DISPLAYLIST_RECORDING_SETTINGS_LIST);
}
static int deferred_push_playlist_settings_list(menu_displaylist_info_t *info) static int deferred_push_playlist_settings_list(menu_displaylist_info_t *info)
{ {
return deferred_push_dlist(info, DISPLAYLIST_PLAYLIST_SETTINGS_LIST); return deferred_push_dlist(info, DISPLAYLIST_PLAYLIST_SETTINGS_LIST);
@ -838,6 +843,9 @@ static int menu_cbs_init_bind_deferred_push_compare_label(
case MENU_ENUM_LABEL_DEFERRED_PLAYLIST_SETTINGS_LIST: case MENU_ENUM_LABEL_DEFERRED_PLAYLIST_SETTINGS_LIST:
BIND_ACTION_DEFERRED_PUSH(cbs, deferred_push_playlist_settings_list); BIND_ACTION_DEFERRED_PUSH(cbs, deferred_push_playlist_settings_list);
break; break;
case MENU_ENUM_LABEL_DEFERRED_RECORDING_SETTINGS_LIST:
BIND_ACTION_DEFERRED_PUSH(cbs, deferred_push_recording_settings_list);
break;
case MENU_ENUM_LABEL_DEFERRED_INPUT_HOTKEY_BINDS_LIST: case MENU_ENUM_LABEL_DEFERRED_INPUT_HOTKEY_BINDS_LIST:
BIND_ACTION_DEFERRED_PUSH(cbs, deferred_push_input_hotkey_binds_list); BIND_ACTION_DEFERRED_PUSH(cbs, deferred_push_input_hotkey_binds_list);
break; break;
@ -1102,6 +1110,9 @@ static int menu_cbs_init_bind_deferred_push_compare_label(
case MENU_LABEL_DEFERRED_PLAYLIST_SETTINGS_LIST: case MENU_LABEL_DEFERRED_PLAYLIST_SETTINGS_LIST:
BIND_ACTION_DEFERRED_PUSH(cbs, deferred_push_playlist_settings_list); BIND_ACTION_DEFERRED_PUSH(cbs, deferred_push_playlist_settings_list);
break; break;
case MENU_LABEL_DEFERRED_RECORDING_SETTINGS_LIST:
BIND_ACTION_DEFERRED_PUSH(cbs, deferred_push_recording_settings_list);
break;
case MENU_LABEL_DEFERRED_INPUT_HOTKEY_BINDS_LIST: case MENU_LABEL_DEFERRED_INPUT_HOTKEY_BINDS_LIST:
BIND_ACTION_DEFERRED_PUSH(cbs, deferred_push_input_hotkey_binds_list); BIND_ACTION_DEFERRED_PUSH(cbs, deferred_push_input_hotkey_binds_list);
break; break;

View File

@ -766,6 +766,14 @@ int generic_action_ok_displaylist_push(const char *path,
info.enum_idx = MENU_ENUM_LABEL_DEFERRED_INPUT_HOTKEY_BINDS_LIST; info.enum_idx = MENU_ENUM_LABEL_DEFERRED_INPUT_HOTKEY_BINDS_LIST;
dl_type = DISPLAYLIST_GENERIC; dl_type = DISPLAYLIST_GENERIC;
break; break;
case ACTION_OK_DL_RECORDING_SETTINGS_LIST:
info.directory_ptr = idx;
info.type = type;
info_path = path;
info_label = msg_hash_to_str(MENU_ENUM_LABEL_DEFERRED_RECORDING_SETTINGS_LIST);
info.enum_idx = MENU_ENUM_LABEL_DEFERRED_RECORDING_SETTINGS_LIST;
dl_type = DISPLAYLIST_GENERIC;
break;
case ACTION_OK_DL_PLAYLIST_SETTINGS_LIST: case ACTION_OK_DL_PLAYLIST_SETTINGS_LIST:
info.directory_ptr = idx; info.directory_ptr = idx;
info.type = type; info.type = type;
@ -3077,6 +3085,14 @@ static int action_ok_push_input_settings_list(const char *path,
ACTION_OK_DL_INPUT_SETTINGS_LIST); ACTION_OK_DL_INPUT_SETTINGS_LIST);
} }
static int action_ok_push_recording_settings_list(const char *path,
const char *label, unsigned type, size_t idx, size_t entry_idx)
{
return generic_action_ok_displaylist_push(path, NULL,
label, type, idx, entry_idx,
ACTION_OK_DL_RECORDING_SETTINGS_LIST);
}
static int action_ok_push_playlist_settings_list(const char *path, static int action_ok_push_playlist_settings_list(const char *path,
const char *label, unsigned type, size_t idx, size_t entry_idx) const char *label, unsigned type, size_t idx, size_t entry_idx)
{ {
@ -3590,6 +3606,9 @@ static int menu_cbs_init_bind_ok_compare_label(menu_file_list_cbs_t *cbs,
case MENU_ENUM_LABEL_PLAYLIST_SETTINGS: case MENU_ENUM_LABEL_PLAYLIST_SETTINGS:
BIND_ACTION_OK(cbs, action_ok_push_playlist_settings_list); BIND_ACTION_OK(cbs, action_ok_push_playlist_settings_list);
break; break;
case MENU_ENUM_LABEL_RECORDING_SETTINGS:
BIND_ACTION_OK(cbs, action_ok_push_recording_settings_list);
break;
case MENU_ENUM_LABEL_INPUT_HOTKEY_BINDS: case MENU_ENUM_LABEL_INPUT_HOTKEY_BINDS:
BIND_ACTION_OK(cbs, action_ok_push_input_hotkey_binds_list); BIND_ACTION_OK(cbs, action_ok_push_input_hotkey_binds_list);
break; break;

View File

@ -170,6 +170,13 @@ static int action_get_core_counters_list(const char *path, const char *label,
return 0; return 0;
} }
static int action_get_recording_settings_list(const char *path, const char *label,
unsigned menu_type, char *s, size_t len)
{
sanitize_to_string(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_RECORDING_SETTINGS), len);
return 0;
}
static int action_get_playlist_settings_list(const char *path, const char *label, static int action_get_playlist_settings_list(const char *path, const char *label,
unsigned menu_type, char *s, size_t len) unsigned menu_type, char *s, size_t len)
{ {
@ -1259,6 +1266,9 @@ static int menu_cbs_init_bind_title_compare_label(menu_file_list_cbs_t *cbs,
case MENU_ENUM_LABEL_DEFERRED_INPUT_SETTINGS_LIST: case MENU_ENUM_LABEL_DEFERRED_INPUT_SETTINGS_LIST:
BIND_ACTION_GET_TITLE(cbs, action_get_input_settings_list); BIND_ACTION_GET_TITLE(cbs, action_get_input_settings_list);
break; break;
case MENU_ENUM_LABEL_DEFERRED_RECORDING_SETTINGS_LIST:
BIND_ACTION_GET_TITLE(cbs, action_get_recording_settings_list);
break;
case MENU_ENUM_LABEL_DEFERRED_PLAYLIST_SETTINGS_LIST: case MENU_ENUM_LABEL_DEFERRED_PLAYLIST_SETTINGS_LIST:
BIND_ACTION_GET_TITLE(cbs, action_get_playlist_settings_list); BIND_ACTION_GET_TITLE(cbs, action_get_playlist_settings_list);
break; break;
@ -1540,6 +1550,9 @@ static int menu_cbs_init_bind_title_compare_label(menu_file_list_cbs_t *cbs,
case MENU_LABEL_DEFERRED_INPUT_SETTINGS_LIST: case MENU_LABEL_DEFERRED_INPUT_SETTINGS_LIST:
BIND_ACTION_GET_TITLE(cbs, action_get_input_settings_list); BIND_ACTION_GET_TITLE(cbs, action_get_input_settings_list);
break; break;
case MENU_LABEL_DEFERRED_RECORDING_SETTINGS_LIST:
BIND_ACTION_GET_TITLE(cbs, action_get_recording_settings_list);
break;
case MENU_LABEL_DEFERRED_PLAYLIST_SETTINGS_LIST: case MENU_LABEL_DEFERRED_PLAYLIST_SETTINGS_LIST:
BIND_ACTION_GET_TITLE(cbs, action_get_playlist_settings_list); BIND_ACTION_GET_TITLE(cbs, action_get_playlist_settings_list);
break; break;

View File

@ -20,7 +20,7 @@
#include "menu_cbs.h" #include "menu_cbs.h"
#include "../verbosity.h" #include "../verbosity.h"
#if 0 #if 1
#define DEBUG_LOG #define DEBUG_LOG
#endif #endif

View File

@ -55,6 +55,7 @@ enum
ACTION_OK_DL_REWIND_SETTINGS_LIST, ACTION_OK_DL_REWIND_SETTINGS_LIST,
ACTION_OK_DL_CORE_SETTINGS_LIST, ACTION_OK_DL_CORE_SETTINGS_LIST,
ACTION_OK_DL_INPUT_HOTKEY_BINDS_LIST, ACTION_OK_DL_INPUT_HOTKEY_BINDS_LIST,
ACTION_OK_DL_RECORDING_SETTINGS_LIST,
ACTION_OK_DL_PLAYLIST_SETTINGS_LIST, ACTION_OK_DL_PLAYLIST_SETTINGS_LIST,
ACTION_OK_DL_ACCOUNTS_LIST, ACTION_OK_DL_ACCOUNTS_LIST,
ACTION_OK_DL_ACCOUNTS_CHEEVOS_LIST, ACTION_OK_DL_ACCOUNTS_CHEEVOS_LIST,

View File

@ -4057,6 +4057,7 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, void *data)
case DISPLAYLIST_CORE_SETTINGS_LIST: case DISPLAYLIST_CORE_SETTINGS_LIST:
case DISPLAYLIST_INPUT_SETTINGS_LIST: case DISPLAYLIST_INPUT_SETTINGS_LIST:
case DISPLAYLIST_PLAYLIST_SETTINGS_LIST: case DISPLAYLIST_PLAYLIST_SETTINGS_LIST:
case DISPLAYLIST_RECORDING_SETTINGS_LIST:
case DISPLAYLIST_AUDIO_FILTERS: case DISPLAYLIST_AUDIO_FILTERS:
case DISPLAYLIST_IMAGES: case DISPLAYLIST_IMAGES:
case DISPLAYLIST_OVERLAYS: case DISPLAYLIST_OVERLAYS:
@ -4330,6 +4331,28 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, void *data)
info->need_push = true; info->need_push = true;
} }
break; break;
case DISPLAYLIST_RECORDING_SETTINGS_LIST:
menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_RECORD_ENABLE,
PARSE_ONLY_BOOL, false);
menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_RECORD_CONFIG,
PARSE_ONLY_PATH, false);
menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_RECORD_PATH,
PARSE_ONLY_STRING, false);
menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_RECORD_USE_OUTPUT_DIRECTORY,
PARSE_ONLY_BOOL, false);
menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_VIDEO_POST_FILTER_RECORD,
PARSE_ONLY_BOOL, false);
menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_VIDEO_GPU_RECORD,
PARSE_ONLY_BOOL, false);
info->need_push = true;
break;
case DISPLAYLIST_PLAYLIST_SETTINGS_LIST: case DISPLAYLIST_PLAYLIST_SETTINGS_LIST:
ret = menu_displaylist_parse_settings_enum(menu, info, ret = menu_displaylist_parse_settings_enum(menu, info,
MENU_ENUM_LABEL_HISTORY_LIST_ENABLE, MENU_ENUM_LABEL_HISTORY_LIST_ENABLE,

View File

@ -130,6 +130,7 @@ enum menu_displaylist_ctl_state
DISPLAYLIST_USER_SETTINGS_LIST, DISPLAYLIST_USER_SETTINGS_LIST,
DISPLAYLIST_DIRECTORY_SETTINGS_LIST, DISPLAYLIST_DIRECTORY_SETTINGS_LIST,
DISPLAYLIST_PRIVACY_SETTINGS_LIST, DISPLAYLIST_PRIVACY_SETTINGS_LIST,
DISPLAYLIST_RECORDING_SETTINGS_LIST,
DISPLAYLIST_PLAYLIST_SETTINGS_LIST, DISPLAYLIST_PLAYLIST_SETTINGS_LIST,
DISPLAYLIST_ACCOUNTS_CHEEVOS_LIST, DISPLAYLIST_ACCOUNTS_CHEEVOS_LIST,
DISPLAYLIST_LOAD_CONTENT_LIST, DISPLAYLIST_LOAD_CONTENT_LIST,

View File

@ -839,6 +839,7 @@ enum msg_hash_enums
MENU_ENUM_LABEL_DEFERRED_CORE_LIST, MENU_ENUM_LABEL_DEFERRED_CORE_LIST,
MENU_ENUM_LABEL_DEFERRED_CORE_UPDATER_LIST, MENU_ENUM_LABEL_DEFERRED_CORE_UPDATER_LIST,
MENU_ENUM_LABEL_DEFERRED_THUMBNAILS_UPDATER_LIST, MENU_ENUM_LABEL_DEFERRED_THUMBNAILS_UPDATER_LIST,
MENU_ENUM_LABEL_DEFERRED_RECORDING_SETTINGS_LIST,
MENU_ENUM_LABEL_DEFERRED_PLAYLIST_SETTINGS_LIST, MENU_ENUM_LABEL_DEFERRED_PLAYLIST_SETTINGS_LIST,
MENU_ENUM_LABEL_DEFERRED_INPUT_SETTINGS_LIST, MENU_ENUM_LABEL_DEFERRED_INPUT_SETTINGS_LIST,
MENU_ENUM_LABEL_DEFERRED_DRIVER_SETTINGS_LIST, MENU_ENUM_LABEL_DEFERRED_DRIVER_SETTINGS_LIST,
@ -1885,6 +1886,7 @@ enum msg_hash_enums
#define MENU_LABEL_DEFERRED_DRIVER_SETTINGS_LIST 0xaa5efefcU #define MENU_LABEL_DEFERRED_DRIVER_SETTINGS_LIST 0xaa5efefcU
#define MENU_LABEL_DEFERRED_VIDEO_SETTINGS_LIST 0x83c65827U #define MENU_LABEL_DEFERRED_VIDEO_SETTINGS_LIST 0x83c65827U
#define MENU_LABEL_DEFERRED_AUDIO_SETTINGS_LIST 0x5bba25e2U #define MENU_LABEL_DEFERRED_AUDIO_SETTINGS_LIST 0x5bba25e2U
#define MENU_LABEL_DEFERRED_RECORDING_SETTINGS_LIST 0x05548d52U
#define MENU_LABEL_DEFERRED_PLAYLIST_SETTINGS_LIST 0x9518e0c7U #define MENU_LABEL_DEFERRED_PLAYLIST_SETTINGS_LIST 0x9518e0c7U
#define MENU_LABEL_DEFERRED_INPUT_SETTINGS_LIST 0x050bec60U #define MENU_LABEL_DEFERRED_INPUT_SETTINGS_LIST 0x050bec60U
#define MENU_LABEL_DEFERRED_USER_BINDS_LIST 0x28c5750eU #define MENU_LABEL_DEFERRED_USER_BINDS_LIST 0x28c5750eU