fe

terminal file explorer and picker

git clone https://9o.is/git/fe.git

entries.h

(1394B)


      1 #ifndef ENTRIES_H
      2 #define ENTRIES_H ENTRIES_H
      3 
      4 #include <dirent.h>
      5 #include <limits.h>
      6 #include <sys/types.h>
      7 #include "options.h"
      8 
      9 struct entry {
     10     char name[PATH_MAX];
     11     mode_t mode;
     12     time_t t;
     13     unsigned int color;
     14     char cm;
     15 };
     16 
     17 typedef struct {
     18     char path[PATH_MAX];
     19     struct entry *dents;
     20     size_t size;
     21     size_t selection;
     22 } entries_t;
     23 
     24 void entries_init(entries_t *entries, const options_t *options);
     25 void entries_init_path(entries_t *entries, const char *path);
     26 void entries_init_stdinpath(entries_t *entries);
     27 void entries_destroy(entries_t *entries);
     28 void entries_reload(entries_t *entries);
     29 void entries_parent(entries_t *entries);
     30 void entries_prev(entries_t *entries);
     31 void entries_next(entries_t *entries);
     32 void entries_position(entries_t *entries, size_t position);
     33 void entries_setpath(entries_t *entries, char *path);
     34 void entries_togglehidden();
     35 int entries_select(entries_t *entries);
     36 struct entry *entries_item(entries_t *entries, size_t n);
     37 struct entry *entries_selected(entries_t *entries);
     38 int entries_remove(entries_t *entries);
     39 int entries_create_file(entries_t *entries, const char *filename);
     40 int entries_create_dir(entries_t *entries, const char *dirname);
     41 int entries_find_file(entries_t *entries, const char *filename);
     42 int entries_copy_file(const char *src, const char *dst);
     43 int entries_move_file(const char *src, const char *dst);
     44 
     45 #endif