123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- /*
- Native File Dialog
- User API
- http://www.frogtoss.com/labs
- */
- #ifndef _NFD_H
- #define _NFD_H
- #ifdef __cplusplus
- extern "C" {
- #endif
- #include <stddef.h>
- /* denotes UTF-8 char */
- typedef char nfdchar_t;
- /* opaque data structure -- see NFD_PathSet_* */
- typedef struct {
- nfdchar_t *buf;
- size_t *indices; /* byte offsets into buf */
- size_t count; /* number of indices into buf */
- }nfdpathset_t;
- typedef enum {
- NFD_ERROR, /* programmatic error */
- NFD_OKAY, /* user pressed okay, or successful return */
- NFD_CANCEL /* user pressed cancel */
- }nfdresult_t;
-
- /* nfd_<targetplatform>.c */
- /* single file open dialog */
- nfdresult_t NFD_OpenDialog( const nfdchar_t *filterList,
- const nfdchar_t *defaultPath,
- nfdchar_t **outPath );
- /* multiple file open dialog */
- nfdresult_t NFD_OpenDialogMultiple( const nfdchar_t *filterList,
- const nfdchar_t *defaultPath,
- nfdpathset_t *outPaths );
- /* save dialog */
- nfdresult_t NFD_SaveDialog( const nfdchar_t *filterList,
- const nfdchar_t *defaultPath,
- nfdchar_t **outPath );
- /* nfd_common.c */
- /* get last error -- set when nfdresult_t returns NFD_ERROR */
- const char *NFD_GetError( void );
- /* get the number of entries stored in pathSet */
- size_t NFD_PathSet_GetCount( const nfdpathset_t *pathSet );
- /* Get the UTF-8 path at offset index */
- nfdchar_t *NFD_PathSet_GetPath( const nfdpathset_t *pathSet, size_t index );
- /* Free the pathSet */
- void NFD_PathSet_Free( nfdpathset_t *pathSet );
- #ifdef __cplusplus
- }
- #endif
- #endif
|