⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 xcurse.h

📁 aee是一种易使用的文本编辑器。你可以不用说明书来使用它。它提供终端接口和本地的X-windows接口。它的特性包括即弹的菜单
💻 H
字号:
/*	+---------------------------------------------------------------+	|								|	|  This file is a replacement for the routines in the curses 	|	|  library.  Although the functions contained in this file	|	|  are only a subset of those contained in curses, these 	|	|  will perform the tasks expected of them without the 		|	|  glitches found in curses.					|	|								|	+---------------------------------------------------------------+*/#ifndef __XCURSE_INC__#define __XCURSE_INC__#include <stdio.h>#include <signal.h>#include <fcntl.h>#define KEY_BREAK	0401#define KEY_DOWN	0402#define KEY_UP		0403#define KEY_LEFT	0404#define KEY_RIGHT	0405#define KEY_HOME	0406#define KEY_BACKSPACE	0407#define KEY_F0		0410#define KEY_F(n) 	(KEY_F0+(n))#define KEY_DL		0510#define KEY_IL		0511#define KEY_DC		0512#define KEY_IC		0513#define KEY_EIC		0514#define KEY_CLEAR	0515#define KEY_EOS		0516#define KEY_EOL		0517#define KEY_SF		0520#define KEY_SR		0521#define KEY_NPAGE	0522#define KEY_PPAGE	0523#define KEY_STAB	0524#define KEY_CTAB	0525#define KEY_CATAB	0526#define KEY_ENTER	0527#define KEY_SRESET	0530#define KEY_RESET	0531#define KEY_PRINT	0532#define KEY_LL		0533#define KEY_A1	0534#define KEY_A3	0535#define KEY_B2	0536#define KEY_C1	0537#define KEY_C3	0540#define KEY_BTAB	0541#define KEY_BEG	0542#define KEY_CANCEL	0543#define KEY_CLOSE	0544#define KEY_COMMAND	0545#define KEY_COPY	0546#define KEY_CREATE	0547#define KEY_END	0550#define KEY_EXIT	0551#define KEY_FIND	0552#define KEY_HELP	0553#define KEY_MARK	0554#define KEY_MESSAGE	0555#define KEY_MOVE	0556#define KEY_NEXT	0557#define KEY_OPEN	0560#define KEY_OPTIONS	0561#define KEY_PREVIOUS	0562#define KEY_REDO	0563#define KEY_REFERENCE	0564#define KEY_REFRESH	0565#define KEY_REPLACE	0566#define KEY_RESTART	0567#define KEY_RESUME	0570#define KEY_SAVE	0571#define KEY_SBEG	0572#define KEY_SCANCEL	0573#define KEY_SCOMMAND	0574#define KEY_SCOPY	0575#define KEY_SCREATE	0576#define KEY_SDC	0577#define KEY_SDL	0600#define KEY_SELECT	0601#define KEY_SEND	0602#define KEY_SEOL	0603#define KEY_SEXIT	0604#define KEY_SFIND	0605#define KEY_SHELP	0606#define KEY_SHOME	0607#define KEY_SIC	0610#define KEY_SLEFT	0611#define KEY_SMESSAGE	0612#define KEY_SMOVE	0613#define KEY_SNEXT	0614#define KEY_SOPTIONS	0615#define KEY_SPREVIOUS	0616#define KEY_SPRINT	0617#define KEY_SREDO	0620#define KEY_SREPLACE	0621#define KEY_SRIGHT	0622#define KEY_SRSUME	0623#define KEY_SSAVE	0624#define KEY_SSUSPEND	0625#define KEY_SUNDO	0626#define KEY_SUSPEND	0627#define KEY_UNDO	0630#define TRUE 1#define FALSE 0#define A_STANDOUT 0001	/* standout mode			*/#define SCROLL 1		/* text has been scrolled	*/#define CLEAR  2		/* window has been cleared	*/#define CHANGE 3                /* window has been changed      */#define UP 1			/* direction of scroll		*/#define DOWN 2struct _line {	struct _line *next_screen;	struct _line *prev_screen;	char *row;	char *attributes;	int last_char;	int changed;	int scroll;	int number;	};struct _line *top_of_win;typedef struct WIND {	int SR;		/* starting row		*/	int SC;		/* starting column	*/	int LC;		/* last column		*/	int LX;		/* last cursor column position	*/	int LY;		/* last cursor row position	*/	int Attrib;	/* attributes active in window	*/	int Num_lines;	/* number of lines		*/	int Num_cols;	/* number of columns		*/	int scroll_up;	/* number of lines moved	*/	int scroll_down;	int SCROLL_CLEAR;	/* indicates that window has been scrolled or cleared	*/	struct _line *first_line;	struct _line **line_array;	} WINDOW;extern WINDOW *curscr;extern WINDOW *stdscr;extern int LINES, COLS;/* X-windows definitions	*/#include <X11/Xlib.h>#if defined(__STDC__) || defined(__cplusplus)#define P_(s) s#else#define P_(s) ()#endifextern void copy_window P_((WINDOW *origin, WINDOW *destination));extern void reinitscr P_((void));extern void get_options P_((int argc, char *argv[]));extern void get_defaults P_((void));extern void initscr P_((int cols, int lines));extern void Key_Get P_((void));extern struct _line *Screenalloc P_((int columns));extern WINDOW *newwin P_((int lines, int cols, int start_l, int start_c));extern void wmove P_((WINDOW *window, int row, int column));extern void clear_line P_((struct _line *line, int column, int cols));extern void werase P_((WINDOW *window));extern void wclrtoeol P_((WINDOW *window));extern void wrefresh P_((WINDOW *window));extern void touchwin P_((WINDOW *window));extern void wnoutrefresh P_((WINDOW *window));extern void flushinp P_((void));extern int wgetch P_((WINDOW *window));extern int look_up_key P_((int key_code));extern void waddch P_((WINDOW *window, int c));extern void winsertln P_((WINDOW *window));extern void wdeleteln P_((WINDOW *window));extern void wclrtobot P_((WINDOW *window));extern void wstandout P_((WINDOW *window));extern void wstandend P_((WINDOW *window));extern void waddstr P_((WINDOW *window, char *string));extern void clearok P_((WINDOW *window, int flag));extern void echo P_((void));extern void noecho P_((void));extern void raw P_((void));extern void noraw P_((void));extern void nl P_((void));extern void nonl P_((void));extern void saveterm P_((void));extern void fixterm P_((void));extern void resetterm P_((void));extern void nodelay P_((WINDOW *window, int flag));extern void idlok P_((WINDOW *window, int flag));extern void keypad P_((WINDOW *window, int flag));extern void savetty P_((void));extern void resetty P_((void));extern void endwin P_((void));extern void delwin P_((WINDOW *window));extern void wprintw P_((WINDOW *window, const char* format, ...));extern void iout P_((WINDOW *window, int value, int base));extern int Comp_line P_((struct _line *line1, struct _line *line2));extern struct _line *Insert_line P_((int row, int end_row, WINDOW *window));extern struct _line *Delete_line P_((int row, int end_row, WINDOW *window));extern void CLEAR_TO_EOL P_((WINDOW *window, int row, int column));extern void doupdate P_((void));extern void Position P_((WINDOW *window, int row, int col));extern void Char_out P_((int newc, int newatt, char *line, char *attrib, int offset));extern void draw_cursor P_((int visible));extern void cursor P_((WINDOW *window, int row, int col, int erase, int visible));#undef P_#endif /* __XCURSE_INC__ */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -