Blender
V3.3
|
#include <math.h>
#include <stdlib.h>
#include <string.h>
#include <sys/stat.h>
#include <time.h>
#include <unistd.h>
#include "MEM_guardedalloc.h"
#include "BLF_api.h"
#include "BLI_blenlib.h"
#include "BLI_fileops.h"
#include "BLI_fileops_types.h"
#include "BLI_fnmatch.h"
#include "BLI_ghash.h"
#include "BLI_linklist.h"
#include "BLI_math.h"
#include "BLI_stack.h"
#include "BLI_task.h"
#include "BLI_threads.h"
#include "BLI_utildefines.h"
#include "BLI_uuid.h"
#include "BKE_asset.h"
#include "BKE_asset_library.h"
#include "BKE_context.h"
#include "BKE_global.h"
#include "BKE_icons.h"
#include "BKE_idtype.h"
#include "BKE_lib_id.h"
#include "BKE_main.h"
#include "BKE_main_idmap.h"
#include "BKE_preferences.h"
#include "BLO_readfile.h"
#include "DNA_asset_types.h"
#include "DNA_space_types.h"
#include "ED_datafiles.h"
#include "ED_fileselect.h"
#include "ED_screen.h"
#include "IMB_imbuf.h"
#include "IMB_imbuf_types.h"
#include "IMB_thumbs.h"
#include "PIL_time.h"
#include "WM_api.h"
#include "WM_types.h"
#include "UI_interface_icons.h"
#include "UI_resources.h"
#include "atomic_ops.h"
#include "file_indexer.h"
#include "file_intern.h"
#include "filelist.h"
Go to the source code of this file.
Classes | |
struct | FolderList |
struct | FileListInternEntry |
struct | FileListIntern |
struct | FileListEntryCache |
struct | FileListEntryPreview |
struct | FileListEntryPreviewTaskData |
struct | FileListFilter |
struct | FileList |
struct | FileSortData |
struct | TodoDir |
struct | FileIndexer |
struct | FileListReadJob |
Macros | |
#define | FILEDIR_NBR_ENTRIES_UNSET -1 |
#define | FILELIST_ENTRYCACHESIZE_DEFAULT 1024 /* Keep it a power of two! */ |
#define | SPECIAL_IMG_SIZE 256 |
#define | SPECIAL_IMG_ROWS 1 |
#define | SPECIAL_IMG_COLS 7 |
#define | FILE_UID_UNSET 0 |
Typedefs | |
typedef struct FolderList | FolderList |
typedef struct FileListInternEntry | FileListInternEntry |
typedef struct FileListIntern | FileListIntern |
typedef struct FileListEntryCache | FileListEntryCache |
typedef struct FileListEntryPreview | FileListEntryPreview |
typedef struct FileListEntryPreviewTaskData | FileListEntryPreviewTaskData |
typedef struct FileListFilter | FileListFilter |
typedef struct FileList | FileList |
typedef struct TodoDir | TodoDir |
typedef enum ListLibOptions | ListLibOptions |
typedef struct FileIndexer | FileIndexer |
typedef struct FileListReadJob | FileListReadJob |
Enumerations | |
enum | { FLC_IS_INIT = 1 << 0 , FLC_PREVIEWS_ACTIVE = 1 << 1 } |
enum | { FLF_DO_FILTER = 1 << 0 , FLF_HIDE_DOT = 1 << 1 , FLF_HIDE_PARENT = 1 << 2 , FLF_HIDE_LIB_DIR = 1 << 3 , FLF_ASSETS_ONLY = 1 << 4 } |
enum | { FL_FORCE_RESET = 1 << 0 , FL_FORCE_RESET_MAIN_FILES = 1 << 1 , FL_IS_READY = 1 << 2 , FL_IS_PENDING = 1 << 3 , FL_NEED_SORTING = 1 << 4 , FL_NEED_FILTERING = 1 << 5 , FL_SORT_INVERT = 1 << 6 } |
enum | FileListTags { FILELIST_TAGS_USES_MAIN_DATA = (1 << 0) , FILELIST_TAGS_NO_THREADS = (1 << 2) } |
enum | { SPECIAL_IMG_DOCUMENT = 0 , SPECIAL_IMG_DRIVE_DISC = 1 , SPECIAL_IMG_FOLDER = 2 , SPECIAL_IMG_PARENT = 3 , SPECIAL_IMG_DRIVE_FIXED = 4 , SPECIAL_IMG_DRIVE_ATTACHED = 5 , SPECIAL_IMG_DRIVE_REMOTE = 6 , SPECIAL_IMG_MAX } |
enum | ListLibOptions { LIST_LIB_RECURSIVE = (1 << 0) , LIST_LIB_ASSETS_ONLY = (1 << 1) , LIST_LIB_ADD_PARENT = (1 << 2) } |
Variables | |
static ImBuf * | gSpecialFileImages [SPECIAL_IMG_MAX] |
#define FILE_UID_UNSET 0 |
Definition at line 2326 of file filelist.c.
#define FILEDIR_NBR_ENTRIES_UNSET -1 |
Definition at line 80 of file filelist.c.
#define FILELIST_ENTRYCACHESIZE_DEFAULT 1024 /* Keep it a power of two! */ |
Definition at line 300 of file filelist.c.
#define SPECIAL_IMG_COLS 7 |
Definition at line 447 of file filelist.c.
#define SPECIAL_IMG_ROWS 1 |
Definition at line 446 of file filelist.c.
#define SPECIAL_IMG_SIZE 256 |
Definition at line 445 of file filelist.c.
typedef struct FileIndexer FileIndexer |
Structure to keep the file indexer and its user data together.
typedef struct FileListEntryCache FileListEntryCache |
typedef struct FileListEntryPreview FileListEntryPreview |
typedef struct FileListEntryPreviewTaskData FileListEntryPreviewTaskData |
typedef struct FileListFilter FileListFilter |
typedef struct FileListIntern FileListIntern |
typedef struct FileListInternEntry FileListInternEntry |
typedef struct FileListReadJob FileListReadJob |
typedef struct FolderList FolderList |
typedef enum ListLibOptions ListLibOptions |
From here, we are in 'Job Context', i.e. have to be careful about sharing stuff between background working thread. and main one (used by UI among other things).
anonymous enum |
#FileListCache.flags
Enumerator | |
---|---|
FLC_IS_INIT | |
FLC_PREVIEWS_ACTIVE |
Definition at line 333 of file filelist.c.
anonymous enum |
Enumerator | |
---|---|
FLF_DO_FILTER | |
FLF_HIDE_DOT | |
FLF_HIDE_PARENT | |
FLF_HIDE_LIB_DIR | |
FLF_ASSETS_ONLY |
Definition at line 363 of file filelist.c.
anonymous enum |
Enumerator | |
---|---|
FL_FORCE_RESET | |
FL_FORCE_RESET_MAIN_FILES | |
FL_IS_READY | |
FL_IS_PENDING | |
FL_NEED_SORTING | |
FL_NEED_FILTERING | |
FL_SORT_INVERT |
Definition at line 425 of file filelist.c.
anonymous enum |
Enumerator | |
---|---|
SPECIAL_IMG_DOCUMENT | |
SPECIAL_IMG_DRIVE_DISC | |
SPECIAL_IMG_FOLDER | |
SPECIAL_IMG_PARENT | |
SPECIAL_IMG_DRIVE_FIXED | |
SPECIAL_IMG_DRIVE_ATTACHED | |
SPECIAL_IMG_DRIVE_REMOTE | |
SPECIAL_IMG_MAX |
Definition at line 449 of file filelist.c.
enum FileListTags |
Enumerator | |
---|---|
FILELIST_TAGS_USES_MAIN_DATA | The file list has references to main data (IDs) and needs special care. |
FILELIST_TAGS_NO_THREADS | The file list type is not thread-safe. |
Definition at line 438 of file filelist.c.
enum ListLibOptions |
Enumerator | |
---|---|
LIST_LIB_RECURSIVE | |
LIST_LIB_ASSETS_ONLY | |
LIST_LIB_ADD_PARENT |
Definition at line 3131 of file filelist.c.
|
static |
Return whether at least one tag matches the search filter. Tags are searched as "entire words", so instead of searching for "tag" in the filter string, this function searches for " tag ". Assumes the search filter starts and ends with a space.
Here the tags on the asset are written in set notation:
asset_tag_matches_filter(" some tags ", {"some", "blue"})
-> true asset_tag_matches_filter(" some tags ", {"som", "tag"})
-> false asset_tag_matches_filter(" some tags ", {})
-> false
Definition at line 973 of file filelist.c.
References BLI_strcasestr(), LISTBASE_FOREACH, NULL, and AssetMetaData::tags.
Referenced by is_filtered_asset().
|
static |
Definition at line 496 of file filelist.c.
References FileSortData::inverted.
Referenced by compare_date(), compare_extension(), compare_name(), and compare_size().
Definition at line 617 of file filelist.c.
References compare_apply_inverted(), compare_direntry_generic(), compare_tiebreaker(), ret, FileListInternEntry::st, and user_data.
Referenced by filelist_sort().
|
static |
Handles inverted sorting itself (currently there's nothing to invert), so if this returns non-0, it should be used as-is and not inverted.
Definition at line 552 of file filelist.c.
References FILE_TYPE_BLENDER, FILE_TYPE_BLENDER_BACKUP, FILE_TYPE_BLENDERLIB, FILE_TYPE_DIR, FILENAME_IS_CURRENT, FILENAME_IS_PARENT, FileListInternEntry::relpath, and FileListInternEntry::typeflag.
Referenced by compare_date(), compare_extension(), compare_name(), and compare_size().
Definition at line 665 of file filelist.c.
References FileListInternEntry::blentype, BLI_strcasecmp(), compare_apply_inverted(), compare_direntry_generic(), compare_tiebreaker(), FILE_TYPE_BLENDERLIB, FILE_TYPE_DIR, FileListInternEntry::relpath, ret, FileListInternEntry::typeflag, and user_data.
Referenced by filelist_sort().
Definition at line 603 of file filelist.c.
References compare_apply_inverted(), compare_direntry_generic(), compare_tiebreaker(), ret, and user_data.
Referenced by filelist_sort().
Definition at line 641 of file filelist.c.
References compare_apply_inverted(), compare_direntry_generic(), compare_tiebreaker(), ret, FileListInternEntry::st, and user_data.
Referenced by filelist_sort(), and blender::gpu::MTLBufferHandle::MTLBufferHandle().
|
static |
If all relevant characteristics match (e.g. the file type when sorting by file types), this should be used as tiebreaker. It makes sure there's a well defined sorting even in such cases.
Multiple files with the same name can appear with recursive file loading and/or when displaying IDs of different types, so these cases need to be handled.
1) Sort files by name using natural sorting. 2) If not possible (file names match) and both represent local IDs, sort by ID-type. 3) If not possible and only one is a local ID, place files representing local IDs first.
TODO: (not actually implemented, but should be): 4) If no file represents a local ID, sort by file path, so that files higher up the file system hierarchy are placed first.
Definition at line 516 of file filelist.c.
References FileListInternEntry::blentype, BLI_strcasecmp_natural(), FileListInternEntry::id, FileListInternEntry::local_data, FileListInternEntry::name, and order.
Referenced by compare_date(), compare_extension(), compare_name(), and compare_size().
int ED_file_extension_icon | ( | const char * | path | ) |
Definition at line 2837 of file filelist.c.
References ED_path_extension_type(), FILE_TYPE_ALEMBIC, FILE_TYPE_ARCHIVE, FILE_TYPE_BLENDER, FILE_TYPE_BLENDER_BACKUP, FILE_TYPE_BTX, FILE_TYPE_COLLADA, FILE_TYPE_FTFONT, FILE_TYPE_IMAGE, FILE_TYPE_MOVIE, FILE_TYPE_OBJECT_IO, FILE_TYPE_PYSCRIPT, FILE_TYPE_SOUND, FILE_TYPE_TEXT, FILE_TYPE_VOLUME, and type.
Referenced by ghost_event_proc(), and tree_element_get_icon_from_id().
int ED_file_icon | ( | const FileDirEntry * | file | ) |
Definition at line 1456 of file filelist.c.
References file, filelist_geticon_ex(), and NULL.
int ED_path_extension_type | ( | const char * | path | ) |
Definition at line 2759 of file filelist.c.
References BLI_path_extension_check(), BLI_path_extension_check_array(), BLI_path_extension_check_n(), BLO_has_bfile_extension(), file_is_blend_backup(), FILE_TYPE_ALEMBIC, FILE_TYPE_ARCHIVE, FILE_TYPE_BLENDER, FILE_TYPE_BLENDER_BACKUP, FILE_TYPE_BTX, FILE_TYPE_BUNDLE, FILE_TYPE_COLLADA, FILE_TYPE_FTFONT, FILE_TYPE_IMAGE, FILE_TYPE_MOVIE, FILE_TYPE_OBJECT_IO, FILE_TYPE_PYSCRIPT, FILE_TYPE_SOUND, FILE_TYPE_TEXT, FILE_TYPE_USD, FILE_TYPE_VOLUME, imb_ext_audio, imb_ext_image, imb_ext_movie, IMB_isanim(), and NULL.
Referenced by ED_file_extension_icon(), and filelist_readjob_list_dir().
|
static |
Definition at line 2732 of file filelist.c.
References Freestyle::a, usdtokens::b(), BLI_strcasestr(), and str.
Referenced by ED_path_extension_type().
|
static |
Definition at line 2065 of file filelist.c.
References BLF_display_name_from_file(), BLI_assert, BLI_join_dirfile(), BLI_path_basename(), BLI_strdup(), BLO_library_path_explode(), FILE_MAX_LIBEXTRA, FILE_TYPE_BLENDERLIB, FILE_TYPE_DIR, FILE_TYPE_FTFONT, and NULL.
Referenced by filelist_readjob_recursive_dir_add_items().
AssetLibrary* filelist_asset_library | ( | FileList * | filelist | ) |
Definition at line 2042 of file filelist.c.
References FileList::asset_library.
Referenced by ED_fileselect_active_asset_library_get(), and file_panel_asset_catalog_buttons_draw().
|
static |
Definition at line 3776 of file filelist.c.
References BKE_asset_library_find_suitable_root_path_from_main(), BLI_strncpy(), FileListReadJob::current_main, FILE_MAIN_ASSET, FILE_MAX, FileList::filelist, FileListReadJob::filelist, FileDirEntryArr::root, FileListReadJob::tmp_filelist, and FileList::type.
Referenced by filelist_readjob_load_asset_library_data().
|
static |
Definition at line 1840 of file filelist.c.
References BLI_ghash_clear_ex(), BLI_listbase_clear(), FileListEntryCache::block_center_index, FileListEntryCache::block_cursor, FileListEntryCache::block_end_index, FileListEntryCache::block_entries, FileListEntryCache::block_start_index, FileListEntryCache::cached_entries, copy_vn_i(), filelist_cache_previews_clear(), filelist_entry_free(), ListBase::first, FileListEntryCache::flags, FLC_IS_INIT, MEM_reallocN, FileListEntryCache::misc_entries, FileListEntryCache::misc_entries_indices, FileDirEntry::next, NULL, FileListEntryCache::size, and FileListEntryCache::uids.
Referenced by filelist_clear_ex(), filelist_clear_main_files(), filelist_file_cache_slidingwindow_set(), and filelist_filter().
|
static |
Definition at line 1816 of file filelist.c.
References BLI_ghash_free(), BLI_listbase_clear(), FileListEntryCache::block_entries, FileListEntryCache::cached_entries, filelist_cache_previews_free(), filelist_entry_free(), ListBase::first, FileListEntryCache::flags, FLC_IS_INIT, MEM_freeN, FileListEntryCache::misc_entries, FileListEntryCache::misc_entries_indices, FileDirEntry::next, NULL, and FileListEntryCache::uids.
Referenced by filelist_free().
|
static |
Definition at line 1790 of file filelist.c.
References BLI_ghash_new_ex(), BLI_ghash_ptr_new_ex(), BLI_ghashutil_intcmp(), BLI_ghashutil_inthash_p(), BLI_listbase_clear(), FileListEntryCache::block_center_index, FileListEntryCache::block_cursor, FileListEntryCache::block_end_index, FileListEntryCache::block_entries, FileListEntryCache::block_start_index, FileListEntryCache::cached_entries, copy_vn_i(), FileListEntryCache::flags, FLC_IS_INIT, IMB_thumb_ensure_translations(), MEM_mallocN, FileListEntryCache::misc_cursor, FileListEntryCache::misc_entries, FileListEntryCache::misc_entries_indices, FileListEntryCache::previews_todo_count, FileListEntryCache::size, and FileListEntryCache::uids.
Referenced by filelist_new().
|
static |
Definition at line 1675 of file filelist.c.
References BLI_task_pool_create_background(), BLI_thread_queue_init(), IMB_thumb_locks_acquire(), FileListEntryCache::previews_done, FileListEntryCache::previews_pool, FileListEntryCache::previews_todo_count, and TASK_PRIORITY_LOW.
Referenced by filelist_cache_previews_push().
|
static |
Definition at line 1663 of file filelist.c.
References MEM_freeN, and FileListEntryPreviewTaskData::preview.
Referenced by filelist_cache_previews_push().
Definition at line 1615 of file filelist.c.
References BKE_icon_imbuf_create(), BLI_assert, BLI_task_pool_user_data(), BLI_thread_queue_push(), FILE_ATTR_OFFLINE, FILE_TYPE_BLENDER, FILE_TYPE_BLENDER_BACKUP, FILE_TYPE_BLENDERLIB, FILE_TYPE_FTFONT, FILE_TYPE_IMAGE, FILE_TYPE_MOVIE, IMB_thumb_manage(), IMB_thumb_path_lock(), IMB_thumb_path_unlock(), IMB_thumb_read(), NULL, blender::compositor::pool, FileListEntryPreviewTaskData::preview, usdtokens::preview(), FileListEntryCache::previews_done, THB_LARGE, THB_SOURCE_BLEND, THB_SOURCE_FONT, THB_SOURCE_IMAGE, and THB_SOURCE_MOVIE.
Referenced by filelist_cache_previews_push().
|
static |
Definition at line 1686 of file filelist.c.
References BKE_icon_delete(), BLI_task_pool_cancel(), BLI_thread_queue_pop_timeout(), MEM_freeN, usdtokens::preview(), FileListEntryCache::previews_done, FileListEntryCache::previews_pool, and FileListEntryCache::previews_todo_count.
Referenced by filelist_cache_clear(), filelist_cache_previews_free(), and filelist_file_cache_block().
Definition at line 2719 of file filelist.c.
References FileList::filelist_cache, FileListEntryCache::flags, FLC_PREVIEWS_ACTIVE, NULL, FileListEntryCache::previews_done, FileListEntryCache::previews_pool, and FileListEntryCache::previews_todo_count.
Referenced by blender::ed::asset::AssetList::ensurePreviewsJob(), and file_draw_list().
|
static |
Definition at line 1704 of file filelist.c.
References BLI_task_pool_free(), BLI_thread_queue_free(), BLI_thread_queue_nowait(), filelist_cache_previews_clear(), FileListEntryCache::flags, FLC_PREVIEWS_ACTIVE, IMB_thumb_locks_release(), NULL, FileListEntryCache::previews_done, FileListEntryCache::previews_pool, and FileListEntryCache::previews_todo_count.
Referenced by filelist_cache_free(), and filelist_cache_previews_set().
|
static |
Definition at line 1723 of file filelist.c.
References FileDirEntry::attributes, BKE_icon_imbuf_create(), BKE_previewimg_is_finished(), BKE_previewimg_to_imbuf(), BLI_assert, BLI_join_dirfile(), BLI_strncpy(), BLI_task_pool_push(), BLI_thread_queue_push(), FILE_ENTRY_INVALID_PREVIEW, FILE_ENTRY_PREVIEW_LOADING, FILE_MAXDIR, FILE_TYPE_BLENDER, FILE_TYPE_BLENDER_BACKUP, FILE_TYPE_BLENDERLIB, FILE_TYPE_FTFONT, FILE_TYPE_IMAGE, FILE_TYPE_MOVIE, FileList::filelist, FileList::filelist_cache, filelist_cache_preview_ensure_running(), filelist_cache_preview_freef(), filelist_cache_preview_runf(), FileList::filelist_intern, FileListIntern::filtered, FileListEntryCache::flags, FileDirEntry::flags, FLC_PREVIEWS_ACTIVE, ICON_SIZE_PREVIEW, FileListInternEntry::local_data, MEM_mallocN, FileListEntryPreviewTaskData::preview, usdtokens::preview(), FileDirEntry::preview_icon_id, FileListInternEntry::preview_image, FileListEntryCache::previews_done, FileListEntryCache::previews_pool, FileListEntryCache::previews_todo_count, FileDirEntry::redirection_path, FileDirEntry::relpath, FileDirEntryArr::root, and FileDirEntry::typeflag.
Referenced by filelist_file_cache_block(), and filelist_file_ex().
Definition at line 2712 of file filelist.c.
References FileList::filelist_cache, NULL, and FileListEntryCache::previews_pool.
Referenced by blender::ed::asset::AssetList::ensurePreviewsJob(), and file_draw_list().
Definition at line 2630 of file filelist.c.
References BLI_assert, FileList::filelist_cache, filelist_cache_previews_free(), FL_IS_READY, FileListEntryCache::flags, FileList::flags, FLC_PREVIEWS_ACTIVE, NULL, FileListEntryCache::previews_done, FileListEntryCache::previews_pool, and FileListEntryCache::previews_todo_count.
Referenced by blender::ed::asset::AssetList::ensurePreviewsJob(), and file_refresh().
Definition at line 2655 of file filelist.c.
References BKE_icon_delete(), BLI_assert_msg, BLI_thread_queue_is_empty(), BLI_thread_queue_pop(), FILE_ENTRY_INVALID_PREVIEW, FILE_ENTRY_PREVIEW_LOADING, FileList::filelist_cache, filelist_file_ex(), FileDirEntry::flags, MEM_freeN, blender::compositor::pool, usdtokens::preview(), FileDirEntry::preview_icon_id, FileListEntryCache::previews_done, FileListEntryCache::previews_pool, and FileListEntryCache::previews_todo_count.
Referenced by blender::ed::asset::AssetList::ensurePreviewsJob(), file_draw_list(), file_listener(), and filelist_file_cache_block().
|
static |
Definition at line 1480 of file filelist.c.
References BLI_is_dir(), and parent_dir_until_exists_or_default_root().
Referenced by filelist_settype().
|
static |
Definition at line 1491 of file filelist.c.
References BLI_is_dir(), BLI_is_file(), BLO_library_path_explode(), FILE_MAX_LIBEXTRA, is_valid, NULL, and parent_dir_until_exists_or_default_root().
Referenced by filelist_checkdir_main(), and filelist_settype().
|
static |
Definition at line 1510 of file filelist.c.
References filelist_checkdir_lib().
Referenced by filelist_settype().
|
static |
Definition at line 1516 of file filelist.c.
Referenced by filelist_settype().
Definition at line 2000 of file filelist.c.
References filelist_clear_ex().
Referenced by blender::ed::asset::AssetList::clear(), ED_fileselect_clear(), and filelist_clear_from_reset_tag().
Definition at line 1935 of file filelist.c.
References FileListFilter::asset_catalog_filter, FileList::asset_library, file_delete_asset_catalog_filter_settings(), FileList::filter_data, and NULL.
Referenced by filelist_clear_ex(), and filelist_clear_main_files().
void filelist_clear_ex | ( | struct FileList * | filelist, |
const bool | do_asset_library, | ||
const bool | do_cache, | ||
const bool | do_selection | ||
) |
Definition at line 1942 of file filelist.c.
References BLI_ghash_clear(), FileList::filelist, FileList::filelist_cache, filelist_cache_clear(), filelist_clear_asset_library(), filelist_direntryarr_free(), FileList::filelist_intern, filelist_intern_free(), filelist_tag_needs_filtering(), NULL, FileList::selection_state, and FileListEntryCache::size.
Referenced by filelist_clear(), filelist_free(), and filelist_readjob_update().
A "smarter" version of filelist_clear() that calls partial clearing based on the filelist force-reset flags.
Definition at line 2005 of file filelist.c.
References filelist_clear(), filelist_clear_main_files(), FL_FORCE_RESET, FL_FORCE_RESET_MAIN_FILES, and FileList::flags.
Referenced by blender::ed::asset::AssetList::fetch(), and file_refresh().
|
static |
Definition at line 1970 of file filelist.c.
References BLI_assert, BLI_ghash_clear(), FileDirEntryArr::entries_filtered_num, FileDirEntryArr::entries_num, FILEDIR_NBR_ENTRIES_UNSET, FileList::filelist, FileList::filelist_cache, filelist_cache_clear(), filelist_clear_asset_library(), FileList::filelist_intern, filelist_intern_free_main_files(), filelist_tag_needs_filtering(), FILELIST_TAGS_USES_MAIN_DATA, NULL, FileList::selection_state, FileListEntryCache::size, and FileList::tags.
Referenced by filelist_clear_from_reset_tag().
|
static |
Checks two libraries for equality.
Definition at line 1202 of file filelist.c.
References ASSET_LIBRARY_CUSTOM, BKE_preferences_asset_library_find_from_index(), AssetLibraryReference::custom_library_index, NULL, and AssetLibraryReference::type.
Referenced by filelist_setlibrary().
Check if bmain is stored within the root path of filelist. This means either directly or in some nested directory. In other words, it checks if the filelist root path is contained in the path to bmain. This is irrespective of the recursion level displayed, it basically assumes unlimited recursion levels.
Definition at line 3872 of file filelist.c.
References BKE_main_blendfile_path(), BLI_path_contains(), FileList::filelist, and FileDirEntryArr::root.
Referenced by filelist_readjob_asset_library().
const char* filelist_dir | ( | struct FileList * | filelist | ) |
Definition at line 2106 of file filelist.c.
References FileList::filelist, and FileDirEntryArr::root.
Referenced by assetlist_library_path_from_sfile_get_hack(), ED_file_change_dir_ex(), file_draw_list(), and blender::ed::asset::AssetList::filepath().
|
static |
Definition at line 1547 of file filelist.c.
References BLI_assert, BLI_listbase_clear(), BLI_listbase_is_empty(), FILEDIR_NBR_ENTRIES_UNSET, filelist_entry_free(), and FileDirEntry::next.
Referenced by filelist_clear_ex().
void filelist_entries_select_index_range_set | ( | FileList * | filelist, |
FileSelection * | sel, | ||
FileSelType | select, | ||
uint | flag, | ||
FileCheckType | check | ||
) |
Definition at line 2936 of file filelist.c.
References FileDirEntryArr::entries_filtered_num, FileList::filelist, filelist_entry_select_index_set(), FileSelection::first, FileSelection::last, and select().
Referenced by file_box_select_modal(), file_select(), file_select_all_exec(), file_select_deselect_all(), and file_walk_select_selection_set().
|
static |
Definition at line 1524 of file filelist.c.
References BKE_icon_delete(), FILE_ENTRY_NAME_FREE, FileDirEntry::flags, MEM_freeN, FileDirEntry::name, FileDirEntry::preview_icon_id, FileDirEntry::redirection_path, and FileDirEntry::relpath.
Referenced by filelist_entry_free().
|
static |
Definition at line 1541 of file filelist.c.
References filelist_entry_clear(), and MEM_freeN.
Referenced by filelist_cache_clear(), filelist_cache_free(), filelist_direntryarr_free(), and filelist_file_release_entry().
Definition at line 2975 of file filelist.c.
References BLI_assert, BLI_ghash_lookup(), FileList::filelist_intern, FileListIntern::filtered, POINTER_AS_UINT, POINTER_FROM_UINT, FileList::selection_state, and FileListInternEntry::uid.
Referenced by file_context(), and file_current_selection_range_get().
void filelist_entry_parent_select_set | ( | struct FileList * | filelist, |
FileSelType | select, | ||
unsigned int | flag, | ||
FileCheckType | check | ||
) |
Set selection of the '..' parent entry, but only if it's actually visible.
Definition at line 2988 of file filelist.c.
References filelist_entry_select_index_set(), FileList::filter_data, FileListFilter::flags, FLF_HIDE_PARENT, and select().
Referenced by file_box_select_exec(), file_select_exec(), and file_walk_select_selection_set().
uint filelist_entry_select_get | ( | FileList * | filelist, |
FileDirEntry * | entry, | ||
FileCheckType | check | ||
) |
Definition at line 2949 of file filelist.c.
References BLI_assert, BLI_ghash_lookup(), CHECK_ALL, CHECK_DIRS, CHECK_FILES, ELEM, FILE_TYPE_DIR, POINTER_AS_UINT, POINTER_FROM_UINT, FileList::selection_state, FileDirEntry::typeflag, and FileDirEntry::uid.
Referenced by file_draw_list(), file_rename_state_activate(), and filelist_entry_select_index_get().
uint filelist_entry_select_index_get | ( | FileList * | filelist, |
const int | index, | ||
FileCheckType | check | ||
) |
Definition at line 2964 of file filelist.c.
References filelist_entry_select_get(), and filelist_file().
Referenced by file_delete_exec(), file_delete_poll(), file_is_any_selected(), file_select(), file_select_all_exec(), file_select_exec(), file_selection_get(), file_sfile_to_operator_ex(), file_smoothscroll_invoke(), and file_walk_select_selection_set().
void filelist_entry_select_index_set | ( | FileList * | filelist, |
const int | index, | ||
FileSelType | select, | ||
uint | flag, | ||
FileCheckType | check | ||
) |
Definition at line 2926 of file filelist.c.
References filelist_entry_select_set(), filelist_file(), and select().
Referenced by file_rename_state_activate(), file_walk_select_selection_set(), filelist_entries_select_index_range_set(), and filelist_entry_parent_select_set().
uint filelist_entry_select_set | ( | const FileList * | filelist, |
const FileDirEntry * | entry, | ||
FileSelType | select, | ||
uint | flag, | ||
FileCheckType | check | ||
) |
Definition at line 2879 of file filelist.c.
References BLI_assert, BLI_ghash_insert(), BLI_ghash_lookup_p(), BLI_ghash_remove(), CHECK_ALL, CHECK_DIRS, CHECK_FILES, ELEM, FILE_SEL_ADD, FILE_SEL_REMOVE, FILE_SEL_TOGGLE, FILE_TYPE_DIR, NULL, POINTER_AS_UINT, POINTER_FROM_UINT, select(), FileList::selection_state, FileDirEntry::typeflag, and FileDirEntry::uid.
Referenced by ED_fileselect_activate_by_id(), ED_fileselect_activate_by_relpath(), file_box_select_modal(), file_params_rename_end(), file_params_renamefile_activate(), file_select_match(), and filelist_entry_select_index_set().
FileDirEntry* filelist_file | ( | struct FileList * | filelist, |
int | index | ||
) |
Definition at line 2280 of file filelist.c.
References filelist_file_ex().
Referenced by autocomplete_file(), ED_fileselect_activate_by_relpath(), ED_fileselect_active_asset_get(), file_box_select_modal(), file_context(), file_delete_exec(), file_draw_list(), file_execute(), file_params_renamefile_activate(), file_rename_state_activate(), file_select_do(), file_select_match(), file_sfile_to_operator_ex(), filelist_entry_select_index_get(), filelist_entry_select_index_set(), filelist_geticon_get_file(), fileselect_file_set(), and blender::ed::asset::AssetList::iterate().
Load in cache all entries "around" given index (as much as block cache may hold).
Definition at line 2416 of file filelist.c.
References BLI_assert, FileListEntryCache::block_center_index, FileListEntryCache::block_cursor, FileListEntryCache::block_end_index, FileListEntryCache::block_entries, FileListEntryCache::block_start_index, FileDirEntryArr::entries_filtered_num, FileList::filelist, FileList::filelist_cache, filelist_cache_previews_clear(), filelist_cache_previews_push(), filelist_cache_previews_update(), filelist_file_cache_block_create(), filelist_file_cache_block_release(), FL_IS_READY, FileListEntryCache::flags, FileList::flags, FLC_PREVIEWS_ACTIVE, max_ii(), min_ii(), and FileListEntryCache::size.
Referenced by blender::ed::asset::AssetList::ensurePreviewsJob(), and file_draw_list().
|
static |
Definition at line 2365 of file filelist.c.
References BLI_ghash_insert(), BLI_ghash_popkey(), FileListEntryCache::block_entries, FileList::filelist_cache, filelist_file_create_entry(), FileListEntryCache::misc_entries, NULL, POINTER_FROM_INT, POINTER_FROM_UINT, size(), FileDirEntry::uid, and FileListEntryCache::uids.
Referenced by filelist_file_cache_block().
|
static |
Definition at line 2391 of file filelist.c.
References BLI_ghash_remove(), FileListEntryCache::block_entries, FileList::filelist_cache, filelist_file_release_entry(), NULL, POINTER_FROM_UINT, size(), FileDirEntry::uid, and FileListEntryCache::uids.
Referenced by filelist_file_cache_block().
Definition at line 2348 of file filelist.c.
References FileList::filelist_cache, filelist_cache_clear(), size(), and FileListEntryCache::size.
Referenced by blender::ed::asset::AssetList::ensurePreviewsJob(), and file_draw_list().
|
static |
Definition at line 2183 of file filelist.c.
References FileListInternEntry::attributes, BKE_icon_imbuf_create(), BKE_previewimg_is_finished(), BKE_previewimg_to_imbuf(), FileListInternEntry::blentype, BLI_addtail(), BLI_strdup(), FileListEntryCache::cached_entries, FILE_ENTRY_NAME_FREE, FileList::filelist_cache, FileList::filelist_intern, FileListIntern::filtered, FileListInternEntry::free_name, ICON_SIZE_PREVIEW, FileListInternEntry::id, FileListInternEntry::imported_asset_data, FileListInternEntry::local_data, MEM_callocN, FileListInternEntry::name, NULL, FileListInternEntry::preview_image, FileListInternEntry::redirection_path, FileListInternEntry::relpath, ret, FileListInternEntry::st, FileListInternEntry::typeflag, and FileListInternEntry::uid.
Referenced by filelist_file_cache_block_create(), and filelist_file_ex().
FileDirEntry* filelist_file_ex | ( | struct FileList * | filelist, |
const int | index, | ||
const bool | use_request | ||
) |
Definition at line 2232 of file filelist.c.
References BLI_ghash_insert(), BLI_ghash_lookup(), BLI_ghash_popkey(), BLI_ghash_remove(), FileListEntryCache::block_cursor, FileListEntryCache::block_entries, FileListEntryCache::block_start_index, FileDirEntryArr::entries_filtered_num, FileList::filelist, FileList::filelist_cache, filelist_cache_previews_push(), filelist_file_create_entry(), filelist_file_release_entry(), FileListEntryCache::misc_cursor, FileListEntryCache::misc_entries, FileListEntryCache::misc_entries_indices, NULL, POINTER_FROM_INT, POINTER_FROM_UINT, FileListEntryCache::previews_pool, ret, FileListEntryCache::size, and FileListEntryCache::uids.
Referenced by ED_fileselect_activate_by_id(), filelist_cache_previews_update(), and filelist_file().
Definition at line 2305 of file filelist.c.
References FileDirEntryArr::entries_filtered_num, FILEDIR_NBR_ENTRIES_UNSET, FileList::filelist, FileList::filelist_intern, FileListIntern::filtered, FileListInternEntry::id, and FileListInternEntry::local_data.
Referenced by ED_fileselect_activate_by_id(), and file_params_find_renamed().
int filelist_file_find_path | ( | struct FileList * | filelist, |
const char * | file | ||
) |
Find a file from a file name, or more precisely, its file-list relative path, inside the filtered items.
Definition at line 2285 of file filelist.c.
References FileDirEntryArr::entries_filtered_num, FILEDIR_NBR_ENTRIES_UNSET, FileList::filelist, FileList::filelist_intern, FileListIntern::filtered, FileListInternEntry::relpath, and STREQ.
Referenced by file_params_find_renamed().
ID* filelist_file_get_id | ( | const FileDirEntry * | file | ) |
Definition at line 2321 of file filelist.c.
References file.
Referenced by ED_fileselect_active_asset_get(), file_context(), file_draw_icon(), and file_draw_preview().
ImBuf* filelist_file_getimage | ( | const FileDirEntry * | file | ) |
Definition at line 1303 of file filelist.c.
References BKE_icon_imbuf_get_buffer(), file, and NULL.
Referenced by ED_assetlist_asset_image_get(), and file_draw_icon().
|
static |
Get the asset metadata of a file, if it represents an asset. This may either be of a local ID (ID in the current Main) or read from an external asset library.
Definition at line 942 of file filelist.c.
References ID::asset_data, and file.
Referenced by is_filtered_asset().
|
static |
Definition at line 2226 of file filelist.c.
References BLI_remlink(), FileListEntryCache::cached_entries, FileList::filelist_cache, and filelist_entry_free().
Referenced by filelist_file_cache_block_release(), and filelist_file_ex().
int filelist_files_ensure | ( | struct FileList * | filelist | ) |
Limited version of full update done by space_file's file_refresh(), to be used by operators and such. Ensures given filelist is ready to be used (i.e. it is filtered and sorted), unless it is tagged for a full refresh.
Definition at line 2173 of file filelist.c.
References FileDirEntryArr::entries_filtered_num, FileList::filelist, filelist_filter(), filelist_needs_force_reset(), filelist_needs_reading(), and filelist_sort().
Referenced by autocomplete_file(), ED_fileselect_activate_by_relpath(), ED_fileselect_init_layout(), blender::ed::asset::AssetList::ensurePreviewsJob(), file_context(), file_current_selection_range_get(), file_delete_exec(), file_delete_poll(), file_draw_list(), file_highlight_set(), file_is_any_selected(), file_rename_state_activate(), file_select_all_exec(), file_select_deselect_all(), file_select_do(), file_select_exec(), file_select_match(), file_selection_get(), file_sfile_to_operator_ex(), file_smoothscroll_invoke(), file_walk_select_do(), blender::ed::asset::AssetList::iterate(), and blender::ed::asset::AssetList::size().
int filelist_files_num_entries | ( | struct FileList * | filelist | ) |
Return the total raw number of entries listed in the given filelist
, whether they are filtered out or not.
Definition at line 2060 of file filelist.c.
References FileDirEntryArr::entries_num, and FileList::filelist.
Referenced by file_draw_hint_if_invalid().
Definition at line 1061 of file filelist.c.
References ELEM, FileListIntern::entries, FileDirEntryArr::entries_filtered_num, FileDirEntryArr::entries_num, file, FILE_MAX_LIBEXTRA, FILEDIR_NBR_ENTRIES_UNSET, FileList::filelist, FileList::filelist_cache, filelist_cache_clear(), FileList::filelist_intern, filelist_islibrary(), FileList::filter_data, FileList::filter_fn, FileListIntern::filtered, ListBase::first, FL_NEED_FILTERING, FileListFilter::flags, FileList::flags, FLF_HIDE_LIB_DIR, FileList::max_recursion, MEM_freeN, MEM_mallocN, NULL, FileList::prepare_filter_fn, FileDirEntryArr::root, and FileListEntryCache::size.
Referenced by blender::ed::asset::AssetList::fetch(), file_refresh(), and filelist_files_ensure().
Definition at line 2019 of file filelist.c.
References FileList::asset_library_ref, BLI_ghash_free(), FileList::filelist_cache, filelist_cache_free(), filelist_clear_ex(), FileList::filter_data, FL_NEED_FILTERING, FL_NEED_SORTING, FileList::flags, MEM_SAFE_FREE, NULL, and FileList::selection_state.
Referenced by ED_fileselect_exit(), file_free(), and filelist_readjob_free().
Definition at line 1279 of file filelist.c.
References BLI_assert, G, gSpecialFileImages, IMB_freeImBuf(), NULL, and SPECIAL_IMG_MAX.
Referenced by ED_file_exit().
Definition at line 2047 of file filelist.c.
References BLO_blendhandle_close(), FileList::libfiledata, and NULL.
Referenced by blender::ed::asset::AssetList::clear(), ED_fileselect_clear(), file_free(), and filelist_readjob_free().
Definition at line 1449 of file filelist.c.
References file, FileList::filelist, filelist_geticon_ex(), filelist_geticon_get_file(), and FileDirEntryArr::root.
Referenced by file_draw_list().
|
static |
Definition at line 1333 of file filelist.c.
References ARRAY_SIZE, BLI_join_dirfile(), BLI_path_slash_ensure(), ED_fsmenu_get(), ED_fsmenu_get_category(), file, FILE_ATTR_ANY_LINK, FILE_ATTR_OFFLINE, FILE_ATTR_SYSTEM, FILE_ATTR_TEMPORARY, FILE_MAX_LIBEXTRA, FILE_TYPE_ALEMBIC, FILE_TYPE_ARCHIVE, FILE_TYPE_BLENDER, FILE_TYPE_BLENDER_BACKUP, FILE_TYPE_BLENDERLIB, FILE_TYPE_BTX, FILE_TYPE_BUNDLE, FILE_TYPE_COLLADA, FILE_TYPE_DIR, FILE_TYPE_FTFONT, FILE_TYPE_IMAGE, FILE_TYPE_MOVIE, FILE_TYPE_OBJECT_IO, FILE_TYPE_PYSCRIPT, FILE_TYPE_SOUND, FILE_TYPE_TEXT, FILE_TYPE_USD, FILE_TYPE_VOLUME, FILENAME_IS_PARENT, FS_CATEGORY_OTHER, FS_CATEGORY_SYSTEM, FS_CATEGORY_SYSTEM_BOOKMARKS, FSMenuEntry::icon, FSMenuEntry::next, FSMenuEntry::path, ret, STREQ, and UI_icon_from_idcode().
Referenced by ED_file_icon(), and filelist_geticon().
|
static |
Definition at line 1289 of file filelist.c.
References BLI_assert, filelist_file(), and G.
Referenced by filelist_geticon(), filelist_geticon_image(), and filelist_getimage().
Definition at line 1327 of file filelist.c.
References file, filelist_geticon_get_file(), and filelist_geticon_image_ex().
Referenced by file_draw_list().
ImBuf* filelist_geticon_image_ex | ( | const FileDirEntry * | file | ) |
Definition at line 1308 of file filelist.c.
References file, FILE_TYPE_DIR, FILENAME_IS_PARENT, gSpecialFileImages, NULL, SPECIAL_IMG_DOCUMENT, SPECIAL_IMG_FOLDER, and SPECIAL_IMG_PARENT.
Referenced by ED_assetlist_asset_image_get(), and filelist_geticon_image().
Definition at line 1296 of file filelist.c.
References BKE_icon_imbuf_get_buffer(), file, filelist_geticon_get_file(), and NULL.
Referenced by file_draw_list().
Definition at line 1245 of file filelist.c.
References BLI_assert, datatoc_prvicons_png, datatoc_prvicons_png_size, G, gSpecialFileImages, IB_rect, IMB_allocImBuf(), IMB_freeImBuf(), IMB_ibImageFromMemory(), NULL, ImBuf::rect, SPECIAL_IMG_COLS, SPECIAL_IMG_MAX, SPECIAL_IMG_ROWS, SPECIAL_IMG_SIZE, tile, x, and y.
Referenced by ED_file_init().
|
static |
Definition at line 1564 of file filelist.c.
References BKE_asset_metadata_free(), FileListInternEntry::free_name, FileListInternEntry::imported_asset_data, MEM_freeN, FileListInternEntry::name, FileListInternEntry::redirection_path, and FileListInternEntry::relpath.
Referenced by filelist_intern_free(), and filelist_intern_free_main_files().
|
static |
Definition at line 1462 of file filelist.c.
References FileListInternEntry::id, FileListInternEntry::local_data, and NULL.
Referenced by filelist_intern_free_main_files(), and is_filtered_asset_library().
|
static |
Definition at line 1582 of file filelist.c.
References BLI_listbase_clear(), FileListIntern::entries, filelist_intern_entry_free(), FileListIntern::filtered, ListBase::first, MEM_SAFE_FREE, and FileListInternEntry::next.
Referenced by filelist_clear_ex().
|
static |
Definition at line 1598 of file filelist.c.
References BLI_remlink(), FileListIntern::entries, filelist_intern_entry_free(), filelist_intern_entry_is_main_file(), FileListIntern::filtered, LISTBASE_FOREACH_MUTABLE, and MEM_SAFE_FREE.
Referenced by filelist_clear_main_files().
Definition at line 2111 of file filelist.c.
References FileList::check_dir_fn.
Referenced by ED_file_change_dir_ex(), file_directory_enter_handle(), file_draw_hint_if_invalid(), file_filename_enter_handle(), and filelist_readjob_start().
Definition at line 2158 of file filelist.c.
References FL_IS_READY, and FileList::flags.
Referenced by file_draw_hint_if_invalid(), file_params_renamefile_activate(), and file_smoothscroll_invoke().
dir | Must be FILE_MAX_LIBEXTRA long! |
Definition at line 2998 of file filelist.c.
References BLO_library_path_explode(), FileList::filelist, NULL, and FileDirEntryArr::root.
Referenced by file_delete_poll(), file_draw_hint_if_invalid(), and filelist_filter().
BlendHandle* filelist_lib | ( | struct FileList * | filelist | ) |
Definition at line 2055 of file filelist.c.
References FileList::libfiledata.
Referenced by ED_file_path_button().
Definition at line 2140 of file filelist.c.
References FL_FORCE_RESET, FL_FORCE_RESET_MAIN_FILES, and FileList::flags.
Referenced by ED_fileselect_activate_by_id(), ED_fileselect_activate_by_relpath(), blender::ed::asset::AssetList::fetch(), file_refresh(), filelist_files_ensure(), filelist_needs_reading(), and blender::ed::asset::AssetList::needsRefetch().
int filelist_needs_reading | ( | FileList * | filelist | ) |
Definition at line 2873 of file filelist.c.
References FileDirEntryArr::entries_num, FILEDIR_NBR_ENTRIES_UNSET, FileList::filelist, and filelist_needs_force_reset().
Referenced by blender::ed::asset::AssetList::fetch(), file_main_region_needs_refresh_before_draw(), file_refresh(), filelist_files_ensure(), and blender::ed::asset::AssetList::needsRefetch().
Definition at line 2168 of file filelist.c.
References FILELIST_TAGS_USES_MAIN_DATA, and FileList::tags.
Referenced by file_main_region_needs_refresh_before_draw(), file_refresh(), file_reset_filelist_showing_main_data(), and blender::ed::asset::AssetList::tagMainDataDirty().
FileList* filelist_new | ( | short | type | ) |
Definition at line 1875 of file filelist.c.
References BLI_ghash_new(), BLI_ghashutil_intcmp(), BLI_ghashutil_inthash_p(), FileDirEntryArr::entries_num, FILEDIR_NBR_ENTRIES_UNSET, FileList::filelist, FileList::filelist_cache, filelist_cache_init(), FILELIST_ENTRYCACHESIZE_DEFAULT, filelist_settype(), MEM_callocN, FileList::selection_state, and type.
Referenced by file_duplicate(), and file_refresh().
Definition at line 2163 of file filelist.c.
References FL_IS_PENDING, and FileList::flags.
Referenced by ED_fileselect_activate_by_id(), ED_fileselect_activate_by_relpath(), blender::ed::asset::AssetList::fetch(), and file_refresh().
|
static |
Definition at line 3550 of file filelist.c.
References BLI_assert, BLI_listbase_count(), BLI_movelisttolist(), BLI_mutex_lock(), BLI_mutex_unlock(), FileDirEntryArr::entries, FileDirEntryArr::entries_num, FileList::filelist, FileListReadJob::lock, and FileListReadJob::tmp_filelist.
Referenced by filelist_readjob_recursive_dir_add_items().
|
static |
Definition at line 3878 of file filelist.c.
References BLI_assert, BLI_listbase_is_empty(), FileListReadJob::current_main, FileDirEntryArr::entries, FileDirEntryArr::entries_num, FILEDIR_NBR_ENTRIES_UNSET, FileList::filelist, filelist_contains_main(), filelist_readjob_load_asset_library_data(), filelist_readjob_main_assets_add_items(), filelist_readjob_recursive_dir_add_items(), FileListReadJob::only_main_data, and FileListReadJob::tmp_filelist.
Referenced by filelist_settype().
|
static |
Definition at line 3760 of file filelist.c.
References filelist_readjob_do().
Referenced by filelist_readjob_main(), and filelist_settype().
|
static |
Definition at line 3742 of file filelist.c.
References BLI_assert, BLI_listbase_is_empty(), FileDirEntryArr::entries, FileDirEntryArr::entries_num, FILEDIR_NBR_ENTRIES_UNSET, FileList::filelist, filelist_readjob_recursive_dir_add_items(), and FileListReadJob::tmp_filelist.
Referenced by filelist_readjob_dir(), and filelist_readjob_lib().
Definition at line 4025 of file filelist.c.
References FileListReadJob::filelist, filelist_readjob_update(), FL_IS_PENDING, FL_IS_READY, and FileList::flags.
Referenced by filelist_readjob_start().
Definition at line 4036 of file filelist.c.
References BLI_assert, BLI_listbase_is_empty(), BLI_mutex_end(), FileDirEntryArr::entries, FileDirEntryArr::entries_num, FileList::filelist, filelist_free(), filelist_freelib(), FileListReadJob::lock, MEM_freeN, and FileListReadJob::tmp_filelist.
Referenced by filelist_readjob_start().
|
static |
Check if the read-job is requesting a partial reread of the file list only.
Definition at line 3931 of file filelist.c.
References FileListReadJob::only_main_data.
Referenced by filelist_readjob_startjob().
|
static |
Definition at line 3768 of file filelist.c.
References filelist_readjob_do().
Referenced by filelist_settype().
|
static |
Definition at line 3036 of file filelist.c.
References FileListInternEntry::attributes, BLI_addtail(), BLI_file_alias_target(), BLI_file_attributes(), BLI_filelist_dir_contents(), BLI_filelist_free(), BLI_is_dir(), BLI_join_dirfile(), BLI_path_cmp, BLI_path_extension_check_glob(), BLI_path_extension_replace(), BLI_path_slash_ensure(), BLO_has_bfile_extension(), ED_path_extension_type(), FILE_ATTR_ALIAS, FILE_ATTR_HIDDEN, FILE_MAX, FILE_MAXDIR, FILE_TYPE_BLENDER, FILE_TYPE_BUNDLE, FILE_TYPE_DIR, FILE_TYPE_OPERATOR, FILENAME_IS_CURRPAR, is_hidden_dot_filename(), MEM_callocN, MEM_dupallocN, MEM_freeN, NULL, FileListInternEntry::redirection_path, direntry::relname, FileListInternEntry::relpath, direntry::s, S_ISDIR, FileListInternEntry::st, and FileListInternEntry::typeflag.
Referenced by filelist_readjob_recursive_dir_add_items().
|
static |
Definition at line 3241 of file filelist.c.
References BLI_addtail(), BLI_assert, BLI_linklist_count(), BLI_linklist_freeN(), BLO_blendhandle_close(), BLO_blendhandle_from_file(), BLO_blendhandle_get_datablock_info(), BLO_blendhandle_get_linkable_groups(), BLO_library_path_explode(), FileIndexer::callbacks, ED_file_indexer_entries_clear(), ED_file_indexer_entries_extend_from_datablock_infos(), FILE_INDEXER_ENTRIES_LOADED, FILE_MAX_LIBEXTRA, filelist_readjob_list_lib_add_datablocks(), filelist_readjob_list_lib_group_create(), filelist_readjob_list_lib_navigate_to_parent_entry_create(), filelist_readjob_list_lib_populate_from_index(), groupname_to_code(), LIST_LIB_ADD_PARENT, LIST_LIB_ASSETS_ONLY, LIST_LIB_RECURSIVE, LinkNode::next, NULL, options, FileIndexerType::read_index, BlendFileReadReport::reports, FileIndexerType::update_index, and FileIndexer::user_data.
Referenced by filelist_readjob_recursive_dir_add_items().
|
static |
Definition at line 3153 of file filelist.c.
References BLODataBlockInfo::asset_data, FileListInternEntry::blentype, BLI_addtail(), BLI_sprintfN(), BLI_strdup(), FILE_TYPE_ASSET, FILE_TYPE_BLENDERLIB, FileListInternEntry::imported_asset_data, MEM_callocN, BLODataBlockInfo::name, FileListInternEntry::relpath, and FileListInternEntry::typeflag.
Referenced by filelist_readjob_list_lib_add_datablocks(), and filelist_readjob_list_lib_add_from_indexer_entries().
|
static |
Definition at line 3176 of file filelist.c.
References filelist_readjob_list_lib_add_datablock(), and LinkNode::next.
Referenced by filelist_readjob_list_lib().
|
static |
Definition at line 3189 of file filelist.c.
References BKE_idtype_idcode_to_name(), FileIndexerEntry::datablock_info, FileIndexerEntries::entries, filelist_readjob_list_lib_add_datablock(), FileIndexerEntry::idcode, and LinkNode::next.
Referenced by filelist_readjob_list_lib_populate_from_index().
|
static |
Definition at line 3143 of file filelist.c.
References FileListInternEntry::blentype, BLI_strdup(), FILE_TYPE_BLENDERLIB, FILE_TYPE_DIR, MEM_callocN, FileListInternEntry::relpath, and FileListInternEntry::typeflag.
Referenced by filelist_readjob_list_lib().
|
static |
Definition at line 3205 of file filelist.c.
References BLI_strdup(), FILE_TYPE_BLENDERLIB, FILE_TYPE_DIR, FILENAME_PARENT, MEM_callocN, FileListInternEntry::relpath, and FileListInternEntry::typeflag.
Referenced by filelist_readjob_list_lib(), and filelist_readjob_list_lib_populate_from_index().
|
static |
Definition at line 3225 of file filelist.c.
References BLI_addtail(), filelist_readjob_list_lib_add_from_indexer_entries(), filelist_readjob_list_lib_navigate_to_parent_entry_create(), LIST_LIB_ADD_PARENT, and options.
Referenced by filelist_readjob_list_lib().
|
static |
Load asset library data, which currently means loading the asset catalogs for the library.
Definition at line 3793 of file filelist.c.
References FileList::asset_library, FileList::asset_library_ref, BKE_asset_library_load(), FILE_MAX, FileListReadJob::filelist, filelist_asset_library_path(), NULL, and FileListReadJob::tmp_filelist.
Referenced by filelist_readjob_asset_library(), and filelist_readjob_main_assets().
|
static |
Definition at line 3902 of file filelist.c.
References filelist_readjob_dir().
Referenced by filelist_settype().
|
static |
Definition at line 3911 of file filelist.c.
References BLI_assert, BLI_listbase_is_empty(), FileDirEntryArr::entries, FileDirEntryArr::entries_num, FILEDIR_NBR_ENTRIES_UNSET, FileList::filelist, filelist_readjob_load_asset_library_data(), filelist_readjob_main_assets_add_items(), and FileListReadJob::tmp_filelist.
Referenced by filelist_settype().
|
static |
Definition at line 3816 of file filelist.c.
References ID::asset_data, BKE_asset_metadata_preview_get_from_id(), BKE_idtype_idcode_to_name(), BKE_main_lock(), BKE_main_unlock(), FileListInternEntry::blentype, BLI_addtail(), BLI_movelisttolist(), BLI_strdup(), FileListReadJob::current_main, FileDirEntryArr::entries, FileDirEntryArr::entries_filtered_num, FileDirEntryArr::entries_num, FILE_TYPE_ASSET, FILE_TYPE_BLENDERLIB, FileList::filelist, filelist_uid_generate(), FOREACH_MAIN_ID_BEGIN, FOREACH_MAIN_ID_END, FileListInternEntry::free_name, GS, FileListInternEntry::id, ID_IS_LINKED, FileListInternEntry::local_data, MEM_callocN, FileListInternEntry::name, ID::name, FileListInternEntry::preview_image, FileListInternEntry::relpath, FileListReadJob::tmp_filelist, FileListInternEntry::typeflag, and FileListInternEntry::uid.
Referenced by filelist_readjob_asset_library(), and filelist_readjob_main_assets().
|
static |
Definition at line 3606 of file filelist.c.
References BLI_join_dirfile(), BLI_path_normalize_dir(), BLI_path_rel(), BLI_stack_discard(), BLI_stack_free(), BLI_stack_is_empty(), BLI_stack_new, BLI_stack_peek(), BLI_stack_push_r(), BLI_strdup(), BLI_strncpy(), FileIndexer::callbacks, TodoDir::dir, FILE_MAX_LIBEXTRA, FILE_MAXFILE, fileentry_uiname(), FileList::filelist, FileIndexerType::filelist_finished, filelist_readjob_append_entries(), filelist_readjob_list_dir(), filelist_readjob_list_lib(), filelist_readjob_should_recurse_into_entry(), filelist_uid_generate(), ListBase::first, float(), FileListInternEntry::free_name, FileIndexerType::free_user_data, FileIndexerType::init_user_data, TodoDir::level, LIST_LIB_ADD_PARENT, LIST_LIB_ASSETS_ONLY, LIST_LIB_RECURSIVE, FileListReadJob::main_name, FileList::max_recursion, MEM_freeN, FileListInternEntry::name, FileListInternEntry::next, NULL, FileList::recursion_level, FileListInternEntry::relpath, FileDirEntryArr::root, FileListReadJob::tmp_filelist, FileListInternEntry::typeflag, FileListInternEntry::uid, and FileIndexer::user_data.
Referenced by filelist_readjob_asset_library(), and filelist_readjob_do().
int filelist_readjob_running | ( | FileList * | filelist, |
wmWindowManager * | wm | ||
) |
Definition at line 4123 of file filelist.c.
References FileList::filelist, WM_JOB_TYPE_FILESEL_READDIR, and WM_jobs_test().
|
static |
Definition at line 3570 of file filelist.c.
References FILE_TYPE_BLENDER, FILE_TYPE_BLENDER_BACKUP, FILE_TYPE_BLENDERLIB, FILE_TYPE_DIR, FILENAME_IS_CURRPAR, FileList::max_recursion, FileListInternEntry::relpath, and FileListInternEntry::typeflag.
Referenced by filelist_readjob_recursive_dir_add_items().
Definition at line 4057 of file filelist.c.
References BKE_main_blendfile_path(), BLI_mutex_init(), BLI_strncpy(), C, CTX_data_main(), CTX_wm_manager(), CTX_wm_window(), FileListReadJob::current_main, FileList::filelist, FileListReadJob::filelist, filelist_is_dir(), filelist_readjob_endjob(), filelist_readjob_free(), filelist_readjob_startjob(), filelist_readjob_update(), FILELIST_TAGS_NO_THREADS, FL_FORCE_RESET, FL_FORCE_RESET_MAIN_FILES, FL_IS_PENDING, FL_IS_READY, if(), FileListReadJob::lock, FileListReadJob::main_name, MEM_callocN, NA_JOB_FINISHED, NULL, FileListReadJob::only_main_data, FileDirEntryArr::root, WM_event_add_notifier(), WM_JOB_PROGRESS, WM_JOB_TYPE_FILESEL_READDIR, WM_jobs_callbacks(), WM_jobs_customdata_set(), WM_jobs_get(), WM_jobs_start(), and WM_jobs_timer().
Referenced by blender::ed::asset::AssetList::fetch(), and file_refresh().
|
static |
Definition at line 3941 of file filelist.c.
References FileListFilter::asset_catalog_filter, FileList::asset_library_ref, BLI_assert, BLI_listbase_clear(), BLI_mutex_lock(), BLI_mutex_unlock(), FileListIntern::curr_uid, FileListIntern::entries, FileDirEntryArr::entries, FileDirEntryArr::entries_num, FILEDIR_NBR_ENTRIES_UNSET, FileList::filelist, FileListReadJob::filelist, FileList::filelist_cache, FileList::filelist_intern, filelist_readjob_is_partial_read(), filelist_uid_unset(), FileList::filter_data, FileListIntern::filtered, FileList::libfiledata, FileListReadJob::lock, MEM_dupallocN, NULL, FileList::read_job_fn, FileList::selection_state, and FileListReadJob::tmp_filelist.
Referenced by filelist_readjob_start().
void filelist_readjob_stop | ( | FileList * | filelist, |
wmWindowManager * | wm | ||
) |
Definition at line 4118 of file filelist.c.
References FileList::filelist, WM_JOB_TYPE_FILESEL_READDIR, and WM_jobs_kill_type().
Referenced by blender::ed::asset::AssetList::clear(), ED_fileselect_clear(), blender::ed::asset::AssetList::fetch(), and file_refresh().
Definition at line 3982 of file filelist.c.
References FileList::asset_library, BLI_movelisttolist(), BLI_mutex_lock(), BLI_mutex_unlock(), FileListIntern::curr_uid, FileListIntern::entries, FileDirEntryArr::entries, FileDirEntryArr::entries_num, FileList::filelist, FileListReadJob::filelist, filelist_clear_ex(), FileList::filelist_intern, FL_NEED_FILTERING, FL_NEED_SORTING, FileList::flags, FileListReadJob::lock, MAX2, NULL, and FileListReadJob::tmp_filelist.
Referenced by filelist_readjob_endjob(), and filelist_readjob_start().
void filelist_set_asset_catalog_filter_options | ( | FileList * | filelist, |
eFileSel_Params_AssetCatalogVisibility | catalog_visibility, | ||
const bUUID * | catalog_id | ||
) |
Definition at line 1180 of file filelist.c.
References FileListFilter::asset_catalog_filter, file_create_asset_catalog_filter_settings(), file_set_asset_catalog_filter_settings(), filelist_tag_needs_filtering(), and FileList::filter_data.
Referenced by file_refresh().
May modify in place given r_dir, which is expected to be FILE_MAX_LIBEXTRA length.
Definition at line 2116 of file filelist.c.
References FileList::asset_library_ref, BKE_main_blendfile_path_from_global(), BLI_assert, BLI_path_normalize_dir(), BLI_strncpy(), FileList::check_dir_fn, FILE_MAX_LIBEXTRA, FileList::filelist, FL_FORCE_RESET, FileList::flags, NULL, FileDirEntryArr::root, STREQ, and UNUSED_VARS_NDEBUG.
Referenced by ED_file_change_dir_ex(), file_duplicate(), file_refresh(), and blender::ed::asset::AssetList::setup().
void filelist_setfilter_options | ( | FileList * | filelist, |
const bool | do_filter, | ||
const bool | hide_dot, | ||
const bool | hide_parent, | ||
const uint64_t | filter, | ||
const uint64_t | filter_id, | ||
const bool | filter_assets_only, | ||
const char * | filter_glob, | ||
const char * | filter_search | ||
) |
Definition at line 1116 of file filelist.c.
References BLI_strcmp_ignore_pad(), BLI_strncpy(), BLI_strncpy_ensure_pad(), FILE_TYPE_BLENDERLIB, filelist_tag_needs_filtering(), FileListFilter::filter, filter(), FileList::filter_data, FileListFilter::filter_glob, FileListFilter::filter_id, FILTER_ID_ALL, FileListFilter::filter_search, FileListFilter::flags, FLF_ASSETS_ONLY, FLF_DO_FILTER, FLF_HIDE_DOT, FLF_HIDE_PARENT, STREQ, and update().
Referenced by file_refresh(), and blender::ed::asset::AssetList::setup().
void filelist_setindexer | ( | FileList * | filelist, |
const FileIndexerType * | indexer | ||
) |
Definition at line 1172 of file filelist.c.
References BLI_assert, and FileList::indexer.
Referenced by file_refresh(), and blender::ed::asset::AssetList::setup().
void filelist_setlibrary | ( | FileList * | filelist, |
const AssetLibraryReference * | asset_library_ref | ||
) |
Definition at line 1219 of file filelist.c.
References FileList::asset_library_ref, filelist_compare_asset_libraries(), FL_FORCE_RESET, FileList::flags, MEM_mallocN, and MEM_SAFE_FREE.
Referenced by file_refresh(), and blender::ed::asset::AssetList::setup().
Definition at line 2132 of file filelist.c.
References FL_FORCE_RESET, FileList::flags, and FileList::max_recursion.
Referenced by file_parent_exec(), file_refresh(), file_select_do(), and blender::ed::asset::AssetList::setup().
Definition at line 753 of file filelist.c.
References FL_NEED_SORTING, FL_SORT_INVERT, FileList::flags, sort(), and FileList::sort.
Referenced by file_refresh(), and blender::ed::asset::AssetList::setup().
Definition at line 1888 of file filelist.c.
References FileList::check_dir_fn, FILE_ASSET_LIBRARY, file_indexer_noop, FILE_LOADLIB, FILE_MAIN, FILE_MAIN_ASSET, filelist_checkdir_dir(), filelist_checkdir_lib(), filelist_checkdir_main(), filelist_checkdir_main_assets(), filelist_readjob_asset_library(), filelist_readjob_dir(), filelist_readjob_lib(), filelist_readjob_main(), filelist_readjob_main_assets(), FILELIST_TAGS_NO_THREADS, FILELIST_TAGS_USES_MAIN_DATA, FileList::filter_fn, FL_FORCE_RESET, FileList::flags, FileList::indexer, is_filtered_asset_library(), is_filtered_file(), is_filtered_lib(), is_filtered_main(), is_filtered_main_assets(), NULL, prepare_filter_asset_library(), FileList::prepare_filter_fn, FileList::read_job_fn, FileList::tags, FileList::type, and type.
Referenced by file_refresh(), and filelist_new().
Definition at line 720 of file filelist.c.
References BLI_assert, BLI_listbase_sort_r(), compare_date(), compare_extension(), compare_name(), compare_size(), FileListIntern::entries, FILE_SORT_ALPHA, FILE_SORT_DEFAULT, FILE_SORT_EXTENSION, FILE_SORT_SIZE, FILE_SORT_TIME, FileList::filelist_intern, filelist_tag_needs_filtering(), FL_NEED_SORTING, FileList::flags, NULL, and FileList::sort.
Referenced by blender::ed::asset::AssetList::fetch(), file_refresh(), and filelist_files_ensure().
Definition at line 2145 of file filelist.c.
References FL_FORCE_RESET, and FileList::flags.
Definition at line 2150 of file filelist.c.
References FILELIST_TAGS_USES_MAIN_DATA, FL_FORCE_RESET_MAIN_FILES, FileList::flags, and FileList::tags.
Referenced by file_refresh(), file_reset_filelist_showing_main_data(), and blender::ed::asset::AssetList::tagMainDataDirty().
Definition at line 1056 of file filelist.c.
References FL_NEED_FILTERING, and FileList::flags.
Referenced by blender::ed::asset_browser::AssetCatalogDropController::drop_assets_into_catalog(), filelist_clear_ex(), filelist_clear_main_files(), filelist_set_asset_catalog_filter_options(), filelist_setfilter_options(), and filelist_sort().
Definition at line 2328 of file filelist.c.
References atomic_add_and_fetch_uint32(), FileListIntern::curr_uid, and FileList::filelist_intern.
Referenced by filelist_readjob_main_assets_add_items(), and filelist_readjob_recursive_dir_add_items().
Definition at line 2336 of file filelist.c.
References filelist_uid_unset().
Definition at line 2343 of file filelist.c.
References FILE_UID_UNSET.
Referenced by filelist_readjob_startjob(), and filelist_uid_is_set().
|
static |
Definition at line 216 of file filelist.c.
References BLI_freelinkN(), SpaceFile::folder_histories, folderlist_free(), FileFolderHistory::folders_next, SpaceFile::folders_next, FileFolderHistory::folders_prev, SpaceFile::folders_prev, and NULL.
Referenced by folder_history_list_free().
|
static |
Definition at line 191 of file filelist.c.
References SpaceFile::folder_histories, LISTBASE_FOREACH, and NULL.
Referenced by folder_history_list_ensure_for_active_browse_mode().
Definition at line 236 of file filelist.c.
References BLI_addtail(), folderlist_duplicate(), FileFolderHistory::folders_next, FileFolderHistory::folders_prev, LISTBASE_FOREACH, MEM_dupallocN, and NULL.
Referenced by file_duplicate().
Definition at line 202 of file filelist.c.
References BLI_addtail(), FileFolderHistory::browse_mode, SpaceFile::browse_mode, SpaceFile::folder_histories, folder_history_find(), FileFolderHistory::folders_next, SpaceFile::folders_next, FileFolderHistory::folders_prev, SpaceFile::folders_prev, and MEM_callocN.
Referenced by file_refresh(), and fileselect_initialize_params_common().
Definition at line 229 of file filelist.c.
References SpaceFile::folder_histories, folder_history_entry_free(), and LISTBASE_FOREACH_MUTABLE.
Referenced by ED_fileselect_exit(), and file_free().
int folderlist_clear_next | ( | struct SpaceFile * | sfile | ) |
Definition at line 145 of file filelist.c.
References BLI_listbase_is_empty(), BLI_path_cmp, ED_fileselect_get_active_params(), FolderList::foldername, SpaceFile::folders_next, SpaceFile::folders_prev, ListBase::last, and params.
Referenced by ED_file_change_dir_ex().
Definition at line 177 of file filelist.c.
References BLI_duplicatelist(), ListBase::first, MEM_dupallocN, and NULL.
Referenced by folder_history_list_duplicate().
Definition at line 166 of file filelist.c.
References BLI_freelistN(), ListBase::first, FolderList::foldername, MEM_freeN, and FolderList::next.
Referenced by ED_file_change_dir_ex(), and folder_history_entry_free().
const char* folderlist_peeklastdir | ( | ListBase * | folderlist | ) |
Definition at line 133 of file filelist.c.
References FolderList::foldername, ListBase::last, and NULL.
Referenced by file_directory_enter_handle().
Definition at line 89 of file filelist.c.
References BLI_freelinkN(), BLI_strncpy(), FILE_MAXDIR, FolderList::foldername, ListBase::last, and MEM_freeN.
Referenced by file_next_exec(), and file_previous_exec().
Definition at line 109 of file filelist.c.
References BLI_addtail(), BLI_path_cmp, BLI_strdup(), FolderList::foldername, ListBase::last, and MEM_mallocN.
Referenced by ED_file_change_dir_ex(), file_next_exec(), file_previous_exec(), and fileselect_initialize_params_common().
|
static |
Definition at line 3003 of file filelist.c.
References BKE_idtype_idcode_from_name(), BLI_assert, BLI_path_slash_rfind(), BLI_strncpy(), and BLO_GROUP_MAX.
Referenced by filelist_readjob_list_lib(), and groupname_to_filter_id().
|
static |
Definition at line 3019 of file filelist.c.
References BKE_idtype_idcode_to_idfilter(), and groupname_to_code().
Referenced by is_filtered_id_file_type().
|
static |
Definition at line 983 of file filelist.c.
References asset_tag_matches_filter(), BLI_strcasestr(), file, file_is_asset_visible_in_catalog_filter_settings(), filelist_file_internal_get_asset_data(), filter(), NULL, and STRNCPY_RLEN.
Referenced by is_filtered_asset_library(), and is_filtered_main_assets().
|
static |
Definition at line 1045 of file filelist.c.
References file, filelist_intern_entry_is_main_file(), filter(), is_filtered_asset(), is_filtered_lib_type(), and is_filtered_main_assets().
Referenced by filelist_settype().
|
static |
Definition at line 904 of file filelist.c.
References file, filter(), is_filtered_file_name(), is_filtered_file_relpath(), and is_filtered_file_type().
Referenced by filelist_settype().
|
static |
Apply the filter string as matching pattern on file name.
Definition at line 859 of file filelist.c.
References file, and filter().
Referenced by is_filtered_file().
|
static |
Apply the filter string as file path matching pattern.
Definition at line 845 of file filelist.c.
References file, and filter().
Referenced by is_filtered_file(), and is_filtered_lib().
|
static |
Definition at line 870 of file filelist.c.
References file, FILE_TYPE_BLENDER, FILE_TYPE_BLENDER_BACKUP, FILE_TYPE_BLENDERLIB, FILE_TYPE_DIR, FILE_TYPE_FOLDER, FILENAME_IS_CURRPAR, filter(), FLF_DO_FILTER, and is_filtered_hidden().
Referenced by is_filtered_file(), is_filtered_id_file_type(), and is_filtered_lib_type().
|
static |
Definition at line 808 of file filelist.c.
References file, FILE_ATTR_HIDDEN, FILE_TYPE_ASSET, FILE_TYPE_BLENDERLIB, FILE_TYPE_DIR, filter(), FLF_ASSETS_ONLY, FLF_HIDE_DOT, FLF_HIDE_PARENT, and is_hidden_dot_filename().
Referenced by is_filtered_file_type(), and is_filtered_main().
|
static |
Definition at line 912 of file filelist.c.
References file, filter(), FLF_DO_FILTER, FLF_HIDE_LIB_DIR, groupname_to_filter_id(), and is_filtered_file_type().
Referenced by is_filtered_lib_type(), and is_filtered_main_assets().
|
static |
Definition at line 1024 of file filelist.c.
References file, filter(), is_filtered_file_relpath(), and is_filtered_lib_type().
Referenced by filelist_settype().
|
static |
Definition at line 1010 of file filelist.c.
References BLI_join_dirfile(), BLO_library_path_explode(), file, FILE_MAX_LIBEXTRA, filter(), is_filtered_file_type(), and is_filtered_id_file_type().
Referenced by is_filtered_asset_library(), and is_filtered_lib().
|
static |
Definition at line 1029 of file filelist.c.
References file, filter(), and is_filtered_hidden().
Referenced by filelist_settype().
|
static |
Definition at line 1036 of file filelist.c.
References file, filter(), is_filtered_asset(), and is_filtered_id_file_type().
Referenced by filelist_settype(), and is_filtered_asset_library().
|
static |
Definition at line 768 of file filelist.c.
References BLI_assert, BLI_path_slash_rfind(), BLI_strncpy(), ELEM, file, FILE_MAX_LIBEXTRA, and len.
Referenced by filelist_readjob_list_dir(), and is_filtered_hidden().
|
static |
Definition at line 1469 of file filelist.c.
References BLI_path_parent_dir_until_exists(), and BLI_windows_get_default_root_dir().
Referenced by filelist_checkdir_dir(), and filelist_checkdir_lib().
|
static |
Definition at line 948 of file filelist.c.
References FileList::asset_library, BLI_assert_msg, file_ensure_updated_catalog_filter_data(), and filter().
Referenced by filelist_settype().
|
static |
Definition at line 460 of file filelist.c.
Referenced by filelist_free_icons(), filelist_geticon_image_ex(), and filelist_init_icons().