uint32_t menu_entry_num_has_range(uint32_t i) { rarch_setting_t *setting = menu_entries_get_setting(i); uint64_t flags = menu_setting_get_flags(setting); return (flags & SD_FLAG_HAS_RANGE); }
bool menu_entry_pathdir_allow_empty(uint32_t i) { rarch_setting_t *setting = menu_entries_get_setting(i); uint64_t flags = menu_setting_get_flags(setting); return flags & SD_FLAG_ALLOW_EMPTY; }
uint32_t menu_entry_pathdir_for_directory(uint32_t i) { rarch_setting_t *setting = menu_entries_get_setting(i); uint64_t flags = menu_setting_get_flags(setting); return flags & SD_FLAG_PATH_DIR; }
void menu_entry_pathdir_selected(uint32_t i) { rarch_setting_t *setting = menu_entries_get_setting(i); if (menu_setting_ctl(MENU_SETTING_CTL_IS_OF_PATH_TYPE, (void*)setting)) menu_setting_ctl(MENU_SETTING_CTL_ACTION_RIGHT, setting); }
void menu_entry_bind_joyaxis_set(uint32_t i, int32_t value) { rarch_setting_t *setting = menu_entries_get_setting(i); struct retro_keybind *keybind = (struct retro_keybind*) setting_get_ptr(setting); if (keybind) keybind->joyaxis = value; }
uint32_t menu_entry_get_bool_value(uint32_t i) { rarch_setting_t *setting = menu_entries_get_setting(i); bool *ptr = (bool*)setting_get_ptr(setting); if (!ptr) return 0; return *ptr; }
int32_t menu_entry_bind_index(uint32_t i) { rarch_setting_t *setting = menu_entries_get_setting(i); if (setting) return setting->index - 1; return 0; }
int32_t menu_entry_bind_index(uint32_t i) { rarch_setting_t *setting = menu_entries_get_setting(i); uint32_t index = menu_setting_get_index(setting); if (index) return index - 1; return 0; }
struct string_list *menu_entry_enum_values(uint32_t i) { rarch_setting_t *setting = menu_entries_get_setting(i); const char *values = menu_setting_get_values(setting); if (!values) return NULL; return string_split(values, "|"); }
void menu_entry_pathdir_extensions(uint32_t i, char *s, size_t len) { rarch_setting_t *setting = menu_entries_get_setting(i); const char *values = menu_setting_get_values(setting); if (!values) return; strlcpy(s, values, len); }
enum menu_entry_type menu_entry_get_type(uint32_t i) { rarch_setting_t *setting = menu_entries_get_setting(i); /* XXX Really a special kind of ST_ACTION, but this should be changed */ if (menu_setting_ctl(MENU_SETTING_CTL_IS_OF_PATH_TYPE, (void*)setting)) return MENU_ENTRY_PATH; if (setting) { enum setting_type setting_type = menu_setting_get_type(setting); switch (setting_type) { case ST_BOOL: return MENU_ENTRY_BOOL; case ST_BIND: return MENU_ENTRY_BIND; case ST_INT: return MENU_ENTRY_INT; case ST_UINT: return MENU_ENTRY_UINT; case ST_FLOAT: return MENU_ENTRY_FLOAT; case ST_PATH: return MENU_ENTRY_PATH; case ST_DIR: return MENU_ENTRY_DIR; case ST_STRING_OPTIONS: return MENU_ENTRY_ENUM; case ST_STRING: return MENU_ENTRY_STRING; case ST_HEX: return MENU_ENTRY_HEX; default: break; } } return MENU_ENTRY_ACTION; }
float menu_entry_num_max(uint32_t i) { rarch_setting_t *setting = menu_entries_get_setting(i); double max = menu_setting_get_max(setting); return (float)max; }
float menu_entry_num_min(uint32_t i) { rarch_setting_t *setting = menu_entries_get_setting(i); double min = menu_setting_get_min(setting); return (float)min; }
void menu_entry_set_value(uint32_t i, const char *s) { rarch_setting_t *setting = menu_entries_get_setting(i); menu_setting_set_with_string_representation(setting, s); }
void menu_entry_pathdir_selected(uint32_t i) { rarch_setting_t *setting = menu_entries_get_setting(i); if (menu_setting_is_of_path_type(setting)) menu_setting_action_right(setting, false); }