2 Commits

Author SHA1 Message Date
f36533cbd8 rlparser: update raylib_api.* by CI 2026-04-01 21:23:44 +00:00
Ray
5c2dee0862 REVIEWED: LoadDirectoryFiles*() comments 2026-04-01 23:23:25 +02:00
6 changed files with 25 additions and 21 deletions

View File

@ -1161,8 +1161,8 @@ RLAPI int MakeDirectory(const char *dirPath); // Create di
RLAPI bool ChangeDirectory(const char *dirPath); // Change working directory, return true on success RLAPI bool ChangeDirectory(const char *dirPath); // Change working directory, return true on success
RLAPI bool IsPathFile(const char *path); // Check if a given path is a file or a directory RLAPI bool IsPathFile(const char *path); // Check if a given path is a file or a directory
RLAPI bool IsFileNameValid(const char *fileName); // Check if fileName is valid for the platform/OS RLAPI bool IsFileNameValid(const char *fileName); // Check if fileName is valid for the platform/OS
RLAPI FilePathList LoadDirectoryFiles(const char *dirPath); // Load directory filepaths RLAPI FilePathList LoadDirectoryFiles(const char *dirPath); // Load directory filepaths, files and directories, no subdirs scan
RLAPI FilePathList LoadDirectoryFilesEx(const char *basePath, const char *filter, bool scanSubdirs); // Load directory filepaths with extension filtering and recursive directory scan. Use 'DIR' in the filter string to include directories in the result RLAPI FilePathList LoadDirectoryFilesEx(const char *basePath, const char *filter, bool scanSubdirs); // Load directory filepaths with extension filtering and subdir scan; some filters available: "*.*", "FILES*", "DIRS*"
RLAPI void UnloadDirectoryFiles(FilePathList files); // Unload filepaths RLAPI void UnloadDirectoryFiles(FilePathList files); // Unload filepaths
RLAPI bool IsFileDropped(void); // Check if a file has been dropped into window RLAPI bool IsFileDropped(void); // Check if a file has been dropped into window
RLAPI FilePathList LoadDroppedFiles(void); // Load dropped filepaths RLAPI FilePathList LoadDroppedFiles(void); // Load dropped filepaths

View File

