kconfig/nconf.h
author danielrubiob@gmail.com
Sun Feb 09 22:24:56 2014 +0100 (2014-02-09)
changeset 3284 f9dec799e51e
permissions -rw-r--r--
complibs/mpc: bump version

Signed-off-by: Daniel Rubio Bonilla <danielrubiob@gmail.com>
Message-Id: <d78f3a4ba2df1e076851.1391984022@uemo>
Patchwork-Id: 318636
     1 /*
     2  * Copyright (C) 2008 Nir Tzachar <nir.tzachar@gmail.com?
     3  * Released under the terms of the GNU GPL v2.0.
     4  *
     5  * Derived from menuconfig.
     6  *
     7  */
     8 
     9 #include <ctype.h>
    10 #include <errno.h>
    11 #include <fcntl.h>
    12 #include <limits.h>
    13 #include <stdarg.h>
    14 #include <stdlib.h>
    15 #include <string.h>
    16 #include <unistd.h>
    17 #include <locale.h>
    18 #include <curses.h>
    19 #include <menu.h>
    20 #include <panel.h>
    21 #include <form.h>
    22 
    23 #include <stdio.h>
    24 #include <time.h>
    25 #include <sys/time.h>
    26 
    27 #include "ncurses.h"
    28 
    29 #define max(a, b) ({\
    30 		typeof(a) _a = a;\
    31 		typeof(b) _b = b;\
    32 		_a > _b ? _a : _b; })
    33 
    34 #define min(a, b) ({\
    35 		typeof(a) _a = a;\
    36 		typeof(b) _b = b;\
    37 		_a < _b ? _a : _b; })
    38 
    39 typedef enum {
    40 	NORMAL = 1,
    41 	MAIN_HEADING,
    42 	MAIN_MENU_BOX,
    43 	MAIN_MENU_FORE,
    44 	MAIN_MENU_BACK,
    45 	MAIN_MENU_GREY,
    46 	MAIN_MENU_HEADING,
    47 	SCROLLWIN_TEXT,
    48 	SCROLLWIN_HEADING,
    49 	SCROLLWIN_BOX,
    50 	DIALOG_TEXT,
    51 	DIALOG_MENU_FORE,
    52 	DIALOG_MENU_BACK,
    53 	DIALOG_BOX,
    54 	INPUT_BOX,
    55 	INPUT_HEADING,
    56 	INPUT_TEXT,
    57 	INPUT_FIELD,
    58 	FUNCTION_TEXT,
    59 	FUNCTION_HIGHLIGHT,
    60 	ATTR_MAX
    61 } attributes_t;
    62 extern attributes_t attributes[];
    63 
    64 typedef enum {
    65 	F_HELP = 1,
    66 	F_SYMBOL = 2,
    67 	F_INSTS = 3,
    68 	F_CONF = 4,
    69 	F_BACK = 5,
    70 	F_SAVE = 6,
    71 	F_LOAD = 7,
    72 	F_SEARCH = 8,
    73 	F_EXIT = 9,
    74 } function_key;
    75 
    76 void set_colors(void);
    77 
    78 /* this changes the windows attributes !!! */
    79 void print_in_middle(WINDOW *win,
    80 		int starty,
    81 		int startx,
    82 		int width,
    83 		const char *string,
    84 		chtype color);
    85 int get_line_length(const char *line);
    86 int get_line_no(const char *text);
    87 const char *get_line(const char *text, int line_no);
    88 void fill_window(WINDOW *win, const char *text);
    89 int btn_dialog(WINDOW *main_window, const char *msg, int btn_num, ...);
    90 int dialog_inputbox(WINDOW *main_window,
    91 		const char *title, const char *prompt,
    92 		const char *init, char *result, int result_len);
    93 void refresh_all_windows(WINDOW *main_window);
    94 void show_scroll_win(WINDOW *main_window,
    95 		const char *title,
    96 		const char *text);