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