Blender  V3.3
Macros | Functions
fsmenu.h File Reference

Go to the source code of this file.

Macros

#define FSMENU_RECENT_MAX   10
 

Functions

void fsmenu_insert_entry (struct FSMenu *fsmenu, enum FSMenuCategory category, const char *path, const char *name, int icon, enum FSMenuInsert flag)
 
void fsmenu_entry_refresh_valid (struct FSMenuEntry *fsentry)
 
short fsmenu_can_save (struct FSMenu *fsmenu, enum FSMenuCategory category, int idx)
 
void fsmenu_remove_entry (struct FSMenu *fsmenu, enum FSMenuCategory category, int idx)
 
void fsmenu_write_file (struct FSMenu *fsmenu, const char *filepath)
 
void fsmenu_read_bookmarks (struct FSMenu *fsmenu, const char *filepath)
 
void fsmenu_read_system (struct FSMenu *fsmenu, int read_bookmarks)
 
void fsmenu_free (void)
 
void fsmenu_refresh_system_category (struct FSMenu *fsmenu)
 
void fsmenu_refresh_bookmarks_status (struct wmWindowManager *wm, struct FSMenu *fsmenu)
 
int fsmenu_get_active_indices (struct FSMenu *fsmenu, enum FSMenuCategory category, const char *dir)
 

Macro Definition Documentation

◆ FSMENU_RECENT_MAX

#define FSMENU_RECENT_MAX   10

Definition at line 11 of file fsmenu.h.

Function Documentation

◆ fsmenu_can_save()

short fsmenu_can_save ( struct FSMenu fsmenu,
enum FSMenuCategory  category,
int  idx 
)

Return whether the entry was created by the user and can be saved and deleted

Definition at line 354 of file fsmenu.c.

References ED_fsmenu_get_category(), FSMenuEntry::next, and FSMenuEntry::save.

◆ fsmenu_entry_refresh_valid()

void fsmenu_entry_refresh_valid ( struct FSMenuEntry fsentry)

Refresh 'valid' status of given menu entry

Definition at line 329 of file fsmenu.c.

References BLI_is_dir(), NULL, FSMenuEntry::path, STRCASEEQLEN, and FSMenuEntry::valid.

Referenced by fsmenu_bookmark_validate_job_startjob(), and fsmenu_insert_entry().

◆ fsmenu_free()

void fsmenu_free ( void  )

Free's all the memory associated with the fsmenu

Definition at line 1082 of file fsmenu.c.

References fsmenu_free_ex(), and g_fsmenu.

Referenced by ED_file_exit(), and ED_file_read_bookmarks().

◆ fsmenu_get_active_indices()

int fsmenu_get_active_indices ( struct FSMenu fsmenu,
enum FSMenuCategory  category,
const char *  dir 
)

Get active index based on given directory.

Definition at line 1125 of file fsmenu.c.

References BLI_path_cmp, ED_fsmenu_get_category(), FSMenuEntry::next, and FSMenuEntry::path.

Referenced by file_refresh().

◆ fsmenu_insert_entry()

void fsmenu_insert_entry ( struct FSMenu fsmenu,
enum FSMenuCategory  category,
const char *  path,
const char *  name,
int  icon,
enum FSMenuInsert  flag 
)

◆ fsmenu_read_bookmarks()

void fsmenu_read_bookmarks ( struct FSMenu fsmenu,
const char *  filepath 
)

reads the 'bookmarks' from the specified file

Definition at line 559 of file fsmenu.c.

References BLI_exists(), BLI_fopen(), BLI_strncpy(), FILE_MAXDIR, FILE_MAXFILE, FS_CATEGORY_BOOKMARKS, FS_CATEGORY_RECENT, FS_INSERT_SAVE, fsmenu_insert_entry(), len, FSMenuEntry::name, NULL, and STRPREFIX.

Referenced by ED_file_read_bookmarks().

◆ fsmenu_read_system()

void fsmenu_read_system ( struct FSMenu fsmenu,
int  read_bookmarks 
)

◆ fsmenu_refresh_bookmarks_status()

void fsmenu_refresh_bookmarks_status ( struct wmWindowManager wm,
struct FSMenu fsmenu 
)

Refresh 'valid' status of all menu entries

Definition at line 1229 of file fsmenu.c.

References BLI_assert, ED_fsmenu_get(), fsmenu_bookmark_validate_job_start(), fsmenu_bookmark_validate_job_stop(), and UNUSED_VARS_NDEBUG.

Referenced by bookmark_cleanup_exec(), and file_refresh_exec().

◆ fsmenu_refresh_system_category()

void fsmenu_refresh_system_category ( struct FSMenu fsmenu)

Refresh system directory menu

Definition at line 1056 of file fsmenu.c.

References ED_fsmenu_set_category(), FS_CATEGORY_SYSTEM, FS_CATEGORY_SYSTEM_BOOKMARKS, fsmenu_free_category(), fsmenu_read_system(), and NULL.

Referenced by file_refresh_exec().

◆ fsmenu_remove_entry()

void fsmenu_remove_entry ( struct FSMenu fsmenu,
enum FSMenuCategory  category,
int  idx 
)

Removes the fsmenu entry at the given index.

Definition at line 489 of file fsmenu.c.

References ED_fsmenu_get_category(), ED_fsmenu_set_category(), MEM_freeN, FSMenuEntry::next, NULL, FSMenuEntry::path, and FSMenuEntry::save.

Referenced by bookmark_cleanup_exec(), bookmark_delete_exec(), and reset_recent_exec().

◆ fsmenu_write_file()

void fsmenu_write_file ( struct FSMenu fsmenu,
const char *  filepath 
)