| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596 | /* * Copyright (C) 2008 Nir Tzachar <nir.tzachar@gmail.com? * Released under the terms of the GNU GPL v2.0. * * Derived from menuconfig. * */#include <ctype.h>#include <errno.h>#include <fcntl.h>#include <limits.h>#include <stdarg.h>#include <stdlib.h>#include <string.h>#include <unistd.h>#include <locale.h>#include <curses.h>#include <menu.h>#include <panel.h>#include <form.h>#include <stdio.h>#include <time.h>#include <sys/time.h>#include "ncurses.h"#define max(a, b) ({\		typeof(a) _a = a;\		typeof(b) _b = b;\		_a > _b ? _a : _b; })#define min(a, b) ({\		typeof(a) _a = a;\		typeof(b) _b = b;\		_a < _b ? _a : _b; })typedef enum {	NORMAL = 1,	MAIN_HEADING,	MAIN_MENU_BOX,	MAIN_MENU_FORE,	MAIN_MENU_BACK,	MAIN_MENU_GREY,	MAIN_MENU_HEADING,	SCROLLWIN_TEXT,	SCROLLWIN_HEADING,	SCROLLWIN_BOX,	DIALOG_TEXT,	DIALOG_MENU_FORE,	DIALOG_MENU_BACK,	DIALOG_BOX,	INPUT_BOX,	INPUT_HEADING,	INPUT_TEXT,	INPUT_FIELD,	FUNCTION_TEXT,	FUNCTION_HIGHLIGHT,	ATTR_MAX} attributes_t;extern attributes_t attributes[];typedef enum {	F_HELP = 1,	F_SYMBOL = 2,	F_INSTS = 3,	F_CONF = 4,	F_BACK = 5,	F_SAVE = 6,	F_LOAD = 7,	F_SEARCH = 8,	F_EXIT = 9,} function_key;void set_colors(void);/* this changes the windows attributes !!! */void print_in_middle(WINDOW *win,		int starty,		int startx,		int width,		const char *string,		chtype color);int get_line_length(const char *line);int get_line_no(const char *text);const char *get_line(const char *text, int line_no);void fill_window(WINDOW *win, const char *text);int btn_dialog(WINDOW *main_window, const char *msg, int btn_num, ...);int dialog_inputbox(WINDOW *main_window,		const char *title, const char *prompt,		const char *init, char **resultp, int *result_len);void refresh_all_windows(WINDOW *main_window);void show_scroll_win(WINDOW *main_window,		const char *title,		const char *text);
 |