@ -267,15 +267,18 @@
#define MAX_AUTOMATION_EVENTS 16384 // Maximum number of automation events to record #define MAX_AUTOMATION_EVENTS 16384 // Maximum number of automation events to record
#endif #endif
// File and directory scan filters
// NOTE: Used in ScanDirectoryFiles(), LoadDirectoryFilesEx() and GetDirectoryFileCountEx()
// WARNING: Custom file filters can be specified but following raylib IsFileExtension() convention: ".png;.wav;.glb"
#ifndef FILE_FILTER_TAG_ALL #ifndef FILE_FILTER_TAG_ALL
#define FILE_FILTER_TAG_ALL "*.*" // Filter to include all file types and directories on directory scan #define FILE_FILTER_TAG_ALL "*.*" // Filter to include all file types and directories on scan
#endif // NOTE: Used in ScanDirectoryFiles(), LoadDirectoryFilesEx() and GetDirectoryFileCountEx() #endif
#ifndef FILE_FILTER_TAG_FILE_ONLY #ifndef FILE_FILTER_TAG_FILE_ONLY
#define FILE_FILTER_TAG_FILE_ONLY "FILES*" // Filter to include all file types on directory scan #define FILE_FILTER_TAG_FILE_ONLY "FILES*" // Filter to include all file types on scan (no directories)
#endif // NOTE: Used in ScanDirectoryFiles(), LoadDirectoryFilesEx() and GetDirectoryFileCountEx() #endif
#ifndef FILE_FILTER_TAG_DIR_ONLY #ifndef FILE_FILTER_TAG_DIR_ONLY
#define FILE_FILTER_TAG_DIR_ONLY "DIR*" // Filter to include directories on directory scan #define FILE_FILTER_TAG_DIR_ONLY "DIRS*" // Filter to include only directories on scan
#endif // NOTE: Used in ScanDirectoryFiles(), LoadDirectoryFilesEx() and GetDirectoryFileCountEx() #endif
// Flags bitwise operation macros // Flags bitwise operation macros
#define FLAG_SET(n, f) ((n) |= (f)) #define FLAG_SET(n, f) ((n) |= (f))
@ -2720,17 +2723,18 @@ const char *GetApplicationDirectory(void)
// Load directory filepaths // Load directory filepaths
// NOTE: Base path is prepended to the scanned filepaths // NOTE: Base path is prepended to the scanned filepaths
// WARNING: Directory is scanned twice, first time to get files count // WARNING: Directory is scanned twice, first time to get paths count
// No recursive scanning is done! // Scanneed files and directories, no recursive/subdirs scanning
FilePathList LoadDirectoryFiles(const char *dirPath) FilePathList LoadDirectoryFiles(const char *dirPath)
{ {
return LoadDirectoryFilesEx(dirPath, FILE_FILTER_TAG_ALL, false); return LoadDirectoryFilesEx(dirPath, FILE_FILTER_TAG_ALL, false);
} }
// Load directory filepaths with extension filtering and recursive directory scan // Load directory filepaths with extension filtering and recursive directory scan
// Use 'DIR*' to include directories on directory scan // Use "*.*" to include all files and directories on scan
// Use '*.*' to include all file types and directories on directory scan // Use "FILES*" to include only files on scan
// WARNING: Directory is scanned twice, first time to get files count // Use "DIRS*" to include only directories on scan
// WARNING: Directory is scanned twice, first time to get paths count
FilePathList LoadDirectoryFilesEx(const char *basePath, const char *filter, bool scanSubdirs) FilePathList LoadDirectoryFilesEx(const char *basePath, const char *filter, bool scanSubdirs)
{ {
FilePathList files = { 0 }; FilePathList files = { 0 };

View File

@ -4685,7 +4685,7 @@
}, },
{ {
"name": "LoadDirectoryFiles", "name": "LoadDirectoryFiles",
"description": "Load directory filepaths", "description": "Load directory filepaths, files and directories, no subdirs scan",
"returnType": "FilePathList", "returnType": "FilePathList",
"params": [ "params": [
{ {
@ -4696,7 +4696,7 @@
}, },
{ {
"name": "LoadDirectoryFilesEx", "name": "LoadDirectoryFilesEx",
"description": "Load directory filepaths with extension filtering and recursive directory scan. Use 'DIR' in the filter string to include directories in the result", "description": "Load directory filepaths with extension filtering and subdir scan; some filters available: "*.*", "FILES*", "DIRS*"",
"returnType": "FilePathList", "returnType": "FilePathList",
"params": [ "params": [
{ {

View File

@ -4199,7 +4199,7 @@ return {
}, },
{ {
name = "LoadDirectoryFiles", name = "LoadDirectoryFiles",
description = "Load directory filepaths", description = "Load directory filepaths, files and directories, no subdirs scan",
returnType = "FilePathList", returnType = "FilePathList",
params = { params = {
{type = "const char *", name = "dirPath"} {type = "const char *", name = "dirPath"}
@ -4207,7 +4207,7 @@ return {
}, },
{ {
name = "LoadDirectoryFilesEx", name = "LoadDirectoryFilesEx",
description = "Load directory filepaths with extension filtering and recursive directory scan. Use 'DIR' in the filter string to include directories in the result", description = "Load directory filepaths with extension filtering and subdir scan; some filters available: "*.*", "FILES*", "DIRS*"",
returnType = "FilePathList", returnType = "FilePathList",
params = { params = {
{type = "const char *", name = "basePath"}, {type = "const char *", name = "basePath"},

View File

@ -1784,12 +1784,12 @@ Function 145: IsFileNameValid() (1 input parameters)
Function 146: LoadDirectoryFiles() (1 input parameters) Function 146: LoadDirectoryFiles() (1 input parameters)
Name: LoadDirectoryFiles Name: LoadDirectoryFiles
Return type: FilePathList Return type: FilePathList
Description: Load directory filepaths Description: Load directory filepaths, files and directories, no subdirs scan
Param[1]: dirPath (type: const char *) Param[1]: dirPath (type: const char *)
Function 147: LoadDirectoryFilesEx() (3 input parameters) Function 147: LoadDirectoryFilesEx() (3 input parameters)
Name: LoadDirectoryFilesEx Name: LoadDirectoryFilesEx
Return type: FilePathList Return type: FilePathList
Description: Load directory filepaths with extension filtering and recursive directory scan. Use 'DIR' in the filter string to include directories in the result Description: Load directory filepaths with extension filtering and subdir scan; some filters available: "*.*", "FILES*", "DIRS*"
Param[1]: basePath (type: const char *) Param[1]: basePath (type: const char *)
Param[2]: filter (type: const char *) Param[2]: filter (type: const char *)
Param[3]: scanSubdirs (type: bool) Param[3]: scanSubdirs (type: bool)

View File

@ -1122,10 +1122,10 @@
<Function name="IsFileNameValid" retType="bool" paramCount="1" desc="Check if fileName is valid for the platform/OS"> <Function name="IsFileNameValid" retType="bool" paramCount="1" desc="Check if fileName is valid for the platform/OS">
<Param type="const char *" name="fileName" desc="" /> <Param type="const char *" name="fileName" desc="" />
</Function> </Function>
<Function name="LoadDirectoryFiles" retType="FilePathList" paramCount="1" desc="Load directory filepaths"> <Function name="LoadDirectoryFiles" retType="FilePathList" paramCount="1" desc="Load directory filepaths, files and directories, no subdirs scan">
<Param type="const char *" name="dirPath" desc="" /> <Param type="const char *" name="dirPath" desc="" />
</Function> </Function>
<Function name="LoadDirectoryFilesEx" retType="FilePathList" paramCount="3" desc="Load directory filepaths with extension filtering and recursive directory scan. Use 'DIR' in the filter string to include directories in the result"> <Function name="LoadDirectoryFilesEx" retType="FilePathList" paramCount="3" desc="Load directory filepaths with extension filtering and subdir scan; some filters available: "*.*", "FILES*", "DIRS*"">
<Param type="const char *" name="basePath" desc="" /> <Param type="const char *" name="basePath" desc="" />
<Param type="const char *" name="filter" desc="" /> <Param type="const char *" name="filter" desc="" />
<Param type="bool" name="scanSubdirs" desc="" /> <Param type="bool" name="scanSubdirs" desc="" />