1 /* 2 * (c) Copyright 1990, Kim Fabricius Storm. All rights reserved. 3 * Copyright (c) 1996-2004 Michael T Pins. All rights reserved. 4 * 5 * Terminal interface definitions. 6 */ 7 8 #ifndef _NN_TERM_H 9 #define _NN_TERM_H 1 10 11 #include <stdarg.h> 12 13 extern int Lines, Columns, Name_Length; 14 extern int cookie_size; 15 extern int STANDOUT; 16 17 #define NONE (char *)NULL /* no default string etc. */ 18 19 #define GET_S_BUFFER 256 /* if caller want to reuse get_s buffer */ 20 21 /* special keys returned by get_c() */ 22 23 #define K_interrupt CONTROL_('G') 24 25 #define K_up_arrow 0x0081 26 #define K_down_arrow 0x0082 27 #define K_left_arrow 0x0083 28 #define K_right_arrow 0x0084 29 30 #define K_function(n) (0x0085 + n) 31 #define K_m_d1 0x008f 32 #define K_m_d2 0x0090 33 #define K_m_d3 0x0091 34 #define K_m_u1 0x0092 35 #define K_m_u2 0x0093 36 #define K_m_u3 0x0094 37 38 #define GETC_COMMAND 0x4000 /* bit set by get_c to return a command */ 39 40 41 /* 42 * prompt_line = ... 43 * prompt( [P_COMMAND], ] [ format [, arg1 ... , arg4] ] ); 44 * 45 * P_MOVE: just move to prompt line 46 * P_REDRAW: redraw prompt 47 * P_VERSION: print version on prompt line 48 */ 49 50 51 int prompt_line; /* prompt line */ 52 53 #define P_MOVE (char *)1 54 #define P_REDRAW (char *)5 55 #define P_VERSION (char *)9 56 #define P_SAVE (char *)13 57 #define P_RESTORE (char *)17 58 59 #define CLEAR_DISPLAY 0x01 60 #define CONFIRMATION 0x02 61 62 #include "keymap.h" 63 64 void enter_multi_key(int, key_type *); 65 void dump_multi_keys(void); 66 void init_term(int); 67 void home(void); 68 void save_xy(void); 69 void restore_xy(void); 70 void gotoxy(int, int); 71 void clrdisp(void); 72 void clrline(void); 73 void clrline_noflush(void); 74 void clrpage(void); 75 void tprintf(char *,...); 76 void tputc(int); 77 int so_gotoxy(int, int, int); 78 void so_printf(char *,...); 79 void so_end(void); 80 void so_printxy(int, int, char *,...); 81 int underline(int); 82 int highlight(int); 83 int shadeline(int); 84 void xterm_mouse_on(void); 85 void xterm_mouse_off(void); 86 void visual_on(void); 87 int visual_off(void); 88 void nn_raw(void); 89 int no_raw(void); 90 int unset_raw(void); 91 void flush_input(void); 92 int get_c(void); 93 char *get_s(char *, char *, char *, fct_type); 94 int list_completion(char *); 95 int yes(int); 96 void ding(void); 97 void display_file(char *, int); 98 void nn_exitmsg(int, char *,...); 99 void vmsg(char *, va_list); 100 void msg(char *,...); 101 void clrmsg(int); 102 void prompt(char *,...); 103 int any_key(int); 104 void pg_init(int, int); 105 int pg_scroll(int); 106 int pg_next(void); 107 void pg_indent(int); 108 int pg_end(void); 109 void user_delay(int); 110 #endif /* _NN_TERM_H */ 111