diff options
Diffstat (limited to 'lib/file-entry.h')
-rw-r--r-- | lib/file-entry.h | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/lib/file-entry.h b/lib/file-entry.h new file mode 100644 index 0000000..2d9cfc4 --- /dev/null +++ b/lib/file-entry.h @@ -0,0 +1,49 @@ +/** \file lib/file-entry.h + * \brief Header: file entry definition + */ + +#ifndef MC__ILE_ENTRY_H +#define MC__ILE_ENTRY_H + +#include <sys/types.h> +#include <sys/stat.h> + +#include "lib/global.h" /* include <glib.h> */ + +/*** typedefs(not structures) and defined constants **********************************************/ + +/*** enums ***************************************************************************************/ + +/*** structures declarations (and typedefs of structures)*****************************************/ + +/* keys are set only during sorting */ +typedef struct +{ + /* File name */ + GString *fname; + /* File attributes */ + struct stat st; + /* Key used for comparing names */ + char *name_sort_key; + /* Key used for comparing extensions */ + char *extension_sort_key; + + /* Flags */ + struct + { + unsigned int marked:1; /* File marked in pane window */ + unsigned int link_to_dir:1; /* If this is a link, does it point to directory? */ + unsigned int stale_link:1; /* If this is a symlink and points to Charon's land */ + unsigned int dir_size_computed:1; /* Size of directory was computed with dirsizes_cmd */ + } f; +} file_entry_t; + +/*** global variables defined in .c file *********************************************************/ + +/*** declarations of public functions ************************************************************/ + +/* --------------------------------------------------------------------------------------------- */ +/*** inline functions ****************************************************************************/ +/* --------------------------------------------------------------------------------------------- */ + +#endif /* MC__FILE_ENTRY_H */ |