RetroArch
Classes | Functions | Variables
menu_entries.c File Reference
#include <string.h>
#include <retro_inline.h>
#include <compat/strl.h>
#include <string/stdstring.h>
#include "menu_driver.h"
#include "menu_cbs.h"
#include "../core.h"
#include "../retroarch.h"
#include "../version.h"
Include dependency graph for menu_entries.c:

Classes

struct  menu_list
 

Functions

static void menu_list_free_list (file_list_t *list)
 
static void menu_list_free (menu_list_t *menu_list)
 
static menu_list_tmenu_list_new (void)
 
static file_list_tmenu_list_get (menu_list_t *list, unsigned idx)
 
static file_list_tmenu_list_get_selection (menu_list_t *list, unsigned idx)
 
static size_t menu_list_get_stack_size (menu_list_t *list, size_t idx)
 
static int menu_list_flush_stack_type (const char *needle, const char *label, unsigned type, unsigned final_type)
 
static bool menu_list_pop_stack (menu_list_t *list, size_t idx, size_t *directory_ptr, bool animate)
 
static void menu_list_flush_stack (menu_list_t *list, size_t idx, const char *needle, unsigned final_type)
 
void menu_entries_get_at_offset (const file_list_t *list, size_t idx, const char **path, const char **label, unsigned *file_type, size_t *entry_idx, const char **alt)
 
static bool menu_entries_clear (file_list_t *list)
 
static bool menu_entries_elem_is_dir (file_list_t *list, unsigned offset)
 
static int menu_entries_elem_get_first_char (file_list_t *list, unsigned offset)
 
static void menu_entries_build_scroll_indices (file_list_t *list)
 
static bool menu_entries_refresh (void *data)
 
int menu_entries_get_title (char *s, size_t len)
 
int menu_entries_get_core_name (char *s, size_t len)
 
int menu_entries_get_core_title (char *s, size_t len)
 
file_list_tmenu_entries_get_menu_stack_ptr (size_t idx)
 
file_list_tmenu_entries_get_selection_buf_ptr (size_t idx)
 
static bool menu_entries_init (void)
 
void menu_entries_set_checked (file_list_t *list, size_t entry_idx, bool checked)
 
void menu_entries_append (file_list_t *list, const char *path, const char *label, unsigned type, size_t directory_ptr, size_t entry_idx)
 
void menu_entries_append_enum (file_list_t *list, const char *path, const char *label, enum msg_hash_enums enum_idx, unsigned type, size_t directory_ptr, size_t entry_idx)
 
void menu_entries_prepend (file_list_t *list, const char *path, const char *label, enum msg_hash_enums enum_idx, unsigned type, size_t directory_ptr, size_t entry_idx)
 
menu_file_list_cbs_tmenu_entries_get_last_stack_actiondata (void)
 
void menu_entries_get_last_stack (const char **path, const char **label, unsigned *file_type, enum msg_hash_enums *enum_idx, size_t *entry_idx)
 
void menu_entries_flush_stack (const char *needle, unsigned final_type)
 
void menu_entries_pop_stack (size_t *ptr, size_t idx, bool animate)
 
size_t menu_entries_get_stack_size (size_t idx)
 
size_t menu_entries_get_size (void)
 
rarch_setting_tmenu_entries_get_setting (uint32_t i)
 
bool menu_entries_ctl (enum menu_entries_ctl_state state, void *data)
 

Variables

static bool menu_entries_need_refresh = false
 
static bool menu_entries_nonblocking_refresh = false
 
static size_t menu_entries_begin = 0
 
static rarch_setting_tmenu_entries_list_settings = NULL
 
static menu_list_tmenu_entries_list = NULL
 

Function Documentation

◆ menu_entries_append()

