#define STATUS_QUIT_PROGRAM 1 #define STATUS_RUN_BACKEND 2 #define STATUS_UPDATE_SCREEN_MASK 12 /* 1100*/ #define STATUS_UPDATE_SCREEN_0 4 #define STATUS_UPDATE_SCREEN_RESIZE 8 #define SETTINGS_HAS_COLOR 1 #define FILE_MODIFIERS_HIDDEN_FILES 1 #define FILE_MODIFIERS_SORT_BITMASK 126 /* 00000000000000000000000001111110*/ #define FILE_MODIFIERS_SORT_ALPHABETIC 2 #define FILE_MODIFIERS_SORT_TYPE 4 #define FILE_MODIFIERS_SORT_EXTENSION 8 #define FILE_MODIFIERS_SORT_SIZE 16 #define FILE_MODIFIERS_SORT_RANDOM 32 #define FILE_MODIFIERS_SORT_REVERSE 64 /*FILE_MODIFIERS_SORT_NATURAL is when bitmask is 0*/ #define FILE_STATUS_HOVER 1 #define FILE_STATUS_SELECTED 2; #define FILE_STATUS_IS_REGULAR_FILE 4 #define COLOR_DIR 1 #define COLOR_EXEC 2 #define COLOR_REGULAR 3 #define COLOR_SYMLINK 4 #define COLOR_BLOCK 5 #define COLOR_CHARDEV 6 #define COLOR_FIFO 0 #define COLOR_SOCK 8 #define COLOR_PATH 9 #ifndef GUARD #define GUARD /* complex types are good actually */ typedef struct File { char status; char *file_name; unsigned char file_type; unsigned short color_pair; unsigned long file_name_width; unsigned long file_size_bytes; } file; typedef struct Color { char *file_extension; short color_pair; } color; #endif