Should show 'rich' labels for Android filesystem choices

This commit is contained in:
twinaphex 2016-07-08 17:11:15 +02:00
parent 8430697116
commit 555c54bdb8
4 changed files with 45 additions and 5 deletions

View File

@ -1831,15 +1831,19 @@ static int frontend_android_parse_drive_list(void *data)
{
file_list_t *list = (file_list_t*)data;
/* FILE_TYPE_DIRECTORY is not working with labels, placeholders for now */
menu_entries_add_enum(list,
app_dir, "Application Dir", MSG_UNKNOWN, FILE_TYPE_DIRECTORY, 0, 0);
app_dir,
msg_hash_to_str(MSG_APPLICATION_DIR),
MSG_APPLICATION_DIR, FILE_TYPE_DIRECTORY, 0, 0);
menu_entries_add_enum(list,
internal_storage_app_path, "External Application Dir", MSG_UNKNOWN,
internal_storage_app_path,
msg_hash_to_str(MSG_EXTERNAL_APPLICATION_DIR),
MSG_EXTERNAL_APPLICATION_DIR,
FILE_TYPE_DIRECTORY, 0, 0);
menu_entries_add_enum(list,
internal_storage_path, "Internal Memory",
MSG_UNKNOWN, FILE_TYPE_DIRECTORY, 0, 0);
internal_storage_path,
msg_hash_to_str(MSG_INTERNAL_MEMORY),
MSG_INTERNAL_MEMORY, FILE_TYPE_DIRECTORY, 0, 0);
menu_entries_add_enum(list, "/", "",
MSG_UNKNOWN, FILE_TYPE_DIRECTORY, 0, 0);

View File

@ -2096,6 +2096,12 @@ const char *msg_hash_to_str_us(enum msg_hash_enums msg)
switch (msg)
{
case MSG_INTERNAL_MEMORY:
return "Internal Memory";
case MSG_EXTERNAL_APPLICATION_DIR:
return "External Application Dir";
case MSG_APPLICATION_DIR:
return "Application Dir";
case MSG_PROGRAM:
return "RetroArch";
case MSG_LIBRETRO_FRONTEND:

View File

@ -36,6 +36,24 @@ static int action_bind_label_information(char *s, size_t len)
return 0;
}
static int action_bind_label_internal_memory(char *s, size_t len)
{
strlcpy(s, msg_hash_to_str(MSG_INTERNAL_MEMORY), len);
return 0;
}
static int action_bind_label_external_application_dir(char *s, size_t len)
{
strlcpy(s, msg_hash_to_str(MSG_EXTERNAL_APPLICATION_DIR), len);
return 0;
}
static int action_bind_label_application_dir(char *s, size_t len)
{
strlcpy(s, msg_hash_to_str(MSG_APPLICATION_DIR), len);
return 0;
}
int menu_cbs_init_bind_label(menu_file_list_cbs_t *cbs,
const char *path, const char *label, unsigned type, size_t idx)
{
@ -48,6 +66,15 @@ int menu_cbs_init_bind_label(menu_file_list_cbs_t *cbs,
{
switch (cbs->enum_idx)
{
case MSG_INTERNAL_MEMORY:
BIND_ACTION_LABEL(cbs, action_bind_label_internal_memory);
break;
case MSG_APPLICATION_DIR:
BIND_ACTION_LABEL(cbs, action_bind_label_application_dir);
break;
case MSG_EXTERNAL_APPLICATION_DIR:
BIND_ACTION_LABEL(cbs, action_bind_label_external_application_dir);
break;
case MENU_ENUM_LABEL_INFORMATION:
BIND_ACTION_LABEL(cbs, action_bind_label_information);
break;

View File

@ -846,6 +846,9 @@ enum msg_hash_enums
MSG_IN_BYTES,
MSG_IN_MEGABYTES,
MSG_IN_GIGABYTES,
MSG_INTERNAL_MEMORY,
MSG_APPLICATION_DIR,
MSG_EXTERNAL_APPLICATION_DIR,
MENU_ENUM_LABEL_ARCHIVE_MODE,
MENU_ENUM_LABEL_VALUE_ARCHIVE_MODE,