void menu_entries_append ( file_list_t list,
const char *  path,
const char *  label,
unsigned  type,
size_t  directory_ptr,
size_t  entry_idx 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ menu_entries_append_enum()

void menu_entries_append_enum ( file_list_t list,
const char *  path,
const char *  label,
enum msg_hash_enums  enum_idx,
unsigned  type,
size_t  directory_ptr,
size_t  entry_idx 
)
Here is the call graph for this function:

◆ menu_entries_build_scroll_indices()

static void menu_entries_build_scroll_indices ( file_list_t list)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ menu_entries_clear()

static bool menu_entries_clear ( file_list_t list)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ menu_entries_ctl()

bool menu_entries_ctl ( enum menu_entries_ctl_state  state,
void data 
)
Here is the call graph for this function:

◆ menu_entries_elem_get_first_char()

static int menu_entries_elem_get_first_char ( file_list_t list,
unsigned  offset 
)
static

menu_entries_elem_get_first_char: : File list handle. : Offset index of element.

Gets the first character of an element in the file list.

Returns: first character of element in file list.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ menu_entries_elem_is_dir()

static bool menu_entries_elem_is_dir ( file_list_t list,
unsigned  offset 
)
static

menu_entries_elem_is_dir: : File list handle. : Offset index of element.

Is the current entry at offset a directory?

Returns: true (1) if entry is a directory, otherwise false (0).

Here is the call graph for this function:
Here is the caller graph for this function:

◆ menu_entries_flush_stack()

void menu_entries_flush_stack ( const char *  needle,
unsigned  final_type 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ menu_entries_get_at_offset()

void menu_entries_get_at_offset ( const file_list_t list,
size_t  idx,
const char **  path,
const char **  label,
unsigned *  file_type,
size_t *  entry_idx,
const char **  alt 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ menu_entries_get_core_name()

int menu_entries_get_core_name ( char *  s,
size_t  len 
)
Here is the call graph for this function:

◆ menu_entries_get_core_title()

int menu_entries_get_core_title ( char *  s,
size_t  len 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ menu_entries_get_last_stack()

void menu_entries_get_last_stack ( const char **  path,
const char **  label,
unsigned *  file_type,
enum msg_hash_enums enum_idx,
size_t *  entry_idx 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ menu_entries_get_last_stack_actiondata()

menu_file_list_cbs_t* menu_entries_get_last_stack_actiondata ( void  )
Here is the call graph for this function:
Here is the caller graph for this function:

◆ menu_entries_get_menu_stack_ptr()

file_list_t* menu_entries_get_menu_stack_ptr ( size_t  idx)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ menu_entries_get_selection_buf_ptr()

file_list_t* menu_entries_get_selection_buf_ptr ( size_t  idx)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ menu_entries_get_setting()

rarch_setting_t* menu_entries_get_setting ( uint32_t  i)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ menu_entries_get_size()

size_t menu_entries_get_size ( void  )
Here is the call graph for this function:
Here is the caller graph for this function:

◆ menu_entries_get_stack_size()

size_t menu_entries_get_stack_size ( size_t  idx)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ menu_entries_get_title()

int menu_entries_get_title ( char *  s,
size_t  len 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ menu_entries_init()

static bool menu_entries_init ( void  )
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ menu_entries_pop_stack()

void menu_entries_pop_stack ( size_t *  ptr,
size_t  idx,
bool  animate 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ menu_entries_prepend()

void menu_entries_prepend ( file_list_t list,
const char *  path,
const char *  label,
enum msg_hash_enums  enum_idx,
unsigned  type,
size_t  directory_ptr,
size_t  entry_idx 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ menu_entries_refresh()

static bool menu_entries_refresh ( void data)
static

Before a refresh, we could have deleted a file on disk, causing selection_ptr to suddendly be out of range.

Ensure it doesn't overflow.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ menu_entries_set_checked()

void menu_entries_set_checked ( file_list_t list,
size_t  entry_idx,
bool  checked 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ menu_list_flush_stack()

static void menu_list_flush_stack ( menu_list_t list,
size_t  idx,
const char *  needle,
unsigned  final_type 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ menu_list_flush_stack_type()

static int menu_list_flush_stack_type ( const char *  needle,
const char *  label,
unsigned  type,
unsigned  final_type 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ menu_list_free()

static void menu_list_free ( menu_list_t menu_list)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ menu_list_free_list()

static void menu_list_free_list ( file_list_t list)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ menu_list_get()

static file_list_t* menu_list_get ( menu_list_t list,
unsigned  idx 
)
static
Here is the caller graph for this function:

◆ menu_list_get_selection()

static file_list_t* menu_list_get_selection ( menu_list_t list,
unsigned  idx 
)
static
Here is the caller graph for this function:

◆ menu_list_get_stack_size()

static size_t menu_list_get_stack_size ( menu_list_t list,
size_t  idx 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ menu_list_new()

static menu_list_t* menu_list_new ( void  )
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ menu_list_pop_stack()

static bool menu_list_pop_stack ( menu_list_t list,
size_t  idx,
size_t *  directory_ptr,
bool  animate 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

Variable Documentation

◆ menu_entries_begin

size_t menu_entries_begin = 0
static

◆ menu_entries_list

menu_list_t* menu_entries_list = NULL
static

◆ menu_entries_list_settings

rarch_setting_t* menu_entries_list_settings = NULL
static

◆ menu_entries_need_refresh

bool menu_entries_need_refresh = false
static

◆ menu_entries_nonblocking_refresh

bool menu_entries_nonblocking_refresh = false
static