Diff for tucniak/cuchar/cc_term.c between version 1.5 and 1.6
| version 1.5, 2005/12/02 17:15:00 |
version 1.6, 2005/12/08 21:13:04 |
|
|
| |
|
| #include "cc.h" |
#include "cc.h" |
| |
|
| bool hascolors; |
bool _cc_hascolors; |
| long screenx, |
long _cc_screenx, |
| screeny; |
_cc_screeny; |
| bool uglycharset=false; |
bool _cc_uglycharset=false; |
| char *mapsymbol="lmkjtwuvqxna,+-.", |
char *_cc_mapsymbol="lmkjtwuvqxna,+-.", |
| *ugmsymbol="++++++++-|+ <>AV"; |
*_cc_ugmsymbol="++++++++-|+ <>AV"; |
| short keymap[]={ |
short _cc_keymap[]={ |
| KEY_LEFT,4,END_SEQ,CC_K_LEFT, |
KEY_LEFT,4,END_SEQ,CC_KEY_LEFT, |
| KEY_SLEFT,4,END_SEQ,CC_K_LEFT|CC_D_SHIFT, |
KEY_SLEFT,4,END_SEQ,CC_KEY_LEFT|CC_MOD_SHIFT, |
| KEY_RIGHT,4,END_SEQ,CC_K_RIGHT, |
KEY_RIGHT,4,END_SEQ,CC_KEY_RIGHT, |
| KEY_SRIGHT,4,END_SEQ,CC_K_RIGHT|CC_D_SHIFT, |
KEY_SRIGHT,4,END_SEQ,CC_KEY_RIGHT|CC_MOD_SHIFT, |
| KEY_UP,4,END_SEQ,CC_K_UP, |
KEY_UP,4,END_SEQ,CC_KEY_UP, |
| KEY_DOWN,4,END_SEQ,CC_K_DOWN, |
KEY_DOWN,4,END_SEQ,CC_KEY_DOWN, |
| KEY_HOME,4,END_SEQ,CC_K_HOME, |
KEY_HOME,4,END_SEQ,CC_KEY_HOME, |
| KEY_SHOME,4,END_SEQ,CC_K_HOME|CC_D_SHIFT, |
KEY_SHOME,4,END_SEQ,CC_KEY_HOME|CC_MOD_SHIFT, |
| KEY_END,4,END_SEQ,CC_K_END, |
KEY_END,4,END_SEQ,CC_KEY_END, |
| KEY_SEND,4,END_SEQ,CC_K_END|CC_D_SHIFT, |
KEY_SEND,4,END_SEQ,CC_KEY_END|CC_MOD_SHIFT, |
| KEY_NPAGE,4,END_SEQ,CC_K_PGDOWN, |
KEY_NPAGE,4,END_SEQ,CC_KEY_PGDOWN, |
| KEY_PPAGE,4,END_SEQ,CC_K_PGUP, |
KEY_PPAGE,4,END_SEQ,CC_KEY_PGUP, |
| KEY_B2,4,END_SEQ,CC_K_CENTER, |
KEY_B2,4,END_SEQ,CC_KEY_CENTER, |
| KEY_BACKSPACE,4,END_SEQ,CC_K_BACK, |
KEY_BACKSPACE,4,END_SEQ,CC_KEY_BACK, |
| 127,4,END_SEQ,CC_K_BACK, |
127,4,END_SEQ,CC_KEY_BACK, |
| KEY_ENTER,4,END_SEQ,CC_K_ENTER, |
KEY_ENTER,4,END_SEQ,CC_KEY_ENTER, |
| 10,4,END_SEQ,CC_K_ENTER, |
10,4,END_SEQ,CC_KEY_ENTER, |
| 9,4,END_SEQ,CC_K_TAB, |
9,4,END_SEQ,CC_KEY_TAB, |
| KEY_BTAB,4,END_SEQ,CC_K_TAB|CC_D_SHIFT, |
KEY_BTAB,4,END_SEQ,CC_KEY_TAB|CC_MOD_SHIFT, |
| KEY_DC,4,END_SEQ,CC_K_DEL, |
KEY_DC,4,END_SEQ,CC_KEY_DEL, |
| KEY_SDC,4,END_SEQ,CC_K_DEL|CC_D_SHIFT, |
KEY_SDC,4,END_SEQ,CC_KEY_DEL|CC_MOD_SHIFT, |
| KEY_IC,4,END_SEQ,CC_K_INS, |
KEY_IC,4,END_SEQ,CC_KEY_INS, |
| KEY_SIC,4,END_SEQ,CC_K_INS|CC_D_SHIFT, |
KEY_SIC,4,END_SEQ,CC_KEY_INS|CC_MOD_SHIFT, |
| KEY_BREAK,4,END_SEQ,CC_K_PAUSE, |
KEY_BREAK,4,END_SEQ,CC_KEY_PAUSE, |
| KEY_F(1),4,END_SEQ,CC_K_F1, |
KEY_F(1),4,END_SEQ,CC_KEY_F1, |
| KEY_F(2),4,END_SEQ,CC_K_F2, |
KEY_F(2),4,END_SEQ,CC_KEY_F2, |
| KEY_F(3),4,END_SEQ,CC_K_F3, |
KEY_F(3),4,END_SEQ,CC_KEY_F3, |
| KEY_F(4),4,END_SEQ,CC_K_F4, |
KEY_F(4),4,END_SEQ,CC_KEY_F4, |
| KEY_F(5),4,END_SEQ,CC_K_F5, |
KEY_F(5),4,END_SEQ,CC_KEY_F5, |
| KEY_F(6),4,END_SEQ,CC_K_F6, |
KEY_F(6),4,END_SEQ,CC_KEY_F6, |
| KEY_F(7),4,END_SEQ,CC_K_F7, |
KEY_F(7),4,END_SEQ,CC_KEY_F7, |
| KEY_F(8),4,END_SEQ,CC_K_F8, |
KEY_F(8),4,END_SEQ,CC_KEY_F8, |
| KEY_F(9),4,END_SEQ,CC_K_F9, |
KEY_F(9),4,END_SEQ,CC_KEY_F9, |
| KEY_F(10),4,END_SEQ,CC_K_F10, |
KEY_F(10),4,END_SEQ,CC_KEY_F10, |
| KEY_F(11),4,END_SEQ,CC_K_F11, |
KEY_F(11),4,END_SEQ,CC_KEY_F11, |
| KEY_F(12),4,END_SEQ,CC_K_F12, |
KEY_F(12),4,END_SEQ,CC_KEY_F12, |
| KEY_F(13),4,END_SEQ,CC_K_F1|CC_D_SHIFT, |
KEY_F(13),4,END_SEQ,CC_KEY_F1|CC_MOD_SHIFT, |
| KEY_F(14),4,END_SEQ,CC_K_F2|CC_D_SHIFT, |
KEY_F(14),4,END_SEQ,CC_KEY_F2|CC_MOD_SHIFT, |
| KEY_F(15),4,END_SEQ,CC_K_F3|CC_D_SHIFT, |
KEY_F(15),4,END_SEQ,CC_KEY_F3|CC_MOD_SHIFT, |
| KEY_F(16),4,END_SEQ,CC_K_F4|CC_D_SHIFT, |
KEY_F(16),4,END_SEQ,CC_KEY_F4|CC_MOD_SHIFT, |
| KEY_F(17),4,END_SEQ,CC_K_F5|CC_D_SHIFT, |
KEY_F(17),4,END_SEQ,CC_KEY_F5|CC_MOD_SHIFT, |
| KEY_F(18),4,END_SEQ,CC_K_F6|CC_D_SHIFT, |
KEY_F(18),4,END_SEQ,CC_KEY_F6|CC_MOD_SHIFT, |
| KEY_F(19),4,END_SEQ,CC_K_F7|CC_D_SHIFT, |
KEY_F(19),4,END_SEQ,CC_KEY_F7|CC_MOD_SHIFT, |
| KEY_F(20),4,END_SEQ,CC_K_F8|CC_D_SHIFT, |
KEY_F(20),4,END_SEQ,CC_KEY_F8|CC_MOD_SHIFT, |
| KEY_F(21),4,END_SEQ,CC_K_F9|CC_D_SHIFT, |
KEY_F(21),4,END_SEQ,CC_KEY_F9|CC_MOD_SHIFT, |
| KEY_F(22),4,END_SEQ,CC_K_F10|CC_D_SHIFT, |
KEY_F(22),4,END_SEQ,CC_KEY_F10|CC_MOD_SHIFT, |
| KEY_F(23),4,END_SEQ,CC_K_F11|CC_D_SHIFT, |
KEY_F(23),4,END_SEQ,CC_KEY_F11|CC_MOD_SHIFT, |
| KEY_F(24),4,END_SEQ,CC_K_F12|CC_D_SHIFT, |
KEY_F(24),4,END_SEQ,CC_KEY_F12|CC_MOD_SHIFT, |
| KEY_F(25),4,END_SEQ,CC_K_F1|CC_D_CTRL, |
KEY_F(25),4,END_SEQ,CC_KEY_F1|CC_MOD_CTRL, |
| KEY_F(26),4,END_SEQ,CC_K_F2|CC_D_CTRL, |
KEY_F(26),4,END_SEQ,CC_KEY_F2|CC_MOD_CTRL, |
| KEY_F(27),4,END_SEQ,CC_K_F3|CC_D_CTRL, |
KEY_F(27),4,END_SEQ,CC_KEY_F3|CC_MOD_CTRL, |
| KEY_F(28),4,END_SEQ,CC_K_F4|CC_D_CTRL, |
KEY_F(28),4,END_SEQ,CC_KEY_F4|CC_MOD_CTRL, |
| KEY_F(29),4,END_SEQ,CC_K_F5|CC_D_CTRL, |
KEY_F(29),4,END_SEQ,CC_KEY_F5|CC_MOD_CTRL, |
| KEY_F(30),4,END_SEQ,CC_K_F6|CC_D_CTRL, |
KEY_F(30),4,END_SEQ,CC_KEY_F6|CC_MOD_CTRL, |
| KEY_F(31),4,END_SEQ,CC_K_F7|CC_D_CTRL, |
KEY_F(31),4,END_SEQ,CC_KEY_F7|CC_MOD_CTRL, |
| KEY_F(32),4,END_SEQ,CC_K_F8|CC_D_CTRL, |
KEY_F(32),4,END_SEQ,CC_KEY_F8|CC_MOD_CTRL, |
| KEY_F(33),4,END_SEQ,CC_K_F9|CC_D_CTRL, |
KEY_F(33),4,END_SEQ,CC_KEY_F9|CC_MOD_CTRL, |
| KEY_F(34),4,END_SEQ,CC_K_F10|CC_D_CTRL, |
KEY_F(34),4,END_SEQ,CC_KEY_F10|CC_MOD_CTRL, |
| KEY_F(35),4,END_SEQ,CC_K_F11|CC_D_CTRL, |
KEY_F(35),4,END_SEQ,CC_KEY_F11|CC_MOD_CTRL, |
| KEY_F(36),4,END_SEQ,CC_K_F12|CC_D_CTRL, |
KEY_F(36),4,END_SEQ,CC_KEY_F12|CC_MOD_CTRL, |
| KEY_F(37),4,END_SEQ,CC_K_F1|CC_D_SHIFT|CC_D_CTRL, |
KEY_F(37),4,END_SEQ,CC_KEY_F1|CC_MOD_SHIFT|CC_MOD_CTRL, |
| KEY_F(38),4,END_SEQ,CC_K_F2|CC_D_SHIFT|CC_D_CTRL, |
KEY_F(38),4,END_SEQ,CC_KEY_F2|CC_MOD_SHIFT|CC_MOD_CTRL, |
| KEY_F(39),4,END_SEQ,CC_K_F3|CC_D_SHIFT|CC_D_CTRL, |
KEY_F(39),4,END_SEQ,CC_KEY_F3|CC_MOD_SHIFT|CC_MOD_CTRL, |
| KEY_F(40),4,END_SEQ,CC_K_F4|CC_D_SHIFT|CC_D_CTRL, |
KEY_F(40),4,END_SEQ,CC_KEY_F4|CC_MOD_SHIFT|CC_MOD_CTRL, |
| KEY_F(41),4,END_SEQ,CC_K_F5|CC_D_SHIFT|CC_D_CTRL, |
KEY_F(41),4,END_SEQ,CC_KEY_F5|CC_MOD_SHIFT|CC_MOD_CTRL, |
| KEY_F(42),4,END_SEQ,CC_K_F6|CC_D_SHIFT|CC_D_CTRL, |
KEY_F(42),4,END_SEQ,CC_KEY_F6|CC_MOD_SHIFT|CC_MOD_CTRL, |
| KEY_F(43),4,END_SEQ,CC_K_F7|CC_D_SHIFT|CC_D_CTRL, |
KEY_F(43),4,END_SEQ,CC_KEY_F7|CC_MOD_SHIFT|CC_MOD_CTRL, |
| KEY_F(44),4,END_SEQ,CC_K_F8|CC_D_SHIFT|CC_D_CTRL, |
KEY_F(44),4,END_SEQ,CC_KEY_F8|CC_MOD_SHIFT|CC_MOD_CTRL, |
| KEY_F(45),4,END_SEQ,CC_K_F9|CC_D_SHIFT|CC_D_CTRL, |
KEY_F(45),4,END_SEQ,CC_KEY_F9|CC_MOD_SHIFT|CC_MOD_CTRL, |
| KEY_F(46),4,END_SEQ,CC_K_F10|CC_D_SHIFT|CC_D_CTRL, |
KEY_F(46),4,END_SEQ,CC_KEY_F10|CC_MOD_SHIFT|CC_MOD_CTRL, |
| KEY_F(47),4,END_SEQ,CC_K_F11|CC_D_SHIFT|CC_D_CTRL, |
KEY_F(47),4,END_SEQ,CC_KEY_F11|CC_MOD_SHIFT|CC_MOD_CTRL, |
| KEY_F(48),4,END_SEQ,CC_K_F12|CC_D_SHIFT|CC_D_CTRL, |
KEY_F(48),4,END_SEQ,CC_KEY_F12|CC_MOD_SHIFT|CC_MOD_CTRL, |
| 27,LAST_KEY, |
27,LAST_KEY, |
| ERR,4,END_SEQ,CC_K_ESC, |
ERR,4,END_SEQ,CC_KEY_ESC, |
| 79,114, |
79,114, |
| 51,18, |
51,18, |
| 80,4,END_SEQ,CC_K_F1|CC_D_ALT, |
80,4,END_SEQ,CC_KEY_F1|CC_MOD_ALT, |
| 81,4,END_SEQ,CC_K_F2|CC_D_ALT, |
81,4,END_SEQ,CC_KEY_F2|CC_MOD_ALT, |
| 82,4,END_SEQ,CC_K_F3|CC_D_ALT, |
82,4,END_SEQ,CC_KEY_F3|CC_MOD_ALT, |
| 83,LAST_KEY,END_SEQ,CC_K_F4|CC_D_ALT, |
83,LAST_KEY,END_SEQ,CC_KEY_F4|CC_MOD_ALT, |
| 52,18, |
52,18, |
| 80,4,END_SEQ,CC_K_F1|CC_D_ALT|CC_D_SHIFT, |
80,4,END_SEQ,CC_KEY_F1|CC_MOD_ALT|CC_MOD_SHIFT, |
| 81,4,END_SEQ,CC_K_F2|CC_D_ALT|CC_D_SHIFT, |
81,4,END_SEQ,CC_KEY_F2|CC_MOD_ALT|CC_MOD_SHIFT, |
| 82,4,END_SEQ,CC_K_F3|CC_D_ALT|CC_D_SHIFT, |
82,4,END_SEQ,CC_KEY_F3|CC_MOD_ALT|CC_MOD_SHIFT, |
| 83,LAST_KEY,END_SEQ,CC_K_F4|CC_D_ALT|CC_D_SHIFT, |
83,LAST_KEY,END_SEQ,CC_KEY_F4|CC_MOD_ALT|CC_MOD_SHIFT, |
| 97,4,END_SEQ,CC_K_UP|CC_D_CTRL, |
97,4,END_SEQ,CC_KEY_UP|CC_MOD_CTRL, |
| 98,4,END_SEQ,CC_K_DOWN|CC_D_CTRL, |
98,4,END_SEQ,CC_KEY_DOWN|CC_MOD_CTRL, |
| 99,4,END_SEQ,CC_K_RIGHT|CC_D_CTRL, |
99,4,END_SEQ,CC_KEY_RIGHT|CC_MOD_CTRL, |
| 100,4,END_SEQ,CC_K_LEFT|CC_D_CTRL, |
100,4,END_SEQ,CC_KEY_LEFT|CC_MOD_CTRL, |
| 106,4,END_SEQ,'*', |
106,4,END_SEQ,'*', |
| 107,4,END_SEQ,'+', |
107,4,END_SEQ,'+', |
| 109,4,END_SEQ,'-', |
109,4,END_SEQ,'-', |
| 110,4,END_SEQ,CC_K_DEL, |
110,4,END_SEQ,CC_KEY_DEL, |
| 111,4,END_SEQ,'/', |
111,4,END_SEQ,'/', |
| 112,4,END_SEQ,CC_K_INS, |
112,4,END_SEQ,CC_KEY_INS, |
| 113,4,END_SEQ,CC_K_END, |
113,4,END_SEQ,CC_KEY_END, |
| 114,4,END_SEQ,CC_K_DOWN, |
114,4,END_SEQ,CC_KEY_DOWN, |
| 115,4,END_SEQ,CC_K_PGDOWN, |
115,4,END_SEQ,CC_KEY_PGDOWN, |
| 116,4,END_SEQ,CC_K_LEFT, |
116,4,END_SEQ,CC_KEY_LEFT, |
| 117,4,END_SEQ,CC_K_CENTER, |
117,4,END_SEQ,CC_KEY_CENTER, |
| 118,4,END_SEQ,CC_K_RIGHT, |
118,4,END_SEQ,CC_KEY_RIGHT, |
| 119,4,END_SEQ,CC_K_HOME, |
119,4,END_SEQ,CC_KEY_HOME, |
| 120,4,END_SEQ,CC_K_UP, |
120,4,END_SEQ,CC_KEY_UP, |
| 121,LAST_KEY,END_SEQ,CC_K_PGUP, |
121,LAST_KEY,END_SEQ,CC_KEY_PGUP, |
| 91,LAST_KEY, |
91,LAST_KEY, |
| 80,4,END_SEQ,CC_K_PAUSE, |
80,4,END_SEQ,CC_KEY_PAUSE, |
| 49,180, |
49,180, |
| 49,6, |
49,6, |
| 126,LAST_KEY,END_SEQ,CC_K_F1, |
126,LAST_KEY,END_SEQ,CC_KEY_F1, |
| 50,6, |
50,6, |
| 126,LAST_KEY,END_SEQ,CC_K_F2, |
126,LAST_KEY,END_SEQ,CC_KEY_F2, |
| 51,6, |
51,6, |
| 126,LAST_KEY,END_SEQ,CC_K_F3, |
126,LAST_KEY,END_SEQ,CC_KEY_F3, |
| 52,6, |
52,6, |
| 126,LAST_KEY,END_SEQ,CC_K_F4, |
126,LAST_KEY,END_SEQ,CC_KEY_F4, |
| 53,16, |
53,16, |
| 59,LAST_KEY, |
59,LAST_KEY, |
| 51,6, |
51,6, |
| 126,LAST_KEY,END_SEQ,CC_K_F5|CC_D_ALT, |
126,LAST_KEY,END_SEQ,CC_KEY_F5|CC_MOD_ALT, |
| 52,LAST_KEY, |
52,LAST_KEY, |
| 126,LAST_KEY,END_SEQ,CC_K_F5|CC_D_ALT|CC_D_SHIFT, |
126,LAST_KEY,END_SEQ,CC_KEY_F5|CC_MOD_ALT|CC_MOD_SHIFT, |
| 55,16, |
55,16, |
| 59,LAST_KEY, |
59,LAST_KEY, |
| 51,6, |
51,6, |
| 126,LAST_KEY,END_SEQ,CC_K_F6|CC_D_ALT, |
126,LAST_KEY,END_SEQ,CC_KEY_F6|CC_MOD_ALT, |
| 52,LAST_KEY, |
52,LAST_KEY, |
| 126,LAST_KEY,END_SEQ,CC_K_F6|CC_D_ALT|CC_D_SHIFT, |
126,LAST_KEY,END_SEQ,CC_KEY_F6|CC_MOD_ALT|CC_MOD_SHIFT, |
| 56,16, |
56,16, |
| 59,LAST_KEY, |
59,LAST_KEY, |
| 51,6, |
51,6, |
| 126,LAST_KEY,END_SEQ,CC_K_F7|CC_D_ALT, |
126,LAST_KEY,END_SEQ,CC_KEY_F7|CC_MOD_ALT, |
| 52,LAST_KEY, |
52,LAST_KEY, |
| 126,LAST_KEY,END_SEQ,CC_K_F7|CC_D_ALT|CC_D_SHIFT, |
126,LAST_KEY,END_SEQ,CC_KEY_F7|CC_MOD_ALT|CC_MOD_SHIFT, |
| 57,16, |
57,16, |
| 59,LAST_KEY, |
59,LAST_KEY, |
| 51,6, |
51,6, |
| 126,LAST_KEY,END_SEQ,CC_K_F8|CC_D_ALT, |
126,LAST_KEY,END_SEQ,CC_KEY_F8|CC_MOD_ALT, |
| 52,LAST_KEY, |
52,LAST_KEY, |
| 126,LAST_KEY,END_SEQ,CC_K_F8|CC_D_ALT|CC_D_SHIFT, |
126,LAST_KEY,END_SEQ,CC_KEY_F8|CC_MOD_ALT|CC_MOD_SHIFT, |
| 59,LAST_KEY, |
59,LAST_KEY, |
| 50,10, |
50,10, |
| 65,4,END_SEQ,CC_K_UP|CC_D_SHIFT, |
65,4,END_SEQ,CC_KEY_UP|CC_MOD_SHIFT, |
| 66,LAST_KEY,END_SEQ,CC_K_DOWN|CC_D_SHIFT, |
66,LAST_KEY,END_SEQ,CC_KEY_DOWN|CC_MOD_SHIFT, |
| 51,26, |
51,26, |
| 65,4,END_SEQ,CC_K_UP|CC_D_ALT, |
65,4,END_SEQ,CC_KEY_UP|CC_MOD_ALT, |
| 66,4,END_SEQ,CC_K_DOWN|CC_D_ALT, |
66,4,END_SEQ,CC_KEY_DOWN|CC_MOD_ALT, |
| 67,4,END_SEQ,CC_K_RIGHT|CC_D_ALT, |
67,4,END_SEQ,CC_KEY_RIGHT|CC_MOD_ALT, |
| 68,4,END_SEQ,CC_K_LEFT|CC_D_ALT, |
68,4,END_SEQ,CC_KEY_LEFT|CC_MOD_ALT, |
| 70,4,END_SEQ,CC_K_END|CC_D_ALT, |
70,4,END_SEQ,CC_KEY_END|CC_MOD_ALT, |
| 72,LAST_KEY,END_SEQ,CC_K_HOME|CC_D_ALT, |
72,LAST_KEY,END_SEQ,CC_KEY_HOME|CC_MOD_ALT, |
| 53,26, |
53,26, |
| 65,4,END_SEQ,CC_K_UP|CC_D_CTRL, |
65,4,END_SEQ,CC_KEY_UP|CC_MOD_CTRL, |
| 66,4,END_SEQ,CC_K_DOWN|CC_D_CTRL, |
66,4,END_SEQ,CC_KEY_DOWN|CC_MOD_CTRL, |
| 67,4,END_SEQ,CC_K_RIGHT|CC_D_CTRL, |
67,4,END_SEQ,CC_KEY_RIGHT|CC_MOD_CTRL, |
| 68,4,END_SEQ,CC_K_LEFT|CC_D_CTRL, |
68,4,END_SEQ,CC_KEY_LEFT|CC_MOD_CTRL, |
| 70,4,END_SEQ,CC_K_END|CC_D_CTRL, |
70,4,END_SEQ,CC_KEY_END|CC_MOD_CTRL, |
| 72,LAST_KEY,END_SEQ,CC_K_HOME|CC_D_CTRL, |
72,LAST_KEY,END_SEQ,CC_KEY_HOME|CC_MOD_CTRL, |
| 54,LAST_KEY, |
54,LAST_KEY, |
| 65,4,END_SEQ,CC_K_UP|CC_D_SHIFT|CC_D_CTRL, |
65,4,END_SEQ,CC_KEY_UP|CC_MOD_SHIFT|CC_MOD_CTRL, |
| 66,4,END_SEQ,CC_K_DOWN|CC_D_SHIFT|CC_D_CTRL, |
66,4,END_SEQ,CC_KEY_DOWN|CC_MOD_SHIFT|CC_MOD_CTRL, |
| 67,4,END_SEQ,CC_K_RIGHT|CC_D_SHIFT|CC_D_CTRL, |
67,4,END_SEQ,CC_KEY_RIGHT|CC_MOD_SHIFT|CC_MOD_CTRL, |
| 68,4,END_SEQ,CC_K_LEFT|CC_D_SHIFT|CC_D_CTRL, |
68,4,END_SEQ,CC_KEY_LEFT|CC_MOD_SHIFT|CC_MOD_CTRL, |
| 70,4,END_SEQ,CC_K_END|CC_D_SHIFT|CC_D_CTRL, |
70,4,END_SEQ,CC_KEY_END|CC_MOD_SHIFT|CC_MOD_CTRL, |
| 72,LAST_KEY,END_SEQ,CC_K_HOME|CC_D_SHIFT|CC_D_CTRL, |
72,LAST_KEY,END_SEQ,CC_KEY_HOME|CC_MOD_SHIFT|CC_MOD_CTRL, |
| 50,230, |
50,230, |
| 48,16, |
48,16, |
| 59,LAST_KEY, |
59,LAST_KEY, |
| 51,6, |
51,6, |
| 126,LAST_KEY,END_SEQ,CC_K_F9|CC_D_ALT, |
126,LAST_KEY,END_SEQ,CC_KEY_F9|CC_MOD_ALT, |
| 52,LAST_KEY, |
52,LAST_KEY, |
| 126,LAST_KEY,END_SEQ,CC_K_F9|CC_D_ALT|CC_D_SHIFT, |
126,LAST_KEY,END_SEQ,CC_KEY_F9|CC_MOD_ALT|CC_MOD_SHIFT, |
| 49,20, |
49,20, |
| 59,14, |
59,14, |
| 51,6, |
51,6, |
| 126,LAST_KEY,END_SEQ,CC_K_F10|CC_D_ALT, |
126,LAST_KEY,END_SEQ,CC_KEY_F10|CC_MOD_ALT, |
| 52,LAST_KEY, |
52,LAST_KEY, |
| 126,LAST_KEY,END_SEQ,CC_K_F10|CC_D_ALT|CC_D_SHIFT, |
126,LAST_KEY,END_SEQ,CC_KEY_F10|CC_MOD_ALT|CC_MOD_SHIFT, |
| 94,LAST_KEY,END_SEQ,CC_K_F10|CC_D_CTRL, |
94,LAST_KEY,END_SEQ,CC_KEY_F10|CC_MOD_CTRL, |
| 51,28, |
51,28, |
| 36,4,END_SEQ,CC_K_F11|CC_D_SHIFT, |
36,4,END_SEQ,CC_KEY_F11|CC_MOD_SHIFT, |
| 59,14, |
59,14, |
| 51,6, |
51,6, |
| 126,LAST_KEY,END_SEQ,CC_K_F11|CC_D_ALT, |
126,LAST_KEY,END_SEQ,CC_KEY_F11|CC_MOD_ALT, |
| 52,LAST_KEY, |
52,LAST_KEY, |
| 126,LAST_KEY,END_SEQ,CC_K_F11|CC_D_ALT|CC_D_SHIFT, |
126,LAST_KEY,END_SEQ,CC_KEY_F11|CC_MOD_ALT|CC_MOD_SHIFT, |
| 64,4,END_SEQ,CC_K_F11|CC_D_CTRL|CC_D_SHIFT, |
64,4,END_SEQ,CC_KEY_F11|CC_MOD_CTRL|CC_MOD_SHIFT, |
| 94,LAST_KEY,END_SEQ,CC_K_F11|CC_D_CTRL, |
94,LAST_KEY,END_SEQ,CC_KEY_F11|CC_MOD_CTRL, |
| 52,28, |
52,28, |
| 36,4,END_SEQ,CC_K_F12|CC_D_SHIFT, |
36,4,END_SEQ,CC_KEY_F12|CC_MOD_SHIFT, |
| 59,14, |
59,14, |
| 51,6, |
51,6, |
| 126,LAST_KEY,END_SEQ,CC_K_F12|CC_D_ALT, |
126,LAST_KEY,END_SEQ,CC_KEY_F12|CC_MOD_ALT, |
| 52,LAST_KEY, |
52,LAST_KEY, |
| 126,LAST_KEY,END_SEQ,CC_K_F12|CC_D_ALT|CC_D_SHIFT, |
126,LAST_KEY,END_SEQ,CC_KEY_F12|CC_MOD_ALT|CC_MOD_SHIFT, |
| 64,4,END_SEQ,CC_K_F12|CC_D_CTRL|CC_D_SHIFT, |
64,4,END_SEQ,CC_KEY_F12|CC_MOD_CTRL|CC_MOD_SHIFT, |
| 94,LAST_KEY,END_SEQ,CC_K_F12|CC_D_CTRL, |
94,LAST_KEY,END_SEQ,CC_KEY_F12|CC_MOD_CTRL, |
| 53,10, |
53,10, |
| 94,4,END_SEQ,CC_K_F3|CC_D_CTRL|CC_D_SHIFT, |
94,4,END_SEQ,CC_KEY_F3|CC_MOD_CTRL|CC_MOD_SHIFT, |
| 126,LAST_KEY,END_SEQ,CC_K_F3|CC_D_SHIFT, |
126,LAST_KEY,END_SEQ,CC_KEY_F3|CC_MOD_SHIFT, |
| 54,10, |
54,10, |
| 94,4,END_SEQ,CC_K_F4|CC_D_CTRL|CC_D_SHIFT, |
94,4,END_SEQ,CC_KEY_F4|CC_MOD_CTRL|CC_MOD_SHIFT, |
| 126,LAST_KEY,END_SEQ,CC_K_F4|CC_D_SHIFT, |
126,LAST_KEY,END_SEQ,CC_KEY_F4|CC_MOD_SHIFT, |
| 56,10, |
56,10, |
| 94,4,END_SEQ,CC_K_F5|CC_D_CTRL|CC_D_SHIFT, |
94,4,END_SEQ,CC_KEY_F5|CC_MOD_CTRL|CC_MOD_SHIFT, |
| 126,LAST_KEY,END_SEQ,CC_K_F5|CC_D_SHIFT, |
126,LAST_KEY,END_SEQ,CC_KEY_F5|CC_MOD_SHIFT, |
| 57,62, |
57,62, |
| 36,4,END_SEQ,CC_K_POPUP|CC_D_SHIFT, |
36,4,END_SEQ,CC_KEY_POPUP|CC_MOD_SHIFT, |
| 59,44, |
59,44, |
| 50,6, |
50,6, |
| 126,LAST_KEY,END_SEQ,CC_K_POPUP|CC_D_SHIFT, |
126,LAST_KEY,END_SEQ,CC_KEY_POPUP|CC_MOD_SHIFT, |
| 51,6, |
51,6, |
| 126,LAST_KEY,END_SEQ,CC_K_POPUP|CC_D_ALT, |
126,LAST_KEY,END_SEQ,CC_KEY_POPUP|CC_MOD_ALT, |
| 52,6, |
52,6, |
| 126,LAST_KEY,END_SEQ,CC_K_POPUP|CC_D_ALT|CC_D_SHIFT, |
126,LAST_KEY,END_SEQ,CC_KEY_POPUP|CC_MOD_ALT|CC_MOD_SHIFT, |
| 53,6, |
53,6, |
| 126,LAST_KEY,END_SEQ,CC_K_POPUP|CC_D_CTRL, |
126,LAST_KEY,END_SEQ,CC_KEY_POPUP|CC_MOD_CTRL, |
| 54,6, |
54,6, |
| 126,LAST_KEY,END_SEQ,CC_K_POPUP|CC_D_CTRL|CC_D_SHIFT, |
126,LAST_KEY,END_SEQ,CC_KEY_POPUP|CC_MOD_CTRL|CC_MOD_SHIFT, |
| 55,6, |
55,6, |
| 126,LAST_KEY,END_SEQ,CC_K_POPUP|CC_D_CTRL|CC_D_ALT, |
126,LAST_KEY,END_SEQ,CC_KEY_POPUP|CC_MOD_CTRL|CC_MOD_ALT, |
| 56,LAST_KEY, |
56,LAST_KEY, |
| 126,LAST_KEY,END_SEQ,CC_K_POPUP|CC_D_CTRL|CC_D_ALT|CC_D_SHIFT, |
126,LAST_KEY,END_SEQ,CC_KEY_POPUP|CC_MOD_CTRL|CC_MOD_ALT| |
| 64,4,END_SEQ,CC_K_POPUP|CC_D_CTRL|CC_D_SHIFT, |
CC_MOD_SHIFT, |
| 94,4,END_SEQ,CC_K_POPUP|CC_D_CTRL, |
64,4,END_SEQ,CC_KEY_POPUP|CC_MOD_CTRL|CC_MOD_SHIFT, |
| 126,LAST_KEY,END_SEQ,CC_K_POPUP, |
94,4,END_SEQ,CC_KEY_POPUP|CC_MOD_CTRL, |
| |
126,LAST_KEY,END_SEQ,CC_KEY_POPUP, |
| 59,LAST_KEY, |
59,LAST_KEY, |
| 50,6, |
50,6, |
| 126,LAST_KEY,END_SEQ,CC_K_INS|CC_D_SHIFT, |
126,LAST_KEY,END_SEQ,CC_KEY_INS|CC_MOD_SHIFT, |
| 51,6, |
51,6, |
| 126,LAST_KEY,END_SEQ,CC_K_INS|CC_D_ALT, |
126,LAST_KEY,END_SEQ,CC_KEY_INS|CC_MOD_ALT, |
| 52,6, |
52,6, |
| 126,LAST_KEY,END_SEQ,CC_K_INS|CC_D_ALT|CC_D_SHIFT, |
126,LAST_KEY,END_SEQ,CC_KEY_INS|CC_MOD_ALT|CC_MOD_SHIFT, |
| 53,6, |
53,6, |
| 126,LAST_KEY,END_SEQ,CC_K_INS|CC_D_CTRL, |
126,LAST_KEY,END_SEQ,CC_KEY_INS|CC_MOD_CTRL, |
| 54,6, |
54,6, |
| 126,LAST_KEY,END_SEQ,CC_K_INS|CC_D_CTRL|CC_D_SHIFT, |
126,LAST_KEY,END_SEQ,CC_KEY_INS|CC_MOD_CTRL|CC_MOD_SHIFT, |
| 55,6, |
55,6, |
| 126,LAST_KEY,END_SEQ,CC_K_INS|CC_D_CTRL|CC_D_ALT, |
126,LAST_KEY,END_SEQ,CC_KEY_INS|CC_MOD_CTRL|CC_MOD_ALT, |
| 56,LAST_KEY, |
56,LAST_KEY, |
| 126,LAST_KEY,END_SEQ,CC_K_INS|CC_D_CTRL|CC_D_ALT|CC_D_SHIFT, |
126,LAST_KEY,END_SEQ,CC_KEY_INS|CC_MOD_CTRL|CC_MOD_ALT|CC_MOD_SHIFT, |
| 51,94, |
51,94, |
| 36,4,END_SEQ,CC_K_DEL|CC_D_SHIFT, |
36,4,END_SEQ,CC_KEY_DEL|CC_MOD_SHIFT, |
| 49,10, |
49,10, |
| 94,4,END_SEQ,CC_K_F7|CC_D_CTRL|CC_D_SHIFT, |
94,4,END_SEQ,CC_KEY_F7|CC_MOD_CTRL|CC_MOD_SHIFT, |
| 126,LAST_KEY,END_SEQ,CC_K_F7|CC_D_SHIFT, |
126,LAST_KEY,END_SEQ,CC_KEY_F7|CC_MOD_SHIFT, |
| 50,10, |
50,10, |
| 94,4,END_SEQ,CC_K_F8|CC_D_CTRL|CC_D_SHIFT, |
94,4,END_SEQ,CC_KEY_F8|CC_MOD_CTRL|CC_MOD_SHIFT, |
| 126,LAST_KEY,END_SEQ,CC_K_F8|CC_D_SHIFT, |
126,LAST_KEY,END_SEQ,CC_KEY_F8|CC_MOD_SHIFT, |
| 51,10, |
51,10, |
| 94,4,END_SEQ,CC_K_F9|CC_D_CTRL|CC_D_SHIFT, |
94,4,END_SEQ,CC_KEY_F9|CC_MOD_CTRL|CC_MOD_SHIFT, |
| 126,LAST_KEY,END_SEQ,CC_K_F9|CC_D_SHIFT, |
126,LAST_KEY,END_SEQ,CC_KEY_F9|CC_MOD_SHIFT, |
| 52,10, |
52,10, |
| 94,4,END_SEQ,CC_K_F10|CC_D_CTRL|CC_D_SHIFT, |
94,4,END_SEQ,CC_KEY_F10|CC_MOD_CTRL|CC_MOD_SHIFT, |
| 126,LAST_KEY,END_SEQ,CC_K_F10|CC_D_SHIFT, |
126,LAST_KEY,END_SEQ,CC_KEY_F10|CC_MOD_SHIFT, |
| 59,44, |
59,44, |
| 50,6, |
50,6, |
| 126,LAST_KEY,END_SEQ,CC_K_DEL|CC_D_SHIFT, |
126,LAST_KEY,END_SEQ,CC_KEY_DEL|CC_MOD_SHIFT, |
| 51,6, |
51,6, |
| 126,LAST_KEY,END_SEQ,CC_K_DEL|CC_D_ALT, |
126,LAST_KEY,END_SEQ,CC_KEY_DEL|CC_MOD_ALT, |
| 52,6, |
52,6, |
| 126,LAST_KEY,END_SEQ,CC_K_DEL|CC_D_ALT|CC_D_SHIFT, |
126,LAST_KEY,END_SEQ,CC_KEY_DEL|CC_MOD_ALT|CC_MOD_SHIFT, |
| 53,6, |
53,6, |
| 126,LAST_KEY,END_SEQ,CC_K_DEL|CC_D_CTRL, |
126,LAST_KEY,END_SEQ,CC_KEY_DEL|CC_MOD_CTRL, |
| 54,6, |
54,6, |
| 126,LAST_KEY,END_SEQ,CC_K_DEL|CC_D_CTRL|CC_D_SHIFT, |
126,LAST_KEY,END_SEQ,CC_KEY_DEL|CC_MOD_CTRL|CC_MOD_SHIFT, |
| 55,6, |
55,6, |
| 126,LAST_KEY,END_SEQ,CC_K_DEL|CC_D_CTRL|CC_D_ALT, |
126,LAST_KEY,END_SEQ,CC_KEY_DEL|CC_MOD_CTRL|CC_MOD_ALT, |
| 56,LAST_KEY, |
56,LAST_KEY, |
| 126,LAST_KEY,END_SEQ,CC_K_DEL|CC_D_CTRL|CC_D_ALT|CC_D_SHIFT, |
126,LAST_KEY,END_SEQ,CC_KEY_DEL|CC_MOD_CTRL|CC_MOD_ALT|CC_MOD_SHIFT, |
| 126,LAST_KEY,END_SEQ,CC_K_DEL, |
126,LAST_KEY,END_SEQ,CC_KEY_DEL, |
| 53,46, |
53,46, |
| 59,LAST_KEY, |
59,LAST_KEY, |
| 50,6, |
50,6, |
| 126,LAST_KEY,END_SEQ,CC_K_PGUP|CC_D_SHIFT, |
126,LAST_KEY,END_SEQ,CC_KEY_PGUP|CC_MOD_SHIFT, |
| 51,6, |
51,6, |
| 126,LAST_KEY,END_SEQ,CC_K_PGUP|CC_D_ALT, |
126,LAST_KEY,END_SEQ,CC_KEY_PGUP|CC_MOD_ALT, |
| 52,6, |
52,6, |
| 126,LAST_KEY,END_SEQ,CC_K_PGUP|CC_D_ALT|CC_D_SHIFT, |
126,LAST_KEY,END_SEQ,CC_KEY_PGUP|CC_MOD_ALT|CC_MOD_SHIFT, |
| 53,6, |
53,6, |
| 126,LAST_KEY,END_SEQ,CC_K_PGUP|CC_D_CTRL, |
126,LAST_KEY,END_SEQ,CC_KEY_PGUP|CC_MOD_CTRL, |
| 54,6, |
54,6, |
| 126,LAST_KEY,END_SEQ,CC_K_PGUP|CC_D_CTRL|CC_D_SHIFT, |
126,LAST_KEY,END_SEQ,CC_KEY_PGUP|CC_MOD_CTRL|CC_MOD_SHIFT, |
| 55,6, |
55,6, |
| 126,LAST_KEY,END_SEQ,CC_K_PGUP|CC_D_CTRL|CC_D_ALT, |
126,LAST_KEY,END_SEQ,CC_KEY_PGUP|CC_MOD_CTRL|CC_MOD_ALT, |
| 56,LAST_KEY, |
56,LAST_KEY, |
| 126,LAST_KEY,END_SEQ,CC_K_PGUP|CC_D_CTRL|CC_D_ALT|CC_D_SHIFT, |
126,LAST_KEY,END_SEQ,CC_KEY_PGUP|CC_MOD_CTRL|CC_MOD_ALT| |
| |
CC_MOD_SHIFT, |
| 54,46, |
54,46, |
| 59,LAST_KEY, |
59,LAST_KEY, |
| 50,6, |
50,6, |
| 126,LAST_KEY,END_SEQ,CC_K_PGDOWN|CC_D_SHIFT, |
126,LAST_KEY,END_SEQ,CC_KEY_PGDOWN|CC_MOD_SHIFT, |
| 51,6, |
51,6, |
| 126,LAST_KEY,END_SEQ,CC_K_PGDOWN|CC_D_ALT, |
126,LAST_KEY,END_SEQ,CC_KEY_PGDOWN|CC_MOD_ALT, |
| 52,6, |
52,6, |
| 126,LAST_KEY,END_SEQ,CC_K_PGDOWN|CC_D_ALT|CC_D_SHIFT, |
126,LAST_KEY,END_SEQ,CC_KEY_PGDOWN|CC_MOD_ALT|CC_MOD_SHIFT, |
| 53,6, |
53,6, |
| 126,LAST_KEY,END_SEQ,CC_K_PGDOWN|CC_D_CTRL, |
126,LAST_KEY,END_SEQ,CC_KEY_PGDOWN|CC_MOD_CTRL, |
| 54,6, |
54,6, |
| 126,LAST_KEY,END_SEQ,CC_K_PGDOWN|CC_D_CTRL|CC_D_SHIFT, |
126,LAST_KEY,END_SEQ,CC_KEY_PGDOWN|CC_MOD_CTRL|CC_MOD_SHIFT, |
| 55,6, |
55,6, |
| 126,LAST_KEY,END_SEQ,CC_K_PGDOWN|CC_D_CTRL|CC_D_ALT, |
126,LAST_KEY,END_SEQ,CC_KEY_PGDOWN|CC_MOD_CTRL|CC_MOD_ALT, |
| 56,LAST_KEY, |
56,LAST_KEY, |
| 126,LAST_KEY,END_SEQ,CC_K_PGDOWN|CC_D_CTRL|CC_D_ALT|CC_D_SHIFT, |
126,LAST_KEY,END_SEQ,CC_KEY_PGDOWN|CC_MOD_CTRL|CC_MOD_ALT| |
| |
CC_MOD_SHIFT, |
| 55,10, |
55,10, |
| 36,4,END_SEQ,CC_K_HOME|CC_D_SHIFT, |
36,4,END_SEQ,CC_KEY_HOME|CC_MOD_SHIFT, |
| 126,LAST_KEY,END_SEQ,CC_K_HOME, |
126,LAST_KEY,END_SEQ,CC_KEY_HOME, |
| 56,10, |
56,10, |
| 36,4,END_SEQ,CC_K_END|CC_D_SHIFT, |
36,4,END_SEQ,CC_KEY_END|CC_MOD_SHIFT, |
| 126,LAST_KEY,END_SEQ,CC_K_END, |
126,LAST_KEY,END_SEQ,CC_KEY_END, |
| 97,4,END_SEQ,CC_K_UP|CC_D_SHIFT, |
97,4,END_SEQ,CC_KEY_UP|CC_MOD_SHIFT, |
| 98,4,END_SEQ,CC_K_DOWN|CC_D_SHIFT, |
98,4,END_SEQ,CC_KEY_DOWN|CC_MOD_SHIFT, |
| 99,4,END_SEQ,CC_K_RIGHT|CC_D_SHIFT, |
99,4,END_SEQ,CC_KEY_RIGHT|CC_MOD_SHIFT, |
| 100,LAST_KEY,END_SEQ,CC_K_LEFT|CC_D_SHIFT |
100,LAST_KEY,END_SEQ,CC_KEY_LEFT|CC_MOD_SHIFT |
| }; |
}; |
| |
|
| void fillback(WIN *win,attr_t ch) |
void _cc_fillback(Cc_Win *win,attr_t ch) |
| { |
{ |
| long i; |
long i; |
| for(i=0;i<win->vx*win->vy;i++)win->windata[i]=ch; |
for(i=0;i<win->vx*win->vy;i++)win->windata[i]=ch; |
| } |
} |
| |
|
| void addsymbol(WIN *win,long x,long y,unsigned char sym) |
void _cc_addsymbol(Cc_Win *win,long x,long y,unsigned char sym) |
| { |
{ |
| if((x>=0)&&(x<win->vx)&&(y>=0)&&(y<win->vy)) |
if((x>=0)&&(x<win->vx)&&(y>=0)&&(y<win->vy)) |
| win->windata[x+y*win->vx]=win->attr+(!uglycharset?A_ALTCHARSET:A_NORMAL)+sym; |
win->windata[x+y*win->vx]= |
| |
win->attr+(!_cc_uglycharset?A_ALTCHARSET:A_NORMAL)+sym; |
| } |
} |
| |
|
| void addchar(WIN *win,long y,long x,unsigned char c) |
void _cc_addchar(Cc_Win *win,long y,long x,unsigned char c) |
| { |
{ |
| if((x>=0)&&(x<win->vx)&&(y>=0)&&(y<win->vy))win->windata[x+y*win->vx]=win->attr+c; |
if((x>=0)&&(x<win->vx)&&(y>=0)&&(y<win->vy)) |
| |
win->windata[x+y*win->vx]=win->attr+c; |
| } |
} |
| |
|
| attr_t minch(WIN *win,long y,long x) |
attr_t _cc_minch(Cc_Win *win,long y,long x) |
| { |
{ |
| if((x>=0)&&(x<win->vx)&&(y>=0)&&(y<win->vy))return win->windata[x+y*win->vx]; |
if((x>=0)&&(x<win->vx)&&(y>=0)&&(y<win->vy))return win->windata[x+y*win->vx]; |
| else return -1; |
else return -1; |
| } |
} |
| |
|
| void maddch(WIN *win,long y,long x,attr_t ch) |
void _cc_maddch(Cc_Win *win,long y,long x,attr_t ch) |
| { |
{ |
| if((x>=0)&&(x<win->vx)&&(y>=0)&&(y<win->vy))win->windata[x+y*win->vx]=ch; |
if((x>=0)&&(x<win->vx)&&(y>=0)&&(y<win->vy))win->windata[x+y*win->vx]=ch; |
| } |
} |
| |
|
| void mhline(WIN *win,long x,long y,long n) |
void _cc_mhline(Cc_Win *win,long x,long y,long n) |
| { |
{ |
| long i; |
long i; |
| for(i=x;i<x+n;i++)addsymbol(win,i,y,mapsymbol[HLINE]); |
for(i=x;i<x+n;i++)_cc_addsymbol(win,i,y,_cc_mapsymbol[HLINE]); |
| } |
} |
| |
|
| void mvline(WIN *win,long x,long y,long n) |
void _cc_mvline(Cc_Win *win,long x,long y,long n) |
| { |
{ |
| long i; |
long i; |
| for(i=y;i<y+n;i++)addsymbol(win,x,i,mapsymbol[VLINE]); |
for(i=y;i<y+n;i++)_cc_addsymbol(win,x,i,_cc_mapsymbol[VLINE]); |
| } |
} |
| |
|
| void mbox(WIN *win,long x,long y,long vx,long vy) |
void _cc_mbox(Cc_Win *win,long x,long y,long vx,long vy) |
| { |
{ |
| long i; |
long i; |
| addsymbol(win,x,y,mapsymbol[LUCORN]); |
_cc_addsymbol(win,x,y,_cc_mapsymbol[LUCORN]); |
| addsymbol(win,x+vx-1,y,mapsymbol[RUCORN]); |
_cc_addsymbol(win,x+vx-1,y,_cc_mapsymbol[RUCORN]); |
| addsymbol(win,x+vx-1,y+vy-1,mapsymbol[RDCORN]); |
_cc_addsymbol(win,x+vx-1,y+vy-1,_cc_mapsymbol[RDCORN]); |
| addsymbol(win,x,y+vy-1,mapsymbol[LDCORN]); |
_cc_addsymbol(win,x,y+vy-1,_cc_mapsymbol[LDCORN]); |
| mhline(win,x+1,y,vx-2); |
_cc_mhline(win,x+1,y,vx-2); |
| mvline(win,x+vx-1,y+1,vy-2); |
_cc_mvline(win,x+vx-1,y+1,vy-2); |
| mhline(win,x+1,y+vy-1,vx-2); |
_cc_mhline(win,x+1,y+vy-1,vx-2); |
| mvline(win,x,y+1,vy-2); |
_cc_mvline(win,x,y+1,vy-2); |
| } |
} |
| |
|
| void mprintwmenu(WIN *win,long y,long x,long cb,long cf,long cfu,attr_t attr,const char *fmt,...) |
void _cc_mprintwmenu(Cc_Win *win,long y,long x,long cb,long cf,long cfu, |
| |
attr_t attr,const char *fmt,...) |
| { |
{ |
| va_list args; |
va_list args; |
| unsigned char *buffer; |
unsigned char *buffer; |
| Line 395 void mprintwmenu(WIN *win,long y,long x, |
|
| Line 401 void mprintwmenu(WIN *win,long y,long x, |
|
| va_end(args); |
va_end(args); |
| long i,p,l=strlen(buffer); |
long i,p,l=strlen(buffer); |
| bool ch=true; |
bool ch=true; |
| windowinitdraw(win,cf,cb,false); |
_cc_windowinitdraw(win,cf,cb,false); |
| win->attr|=attr; |
win->attr|=attr; |
| attr_t oldattr=win->attr; |
attr_t oldattr=win->attr; |
| for(i=0,p=0;p<l;i++,p++) |
for(i=0,p=0;p<l;i++,p++) |
| Line 403 void mprintwmenu(WIN *win,long y,long x, |
|
| Line 409 void mprintwmenu(WIN *win,long y,long x, |
|
| { |
{ |
| ch=false; |
ch=false; |
| i--; |
i--; |
| windowinitdraw(win,cfu,cb,false); |
_cc_windowinitdraw(win,cfu,cb,false); |
| win->attr|=attr; |
win->attr|=attr; |
| win->attr|=A_UNDERLINE; |
win->attr|=A_UNDERLINE; |
| } |
} |
| Line 411 void mprintwmenu(WIN *win,long y,long x, |
|
| Line 417 void mprintwmenu(WIN *win,long y,long x, |
|
| { |
{ |
| if(!ch)ch=true;else |
if(!ch)ch=true;else |
| { |
{ |
| windowinitdraw(win,cf,cb,false); |
_cc_windowinitdraw(win,cf,cb,false); |
| win->attr|=attr; |
win->attr|=attr; |
| win->attr&=~A_UNDERLINE; |
win->attr&=~A_UNDERLINE; |
| } |
} |
| addchar(win,y,x+i,buffer[p]); |
_cc_addchar(win,y,x+i,buffer[p]); |
| } |
} |
| win->attr=oldattr; |
win->attr=oldattr; |
| free(buffer); |
free(buffer); |
| } |
} |
| |
|
| void mprintw(WIN *win,long y,long x,const char *fmt,...) |
void _cc_mprintw(Cc_Win *win,long y,long x,const char *fmt,...) |
| { |
{ |
| va_list args; |
va_list args; |
| unsigned char *buffer; |
unsigned char *buffer; |
| Line 434 void mprintw(WIN *win,long y,long x,cons |
|
| Line 440 void mprintw(WIN *win,long y,long x,cons |
|
| vsnprintf(buffer,size,fmt,args); |
vsnprintf(buffer,size,fmt,args); |
| va_end(args); |
va_end(args); |
| long i,l=strlen(buffer); |
long i,l=strlen(buffer); |
| for(i=0;i<l;i++)addchar(win,y,x+i,buffer[i]); |
for(i=0;i<l;i++)_cc_addchar(win,y,x+i,buffer[i]); |
| free(buffer); |
free(buffer); |
| } |
} |
| |
|
| void windowinitdraw(WIN *win,char cf,char cb,char back) |
void _cc_windowinitdraw(Cc_Win *win,char cf,char cb,char back) |
| { |
{ |
| long attr; |
long attr; |
| short pair=cb&0x7; |
short pair=cb&0x7; |
| Line 449 void windowinitdraw(WIN *win,char cf,cha |
|
| Line 455 void windowinitdraw(WIN *win,char cf,cha |
|
| if((cf&0x8)==0x8)attr=A_BOLD;else attr=A_NORMAL; |
if((cf&0x8)==0x8)attr=A_BOLD;else attr=A_NORMAL; |
| if(back==2)attr|=A_UNDERLINE; |
if(back==2)attr|=A_UNDERLINE; |
| if(back==3)attr|=A_REVERSE; |
if(back==3)attr|=A_REVERSE; |
| if((back==4)&&(!uglycharset))attr|=A_ALTCHARSET+'a'; |
if((back==4)&&(!_cc_uglycharset))attr|=A_ALTCHARSET+'a'; |
| win->attr=COLOR_PAIR(pair)+attr; |
win->attr=COLOR_PAIR(pair)+attr; |
| if(back)fillback(win,COLOR_PAIR(pair)+attr+(!(attr&A_CHARTEXT)?' ':0)); |
if(back)_cc_fillback(win,COLOR_PAIR(pair)+attr+(!(attr&A_CHARTEXT)?' ':0)); |
| } |
} |
| |
|
| void mrefresh(WIN *win) |
void _cc_mrefresh(Cc_Win *win) |
| { |
{ |
| long i,j,c,s,k; |
long i,j,c,s,k; |
| attr_t *data; |
attr_t *data; |
| CMAP *map; |
CMAP *map; |
| if(win!=&mainwin) |
if(win!=&_cc_mainwin) |
| { |
{ |
| long x,y,vx,vy,ox,oy; |
long x,y,vx,vy,ox,oy; |
| bool paint=false,fade=false; |
bool paint=false,fade=false; |
| Line 467 void mrefresh(WIN *win) |
|
| Line 473 void mrefresh(WIN *win) |
|
| if(win->extra->type==TP_FADE)fade=true; |
if(win->extra->type==TP_FADE)fade=true; |
| x=0; |
x=0; |
| y=0; |
y=0; |
| client_to_screen(win,&x,&y); |
cc_client_to_screen(win,&x,&y); |
| vx=win->vx; |
vx=win->vx; |
| vy=win->vy; |
vy=win->vy; |
| if(x<0){vx+=x;ox=-x;x=0;}else ox=0; |
if(x<0){vx+=x;ox=-x;x=0;}else ox=0; |
| if(y<0){vy+=y;oy=-y;y=0;}else oy=0; |
if(y<0){vy+=y;oy=-y;y=0;}else oy=0; |
| if(vx>mainwin.vx-x)vx=mainwin.vx-x; |
if(vx>_cc_mainwin.vx-x)vx=_cc_mainwin.vx-x; |
| if(vy>mainwin.vy-y)vy=mainwin.vy-y; |
if(vy>_cc_mainwin.vy-y)vy=_cc_mainwin.vy-y; |
| for(j=y;j<y+vy;j++) |
for(j=y;j<y+vy;j++) |
| { |
{ |
| s=x+j*mainwin.vx; |
s=x+j*_cc_mainwin.vx; |
| c=s+vx; |
c=s+vx; |
| k=ox+(j-y+oy)*win->vx; |
k=ox+(j-y+oy)*win->vx; |
| for(i=s;i<c;i++,k++) |
for(i=s;i<c;i++,k++) |
| { |
{ |
| if(!fade) |
if(!fade) |
| { |
{ |
| mainwin.windata[i]=win->windata[k]; |
_cc_mainwin.windata[i]=win->windata[k]; |
| cmap[i].win=win; |
_cc_cmap[i].win=win; |
| cmap[i].nochange=false; |
_cc_cmap[i].nochange=false; |
| } |
} |
| if(paint)cmap[i].paint=win; |
if(paint)_cc_cmap[i].paint=win; |
| cmap[i].fade=fade; |
_cc_cmap[i].fade=fade; |
| } |
} |
| } |
} |
| } |
} |
| else |
else |
| { |
{ |
| for(j=0;j<mainwin.vy;j++) |
for(j=0;j<_cc_mainwin.vy;j++) |
| { |
{ |
| map=cmap+j*mainwin.vx; |
map=_cc_cmap+j*_cc_mainwin.vx; |
| for(i=0;i<mainwin.vx;i++)if(!(map++)->nochange)break; |
for(i=0;i<_cc_mainwin.vx;i++)if(!(map++)->nochange)break; |
| if(i<mainwin.vx) |
if(i<_cc_mainwin.vx) |
| { |
{ |
| wredrawln(stdscr,j,1); |
wredrawln(stdscr,j,1); |
| map=cmap+j*mainwin.vx; |
map=_cc_cmap+j*_cc_mainwin.vx; |
| data=mainwin.windata+j*mainwin.vx; |
data=_cc_mainwin.windata+j*_cc_mainwin.vx; |
| for(i=0;i<mainwin.vx;i++) |
for(i=0;i<_cc_mainwin.vx;i++) |
| { |
{ |
| if(!map->nochange) |
if(!map->nochange) |
| { |
{ |
| Line 518 void mrefresh(WIN *win) |
|
| Line 524 void mrefresh(WIN *win) |
|
| } |
} |
| } |
} |
| |
|
| long getcharfrom(long x,long y) |
long _cc_getcharfrom(long x,long y) |
| { |
{ |
| long px,py,ox,oy; |
long px,py,ox,oy; |
| WIN *win; |
Cc_Win *win; |
| WINDOW *window; |
WINDOW *window; |
| win=findwinonlypaint(x,y); |
win=_cc_findwinonlypaint(x,y); |
| if(win==NULL)return -1; |
if(win==NULL)return -1; |
| px=0; |
px=0; |
| py=0; |
py=0; |
| client_to_screen(win,&px,&py); |
cc_client_to_screen(win,&px,&py); |
| if(px<0)ox=px;else ox=0; |
if(px<0)ox=px;else ox=0; |
| if(py<0)oy=py;else oy=0; |
if(py<0)oy=py;else oy=0; |
| px=x; |
px=x; |
| py=y; |
py=y; |
| screen_to_client(win,&px,&py); |
cc_screen_to_client(win,&px,&py); |
| return minch(win,py+oy,px+ox); |
return _cc_minch(win,py+oy,px+ox); |
| } |
} |
| |
|
| void checksymbol(WIN *win,long x,long y) |
void _cc_checksymbol(Cc_Win *win,long x,long y) |
| { |
{ |
| long c; |
long c; |
| char ch,cl,cd,cu,cr; |
char ch,cl,cd,cu,cr; |
| c=getcharfrom(x,y); |
c=_cc_getcharfrom(x,y); |
| if(c==-1)return; |
if(c==-1)return; |
| ch=c&A_CHARTEXT; |
ch=c&A_CHARTEXT; |
| c=c&A_ATTRIBUTES; |
c=c&A_ATTRIBUTES; |
| cl=getcharfrom(x-1,y)&A_CHARTEXT; |
cl=_cc_getcharfrom(x-1,y)&A_CHARTEXT; |
| cr=getcharfrom(x+1,y)&A_CHARTEXT; |
cr=_cc_getcharfrom(x+1,y)&A_CHARTEXT; |
| cu=getcharfrom(x,y-1)&A_CHARTEXT; |
cu=_cc_getcharfrom(x,y-1)&A_CHARTEXT; |
| cd=getcharfrom(x,y+1)&A_CHARTEXT; |
cd=_cc_getcharfrom(x,y+1)&A_CHARTEXT; |
| if((cl==mapsymbol[HLINE])||(cl==mapsymbol[LUCORN])||(cl==mapsymbol[LDCORN])|| |
if((cl==_cc_mapsymbol[HLINE])||(cl==_cc_mapsymbol[LUCORN])|| |
| (cl==mapsymbol[LTEE])||(cl==mapsymbol[UTEE])||(cl==mapsymbol[DTEE])||(cl==mapsymbol[CROSS]))cl=true;else cl=false; |
(cl==_cc_mapsymbol[LDCORN])||(cl==_cc_mapsymbol[LTEE])|| |
| if((cr==mapsymbol[HLINE])||(cr==mapsymbol[RDCORN])||(cr==mapsymbol[RUCORN])|| |
(cl==_cc_mapsymbol[UTEE])||(cl==_cc_mapsymbol[DTEE])|| |
| (cr==mapsymbol[RTEE])||(cr==mapsymbol[UTEE])||(cr==mapsymbol[DTEE])||(cr==mapsymbol[CROSS]))cr=true;else cr=false; |
(cl==_cc_mapsymbol[CROSS]))cl=true;else cl=false; |
| if((cu==mapsymbol[VLINE])||(cu==mapsymbol[RUCORN])||(cu==mapsymbol[LUCORN])|| |
if((cr==_cc_mapsymbol[HLINE])||(cr==_cc_mapsymbol[RDCORN])|| |
| (cu==mapsymbol[UTEE])||(cu==mapsymbol[LTEE])||(cu==mapsymbol[RTEE])||(cu==mapsymbol[CROSS]))cu=true;else cu=false; |
(cr==_cc_mapsymbol[RUCORN])||(cr==_cc_mapsymbol[RTEE])|| |
| if((cd==mapsymbol[VLINE])||(cd==mapsymbol[LDCORN])||(cd==mapsymbol[RDCORN])|| |
(cr==_cc_mapsymbol[UTEE])||(cr==_cc_mapsymbol[DTEE])|| |
| (cd==mapsymbol[DTEE])||(cd==mapsymbol[LTEE])||(cd==mapsymbol[RTEE])||(cd==mapsymbol[CROSS]))cd=true;else cd=false; |
(cr==_cc_mapsymbol[CROSS]))cr=true;else cr=false; |
| if((cl||cr)&&!cu&&!cd)ch=mapsymbol[HLINE]; |
if((cu==_cc_mapsymbol[VLINE])||(cu==_cc_mapsymbol[RUCORN])|| |
| else if((!cl)&&(!cr)&&(cu||cd))ch=mapsymbol[VLINE]; |
(cu==_cc_mapsymbol[LUCORN])||(cu==_cc_mapsymbol[UTEE])|| |
| else if(cl&&cr&&cu&&!cd)ch=mapsymbol[DTEE]; |
(cu==_cc_mapsymbol[LTEE])||(cu==_cc_mapsymbol[RTEE])|| |
| else if(cl&&cr&&!cu&&cd)ch=mapsymbol[UTEE]; |
(cu==_cc_mapsymbol[CROSS]))cu=true;else cu=false; |
| else if(cl&&!cr&&cu&&cd)ch=mapsymbol[RTEE]; |
if((cd==_cc_mapsymbol[VLINE])||(cd==_cc_mapsymbol[LDCORN])|| |
| else if(!cl&&cr&&cu&&cd)ch=mapsymbol[LTEE]; |
(cd==_cc_mapsymbol[RDCORN])||(cd==_cc_mapsymbol[DTEE])|| |
| else if(cl&&!cr&&cu&&!cd)ch=mapsymbol[RDCORN]; |
(cd==_cc_mapsymbol[LTEE])||(cd==_cc_mapsymbol[RTEE])|| |
| else if(!cl&&cr&&cu&&!cd)ch=mapsymbol[LDCORN]; |
(cd==_cc_mapsymbol[CROSS]))cd=true;else cd=false; |
| else if(cl&&!cr&&!cu&&cd)ch=mapsymbol[RUCORN]; |
if((cl||cr)&&!cu&&!cd)ch=_cc_mapsymbol[HLINE]; |
| else if(!cl&&cr&&!cu&&cd)ch=mapsymbol[LUCORN]; |
else if((!cl)&&(!cr)&&(cu||cd))ch=_cc_mapsymbol[VLINE]; |
| else if(cl&&cr&&cu&&cd)ch=mapsymbol[CROSS]; |
else if(cl&&cr&&cu&&!cd)ch=_cc_mapsymbol[DTEE]; |
| screen_to_client(win,&x,&y); |
else if(cl&&cr&&!cu&&cd)ch=_cc_mapsymbol[UTEE]; |
| maddch(win,y,x,c|ch); |
else if(cl&&!cr&&cu&&cd)ch=_cc_mapsymbol[RTEE]; |
| |
else if(!cl&&cr&&cu&&cd)ch=_cc_mapsymbol[LTEE]; |
| |
else if(cl&&!cr&&cu&&!cd)ch=_cc_mapsymbol[RDCORN]; |
| |
else if(!cl&&cr&&cu&&!cd)ch=_cc_mapsymbol[LDCORN]; |
| |
else if(cl&&!cr&&!cu&&cd)ch=_cc_mapsymbol[RUCORN]; |
| |
else if(!cl&&cr&&!cu&&cd)ch=_cc_mapsymbol[LUCORN]; |
| |
else if(cl&&cr&&cu&&cd)ch=_cc_mapsymbol[CROSS]; |
| |
cc_screen_to_client(win,&x,&y); |
| |
_cc_maddch(win,y,x,c|ch); |
| } |
} |
| |
|
| void checkbars(WIN *win,bool dorefresh) |
void _cc_checkbars(Cc_Win *win,bool dorefresh) |
| { |
{ |
| if((win->extra->type==CC_TP_PAINT)&&(win->extra->paint.style==CC_PA_BORDER)&& |
if((win->extra->type==CC_TP_PAINT)&&(win->extra->paint.style==CC_PA_BORDER)&& |
| isvisible(win)) |
_cc_isvisible(win)) |
| { |
{ |
| long i,x,y; |
long i,x,y; |
| x=0; |
x=0; |
| y=0; |
y=0; |
| client_to_screen(win,&x,&y); |
cc_client_to_screen(win,&x,&y); |
| if((win->vx==1)&&(win->vy>1)) |
if((win->vx==1)&&(win->vy>1)) |
| { |
{ |
| for(i=y;i<y+win->vy;i++)checksymbol(win,x,i); |
for(i=y;i<y+win->vy;i++)_cc_checksymbol(win,x,i); |
| } |
} |
| else if((win->vx>1)&&(win->vy==1)) |
else if((win->vx>1)&&(win->vy==1)) |
| { |
{ |
| for(i=x;i<x+win->vx;i++)checksymbol(win,i,y); |
for(i=x;i<x+win->vx;i++)_cc_checksymbol(win,i,y); |
| } |
} |
| else if((win->vx>1)&&(win->vy>1)) |
else if((win->vx>1)&&(win->vy>1)) |
| { |
{ |
| for(i=x;i<x+win->vx-1;i++)checksymbol(win,i,y); |
for(i=x;i<x+win->vx-1;i++)_cc_checksymbol(win,i,y); |
| for(i=y;i<y+win->vy-1;i++)checksymbol(win,x+win->vx-1,i); |
for(i=y;i<y+win->vy-1;i++)_cc_checksymbol(win,x+win->vx-1,i); |
| for(i=x+win->vx-1;i>x;i--)checksymbol(win,i,y+win->vy-1); |
for(i=x+win->vx-1;i>x;i--)_cc_checksymbol(win,i,y+win->vy-1); |
| for(i=y+win->vy-1;i>y;i--)checksymbol(win,x,i); |
for(i=y+win->vy-1;i>y;i--)_cc_checksymbol(win,x,i); |
| } |
} |
| if(dorefresh)mrefresh(win); |
if(dorefresh)_cc_mrefresh(win); |
| } |
} |
| } |
} |
| |
|
| void dokey(short key,unsigned short mod) |
void _cc_dokey(short key,unsigned short mod) |
| { |
{ |
| MEVENT event; |
MEVENT event; |
| if(key==KEY_MOUSE) |
if(key==KEY_MOUSE) |
| { |
{ |
| if((mouseactive==MOUSE_XTERM)&&(getmouse(&event)==OK)) |
if((_cc_mouseactive==MOUSE_XTERM)&&(getmouse(&event)==OK)) |
| { |
{ |
| domouseevent(&event); |
_cc_domouseevent(&event); |
| } |
} |
| } |
} |
| else |
else |
| { |
{ |
| long pos=0; |
long pos=0; |
| short oldkey=key; |
short oldkey=key; |
| while(pos<sizeof(keymap)-1) |
while(pos<sizeof(_cc_keymap)-1) |
| { |
{ |
| if(keymap[pos]!=END_SEQ) |
if(_cc_keymap[pos]!=END_SEQ) |
| { |
{ |
| if(keymap[pos]!=key) |
if(_cc_keymap[pos]!=key) |
| { |
{ |
| if(keymap[pos+1]!=LAST_KEY) |
if(_cc_keymap[pos+1]!=LAST_KEY) |
| pos+=keymap[pos+1]; |
pos+=_cc_keymap[pos+1]; |
| else |
else |
| { |
{ |
| if((oldkey>=32)&&(oldkey<256))sendkeymessage(oldkey|mod); |
if((oldkey>=32)&&(oldkey<256))_cc_sendkeymessage(oldkey|mod); |
| else if(oldkey==0)sendkeymessage(mod|CC_D_CTRL|' '); |
else if(oldkey==0)_cc_sendkeymessage(mod|CC_MOD_CTRL|' '); |
| else if(((oldkey<9)&&(oldkey>0))||((oldkey>9)&&(oldkey<27)))sendkeymessage(mod|CC_D_CTRL|('A'+oldkey-1)); |
else if(((oldkey<9)&&(oldkey>0))||((oldkey>9)&&(oldkey<27))) |
| else if(oldkey>27)sendkeymessage(mod|CC_D_CTRL|('3'+oldkey-27)); |
_cc_sendkeymessage(mod|CC_MOD_CTRL|('A'+oldkey-1)); |
| |
else if(oldkey>27) |
| |
_cc_sendkeymessage(mod|CC_MOD_CTRL|('3'+oldkey-27)); |
| break; |
break; |
| } |
} |
| } |
} |
| Line 639 void dokey(short key,unsigned short mod) |
|
| Line 655 void dokey(short key,unsigned short mod) |
|
| else |
else |
| { |
{ |
| while(getch()!=ERR); |
while(getch()!=ERR); |
| sendkeymessage((unsigned short)keymap[pos+1]|mod); |
_cc_sendkeymessage((unsigned short)_cc_keymap[pos+1]|mod); |
| break; |
break; |
| } |
} |
| } |
} |
Platon Group <platon@platon.org> http://platon.org/
|
|