src/filemanager/achown.c: cleanup.
[midnight-commander.git] / lib / tty / color-internal.h
blobacf911050642485c4a2169ca7635a0740c5d23a9
2 /** \file color-internal.h
3 * \brief Header: Internal stuff of color setup
4 */
6 #ifndef MC__COLOR_INTERNAL_H
7 #define MC__COLOR_INTERNAL_H
9 #include <sys/types.h> /* size_t */
11 #include "lib/global.h"
13 #ifdef HAVE_SLANG
14 #include "tty-slang.h"
15 #else
16 #include "tty-ncurses.h"
17 #endif /* HAVE_SLANG */
19 /*** typedefs(not structures) and defined constants **********************************************/
21 /*** enums ***************************************************************************************/
23 /* *INDENT-OFF* */
24 typedef enum {
25 SPEC_A_REVERSE = -100,
26 SPEC_A_BOLD = -101,
27 SPEC_A_BOLD_REVERSE = -102,
28 SPEC_A_UNDERLINE = -103
29 } tty_special_color_t;
30 /* *INDENT-ON* */
32 /*** structures declarations (and typedefs of structures)*****************************************/
34 typedef struct mc_color_pair_struct
36 int ifg;
37 int ibg;
38 int attr;
39 size_t pair_index;
40 gboolean is_temp;
41 } tty_color_pair_t;
43 /*** global variables defined in .c file *********************************************************/
45 extern gboolean use_colors;
46 extern gboolean mc_tty_color_disable;
48 /*** declarations of public functions ************************************************************/
50 const char *tty_color_get_name_by_index (int);
51 int tty_color_get_index_by_name (const char *);
52 int tty_attr_get_bits (const char *);
54 void tty_color_init_lib (gboolean, gboolean);
55 void tty_color_deinit_lib (void);
57 void tty_color_try_alloc_pair_lib (tty_color_pair_t *);
59 /*** inline functions ****************************************************************************/
60 #endif /* MC_COLOR_INTERNAL_H */