diff options
Diffstat (limited to 'source/blender/editors/asset/intern/asset_list.cc')
-rw-r--r-- | source/blender/editors/asset/intern/asset_list.cc | 36 |
1 files changed, 10 insertions, 26 deletions
diff --git a/source/blender/editors/asset/intern/asset_list.cc b/source/blender/editors/asset/intern/asset_list.cc index c1b1e33d428..1bfdd83b8e3 100644 --- a/source/blender/editors/asset/intern/asset_list.cc +++ b/source/blender/editors/asset/intern/asset_list.cc @@ -44,10 +44,15 @@ #include "../space_file/filelist.h" #include "ED_asset_handle.h" +#include "ED_asset_indexer.h" #include "ED_asset_list.h" #include "ED_asset_list.hh" #include "asset_library_reference.hh" +/* Enable asset indexing. Currently disabled as ID properties aren't indexed yet and is needed for + * object snapping. See {D12990}. */ +//#define SPACE_FILE_ENABLE_ASSET_INDEXING + namespace blender::ed::asset { /* -------------------------------------------------------------------- */ @@ -169,6 +174,10 @@ void AssetList::setup() "", ""); +#ifdef SPACE_FILE_ENABLE_ASSET_INDEXING + filelist_setindexer(files, &file_indexer_asset); +#endif + char path[FILE_MAXDIR] = ""; if (user_library) { BLI_strncpy(path, user_library->path, sizeof(path)); @@ -309,6 +318,7 @@ StringRef AssetList::filepath() const { return filelist_dir(filelist_); } + /** \} */ /* -------------------------------------------------------------------- */ @@ -425,10 +435,6 @@ AssetListStorage::AssetListMap &AssetListStorage::global_storage() using namespace blender::ed::asset; -/** - * Invoke asset list reading, potentially in a parallel job. Won't wait until the job is done, - * and may return earlier. - */ void ED_assetlist_storage_fetch(const AssetLibraryReference *library_reference, const bContext *C) { AssetListStorage::fetch_library(*library_reference, *C); @@ -523,9 +529,6 @@ const char *ED_assetlist_library_path(const AssetLibraryReference *library_refer return nullptr; } -/** - * \return True if the region needs a UI redraw. - */ bool ED_assetlist_listen(const AssetLibraryReference *library_reference, const wmNotifier *notifier) { @@ -536,10 +539,6 @@ bool ED_assetlist_listen(const AssetLibraryReference *library_reference, return false; } -/** - * \return The number of assets stored in the asset list for \a library_reference, or -1 if there - * is no list fetched for it. - */ int ED_assetlist_size(const AssetLibraryReference *library_reference) { AssetList *list = AssetListStorage::lookup_list(*library_reference); @@ -549,31 +548,16 @@ int ED_assetlist_size(const AssetLibraryReference *library_reference) return -1; } -/** - * Tag all asset lists in the storage that show main data as needing an update (re-fetch). - * - * This only tags the data. If the asset list is visible on screen, the space is still responsible - * for ensuring the necessary redraw. It can use #ED_assetlist_listen() to check if the asset-list - * needs a redraw for a given notifier. - */ void ED_assetlist_storage_tag_main_data_dirty() { AssetListStorage::tagMainDataDirty(); } -/** - * Remapping of ID pointers within the asset lists. Typically called when an ID is deleted to clear - * all references to it (\a id_new is null then). - */ void ED_assetlist_storage_id_remap(ID *id_old, ID *id_new) { AssetListStorage::remapID(id_old, id_new); } -/** - * Can't wait for static deallocation to run. There's nested data allocated with our guarded - * allocator, it will complain about unfreed memory on exit. - */ void ED_assetlist_storage_exit() { AssetListStorage::destruct(); |