1 |
/* Tera Term |
2 |
Copyright(C) 1994-1998 T. Teranishi |
3 |
All rights reserved. */ |
4 |
|
5 |
/* Constants and types for Tera Term */ |
6 |
|
7 |
#define IdBreakTimer 1 |
8 |
#define IdDelayTimer 2 |
9 |
#define IdProtoTimer 3 |
10 |
#define IdDblClkTimer 4 |
11 |
#define IdScrollTimer 5 |
12 |
#define IdComEndTimer 6 |
13 |
#define IdCaretTimer 7 |
14 |
#define IdPrnStartTimer 8 |
15 |
#define IdPrnProcTimer 9 |
16 |
#define IdCancelConnectTimer 10 // add (2007.1.10 yutaka) |
17 |
#define IdPasteDelayTimer 11 |
18 |
|
19 |
/* Window Id */ |
20 |
#define IdVT 1 |
21 |
#define IdTEK 2 |
22 |
|
23 |
/* Talker mode */ |
24 |
#define IdTalkKeyb 0 |
25 |
#define IdTalkCB 1 |
26 |
#define IdTalkFile 2 |
27 |
#define IdTalkQuiet 3 |
28 |
|
29 |
/* Character sets */ |
30 |
#define IdASCII 0 |
31 |
#define IdKatakana 1 |
32 |
#define IdKanji 2 |
33 |
#define IdSpecial 3 |
34 |
|
35 |
/* Character attribute bit masks */ |
36 |
#define AttrDefault 0x00 |
37 |
#define AttrDefaultFG 0x00 |
38 |
#define AttrDefaultBG 0x00 |
39 |
#define AttrBold 0x01 |
40 |
#define AttrUnder 0x02 |
41 |
#define AttrSpecial 0x04 |
42 |
#define AttrFontMask 0x07 |
43 |
#define AttrBlink 0x08 |
44 |
#define AttrReverse 0x10 |
45 |
#ifndef NO_COPYLINE_FIX |
46 |
#define AttrLineContinued 0x20 /* valid only at the beggining or end of a line */ |
47 |
#endif /* NO_COPYLINE_FIX */ |
48 |
/* begin - ishizaki */ |
49 |
#define AttrURL 0x40 |
50 |
/* end - ishizaki */ |
51 |
#define AttrKanji 0x80 |
52 |
/* Color attribute bit masks */ |
53 |
#define Attr2Fore 0x01 |
54 |
#define Attr2Back 0x02 |
55 |
#define AttrColorMask (AttrBold | AttrBlink | AttrReverse) |
56 |
#define Attr2ColorMask (Attr2Fore | Attr2Back) |
57 |
|
58 |
typedef struct { |
59 |
BYTE Attr; |
60 |
BYTE Attr2; |
61 |
BYTE Fore; |
62 |
BYTE Back; |
63 |
} TCharAttr; |
64 |
|
65 |
typedef TCharAttr *PCharAttr; |
66 |
|
67 |
/* Color codes */ |
68 |
#define IdBack 0 |
69 |
#define IdRed 1 |
70 |
#define IdGreen 2 |
71 |
#define IdYellow 3 |
72 |
#define IdBlue 4 |
73 |
#define IdMagenta 5 |
74 |
#define IdCyan 6 |
75 |
#define IdFore 7 |
76 |
|
77 |
/* Kermit function id */ |
78 |
#define IdKmtReceive 1 |
79 |
#define IdKmtGet 2 |
80 |
#define IdKmtSend 3 |
81 |
#define IdKmtFinish 4 |
82 |
|
83 |
/* XMODEM function id */ |
84 |
#define IdXReceive 1 |
85 |
#define IdXSend 2 |
86 |
|
87 |
/* YMODEM function id */ |
88 |
#define IdYReceive 1 |
89 |
#define IdYSend 2 |
90 |
|
91 |
/* ZMODEM function id */ |
92 |
#define IdZReceive 1 |
93 |
#define IdZSend 2 |
94 |
#define IdZAuto 3 |
95 |
|
96 |
/* B-Plus function id */ |
97 |
#define IdBPReceive 1 |
98 |
#define IdBPSend 2 |
99 |
#define IdBPAuto 3 |
100 |
|
101 |
/* Quick-VAN function id */ |
102 |
#define IdQVReceive 1 |
103 |
#define IdQVSend 2 |
104 |
|
105 |
#define HostNameMaxLength 1024 |
106 |
//#define HostNameMaxLength 80 |
107 |
#ifndef NO_INET6 |
108 |
#define ProtocolFamilyMaxLength 80 |
109 |
#endif /* NO_INET6 */ |
110 |
|
111 |
/* internal WM_USER messages */ |
112 |
#define WM_USER_ACCELCOMMAND WM_USER+1 |
113 |
#define WM_USER_CHANGEMENU WM_USER+2 |
114 |
#define WM_USER_CLOSEIME WM_USER+3 |
115 |
#define WM_USER_COMMNOTIFY WM_USER+4 |
116 |
#define WM_USER_COMMOPEN WM_USER+5 |
117 |
#define WM_USER_COMMSTART WM_USER+6 |
118 |
#define WM_USER_DLGHELP2 WM_USER+7 |
119 |
#define WM_USER_GETHOST WM_USER+8 |
120 |
#define WM_USER_FTCANCEL WM_USER+9 |
121 |
#define WM_USER_PROTOCANCEL WM_USER+10 |
122 |
#define WM_USER_CHANGETBAR WM_USER+11 |
123 |
#define WM_USER_KEYCODE WM_USER+12 |
124 |
#define WM_USER_GETSERIALNO WM_USER+13 |
125 |
#define WM_USER_CHANGETITLE WM_USER+14 |
126 |
|
127 |
#define WM_USER_DDEREADY WM_USER+21 |
128 |
#define WM_USER_DDECMNDEND WM_USER+22 |
129 |
#define WM_USER_DDECOMREADY WM_USER+23 |
130 |
#define WM_USER_DDEEND WM_USER+24 |
131 |
|
132 |
#define MY_FORCE_FOREGROUND_MESSAGE WM_USER+31 |
133 |
|
134 |
/* port type ID */ |
135 |
#define IdTCPIP 1 |
136 |
#define IdSerial 2 |
137 |
#define IdFile 3 |
138 |
|
139 |
/* XMODEM option */ |
140 |
#define XoptCheck 1 |
141 |
#define XoptCRC 2 |
142 |
#define Xopt1K 3 |
143 |
|
144 |
/* YMODEM option */ |
145 |
#define Yopt1K 1 |
146 |
#define YoptG 2 |
147 |
#define YoptSingle 3 |
148 |
|
149 |
/* Language */ |
150 |
#define IdEnglish 1 |
151 |
#define IdJapanese 2 |
152 |
#define IdRussian 3 |
153 |
#define IdKorean 4 //HKS |
154 |
#define IdUtf8 5 |
155 |
|
156 |
// log flags (used in ts.LogFlag) |
157 |
#define LOG_TEL 1 |
158 |
#define LOG_KMT 2 |
159 |
#define LOG_X 4 |
160 |
#define LOG_Z 8 |
161 |
#define LOG_BP 16 |
162 |
#define LOG_QV 32 |
163 |
#define LOG_Y 64 |
164 |
|
165 |
// file transfer flags (used in ts.FTFlag) |
166 |
#define FT_ZESCCTL 1 |
167 |
#define FT_ZAUTO 2 |
168 |
#define FT_BPESCCTL 4 |
169 |
#define FT_BPAUTO 8 |
170 |
#define FT_RENAME 16 |
171 |
|
172 |
// menu flags (used in ts.MenuFlag) |
173 |
#define MF_NOSHOWMENU 1 |
174 |
#define MF_NOPOPUP 2 |
175 |
#define MF_NOLANGUAGE 4 |
176 |
#define MF_SHOWWINMENU 8 |
177 |
|
178 |
// Terminal flags (used in ts.TermFlag) |
179 |
#define TF_FIXEDJIS 1 |
180 |
#define TF_AUTOINVOKE 2 |
181 |
#define TF_CTRLINKANJI 8 |
182 |
#define TF_ALLOWWRONGSEQUENCE 16 |
183 |
#define TF_ACCEPT8BITCTRL 32 |
184 |
#define TF_ENABLESLINE 64 |
185 |
#define TF_BACKWRAP 128 |
186 |
#define TF_CLEARONRESIZE 256 |
187 |
#define TF_ALTSCR 512 |
188 |
|
189 |
// ANSI/Attribute color flags (used in ts.ColorFlag) |
190 |
#define CF_PCBOLD16 1 |
191 |
#define CF_AIXTERM16 2 |
192 |
#define CF_XTERM256 4 |
193 |
#define CF_FULLCOLOR (CF_PCBOLD16 | CF_AIXTERM16 | CF_XTERM256) |
194 |
|
195 |
#define CF_ANSICOLOR 8 |
196 |
|
197 |
#define CF_BOLDCOLOR 16 |
198 |
#define CF_BLINKCOLOR 32 |
199 |
#define CF_REVERSECOLOR 64 |
200 |
#define CF_URLCOLOR 128 |
201 |
|
202 |
#define CF_USETEXTCOLOR 256 |
203 |
#define CF_REVERSEVIDEO 512 |
204 |
|
205 |
// Font flags (used in ts.FontFlag) |
206 |
#define FF_BOLD 1 |
207 |
#define FF_FAINT 2 // Not used |
208 |
#define FF_ITALIC 4 // Not used |
209 |
#define FF_UNDERLINE 8 // Not used |
210 |
#define FF_BLINK 16 // Not used |
211 |
#define FF_RAPIDBLINK 32 // Not used |
212 |
#define FF_REVERSE 64 // Not used |
213 |
#define FF_INVISIBLE 128 // Not used |
214 |
#define FF_STRIKEOUT 256 // Not used |
215 |
#define FF_URLUNDERLINE 512 |
216 |
|
217 |
// port flags (used in ts.PortFlag) |
218 |
#define PF_CONFIRMDISCONN 1 |
219 |
#define PF_BEEPONCONNECT 2 |
220 |
|
221 |
// Window flags (used in ts.WindowFlag) |
222 |
#define WF_CURSORCHANGE 1 |
223 |
#define WF_WINDOWCHANGE 2 |
224 |
#define WF_WINDOWREPORT 4 |
225 |
#define WF_TITLEREPORT 24 // (8 | 16) |
226 |
|
227 |
// Title Reporting Type |
228 |
#define IdTitleReportIgnore 0 |
229 |
#define IdTitleReportAccept 8 |
230 |
#define IdTitleReportEmpty 24 |
231 |
|
232 |
// iconf flags (used in ts.VTIcon and ts.TEKIcon) |
233 |
#define IdIconDefault 0 |
234 |
|
235 |
// Beep type |
236 |
#define IdBeepOff 0 |
237 |
#define IdBeepOn 1 |
238 |
#define IdBeepVisual 2 |
239 |
|
240 |
// TitleChangeRequest types |
241 |
#define IdTitleChangeRequestOff 0 |
242 |
#define IdTitleChangeRequestOverwrite 1 |
243 |
#define IdTitleChangeRequestAhead 2 |
244 |
#define IdTitleChangeRequestLast 3 |
245 |
|
246 |
// Meta8Bit mode |
247 |
#define IdMeta8BitOff 0 |
248 |
#define IdMeta8BitRaw 1 |
249 |
#define IdMeta8BitText 2 |
250 |
|
251 |
#define TitleBuffSize 50 |
252 |
|
253 |
// Eterm lookfeel alphablend structure |
254 |
typedef struct { |
255 |
int BGEnable; |
256 |
int BGUseAlphaBlendAPI; |
257 |
char BGSPIPath[MAX_PATH]; |
258 |
int BGFastSizeMove; |
259 |
int BGNoCopyBits; |
260 |
int BGNoFrame; |
261 |
char BGThemeFile[MAX_PATH]; |
262 |
} eterm_lookfeel_t; |
263 |
|
264 |
/* TTTSet */ |
265 |
// |
266 |
// NOTE: ���L���G���[���������������� |
267 |
// fatal error C1001: INTERNAL COMPILER ERROR (compiler file 'msc1.cpp', line 2701) |
268 |
// |
269 |
struct tttset { |
270 |
/*------ VTSet --------*/ |
271 |
/* Tera Term home directory */ |
272 |
char HomeDir[MAXPATHLEN]; |
273 |
|
274 |
/* Setup file name */ |
275 |
char SetupFName[MAXPATHLEN]; |
276 |
char KeyCnfFN[MAXPATHLEN]; |
277 |
char LogFN[MAXPATHLEN]; |
278 |
char MacroFN[MAXPATHLEN]; |
279 |
char HostName[1024]; |
280 |
|
281 |
POINT VTPos; |
282 |
char VTFont[LF_FACESIZE]; |
283 |
POINT VTFontSize; |
284 |
int VTFontCharSet; |
285 |
int FontDW, FontDH, FontDX, FontDY; |
286 |
char PrnFont[LF_FACESIZE]; |
287 |
POINT PrnFontSize; |
288 |
int PrnFontCharSet; |
289 |
POINT VTPPI, TEKPPI; |
290 |
int PrnMargin[4]; |
291 |
char PrnDev[80]; |
292 |
WORD PassThruDelay; |
293 |
WORD PrnConvFF; |
294 |
WORD FontFlag; |
295 |
WORD RussFont; |
296 |
int ScrollThreshold; |
297 |
WORD Debug; |
298 |
WORD LogFlag; |
299 |
WORD FTFlag; |
300 |
WORD TransBin, Append; |
301 |
WORD XmodemOpt, XmodemBin; |
302 |
int ZmodemDataLen, ZmodemWinSize; |
303 |
int QVWinSize; |
304 |
char FileDir[MAXPATHLEN]; |
305 |
char FileSendFilter[128]; |
306 |
WORD Language; |
307 |
char DelimList[52]; |
308 |
WORD DelimDBCS; |
309 |
WORD Minimize; |
310 |
WORD HideWindow; |
311 |
WORD MenuFlag; |
312 |
WORD SelOnActive; |
313 |
WORD AutoTextCopy; |
314 |
/*------ TEKSet --------*/ |
315 |
POINT TEKPos; |
316 |
char TEKFont[LF_FACESIZE]; |
317 |
POINT TEKFontSize; |
318 |
int TEKFontCharSet; |
319 |
int GINMouseCode; |
320 |
/*------ TermSet --------*/ |
321 |
int TerminalWidth; |
322 |
int TerminalHeight; |
323 |
WORD TermIsWin; |
324 |
WORD AutoWinResize; |
325 |
WORD CRSend; |
326 |
WORD CRReceive; |
327 |
WORD LocalEcho; |
328 |
char Answerback[32]; |
329 |
int AnswerbackLen; |
330 |
WORD KanjiCode; |
331 |
WORD KanjiCodeSend; |
332 |
WORD JIS7Katakana; |
333 |
WORD JIS7KatakanaSend; |
334 |
WORD KanjiIn; |
335 |
WORD KanjiOut; |
336 |
WORD RussHost; |
337 |
WORD RussClient; |
338 |
WORD RussPrint; |
339 |
WORD AutoWinSwitch; |
340 |
WORD TerminalID; |
341 |
WORD TermFlag; |
342 |
/*------ WinSet --------*/ |
343 |
WORD VTFlag; |
344 |
HFONT SampleFont; |
345 |
/* begin - ishizaki */ |
346 |
/* WORD TmpColor[3][6]; */ |
347 |
WORD TmpColor[12][6]; |
348 |
/* end - ishizaki */ |
349 |
/* Tera Term window setup variables */ |
350 |
char Title[TitleBuffSize]; |
351 |
WORD TitleFormat; |
352 |
WORD CursorShape; |
353 |
WORD NonblinkingCursor; |
354 |
WORD EnableScrollBuff; |
355 |
LONG ScrollBuffSize; |
356 |
LONG ScrollBuffMax; |
357 |
WORD HideTitle; |
358 |
WORD PopupMenu; |
359 |
int ColorFlag; |
360 |
WORD TEKColorEmu; |
361 |
COLORREF VTColor[2]; |
362 |
COLORREF TEKColor[2]; |
363 |
/* begin - ishizaki */ |
364 |
COLORREF URLColor[2]; |
365 |
/* end - ishizaki */ |
366 |
COLORREF VTBoldColor[2]; // SGR 1 |
367 |
COLORREF VTFaintColor[2]; // SGR 2 |
368 |
COLORREF VTItalicColor[2]; // SGR 3 |
369 |
COLORREF VTUnderlineColor[2]; // SGR 4 |
370 |
COLORREF VTBlinkColor[2]; // SGR 5 |
371 |
COLORREF VTRapidBlinkColor[2]; // SGR 6 |
372 |
COLORREF VTReverseColor[2]; // SGR 7 |
373 |
COLORREF VTInvisibleColor[2]; // SGR 8 |
374 |
COLORREF VTStrikeoutColor[2]; // SGR 9 |
375 |
COLORREF DummyColor[2]; |
376 |
WORD Beep; |
377 |
/*------ KeybSet --------*/ |
378 |
WORD BSKey; |
379 |
WORD DelKey; |
380 |
WORD UseIME; |
381 |
WORD IMEInline; |
382 |
WORD MetaKey; |
383 |
WORD RussKeyb; |
384 |
/*------ PortSet --------*/ |
385 |
WORD PortType; |
386 |
/* TCP/IP */ |
387 |
WORD TCPPort; |
388 |
WORD Telnet; |
389 |
WORD TelPort; |
390 |
WORD TelBin; |
391 |
WORD TelEcho; |
392 |
char TermType[40]; |
393 |
WORD AutoWinClose; |
394 |
WORD PortFlag; |
395 |
WORD TCPCRSend; |
396 |
WORD TCPLocalEcho; |
397 |
WORD HistoryList; |
398 |
/* Serial */ |
399 |
WORD ComPort; |
400 |
WORD Baud_; /* not in use */ |
401 |
WORD Parity; |
402 |
WORD DataBit; |
403 |
WORD StopBit; |
404 |
WORD Flow; |
405 |
WORD DelayPerChar; |
406 |
WORD DelayPerLine; |
407 |
WORD MaxComPort; |
408 |
WORD ComAutoConnect; |
409 |
#ifndef NO_COPYLINE_FIX |
410 |
WORD EnableContinuedLineCopy; |
411 |
#endif /* NO_COPYLINE_FIX */ |
412 |
#ifndef NO_ANSI_COLOR_EXTENSION |
413 |
COLORREF ANSIColor[16]; |
414 |
#endif /* NO_ANSI_COLOR_EXTENSION */ |
415 |
#ifndef NO_INET6 |
416 |
/* protocol used in connect() */ |
417 |
int ProtocolFamily; |
418 |
#endif /* NO_INET6 */ |
419 |
char MouseCursorName[16]; |
420 |
int AlphaBlend; |
421 |
char CygwinDirectory[MAX_PATH]; |
422 |
#define DEFAULT_LOCALE "japanese" |
423 |
char Locale[80]; |
424 |
#define DEFAULT_CODEPAGE 932 |
425 |
int CodePage; |
426 |
int DuplicateSession; |
427 |
char ViewlogEditor[MAX_PATH]; |
428 |
WORD LogTypePlainText; |
429 |
WORD LogTimestamp; |
430 |
char LogDefaultName[80]; |
431 |
char LogDefaultPath[MAX_PATH]; |
432 |
WORD LogAutoStart; |
433 |
int DisablePasteMouseRButton; |
434 |
WORD ConfirmPasteMouseRButton; |
435 |
WORD DisableAcceleratorSendBreak; |
436 |
int EnableClickableUrl; |
437 |
eterm_lookfeel_t EtermLookfeel; |
438 |
#ifdef USE_NORMAL_BGCOLOR |
439 |
WORD UseNormalBGColor; |
440 |
#endif |
441 |
char UILanguageFile[MAX_PATH]; |
442 |
char UIMsg[MAX_UIMSG]; |
443 |
WORD BroadcastCommandHistory; |
444 |
WORD AcceptBroadcast; // 337: 2007/03/20 |
445 |
WORD DisableTCPEchoCR; // TCPLocalEcho/TCPCRSend ������������ (maya 2007.4.25) |
446 |
int ConnectingTimeout; |
447 |
WORD VTCompatTab; |
448 |
WORD TelKeepAliveInterval; |
449 |
WORD MaxBroadcatHistory; |
450 |
WORD DisableAppKeypad; |
451 |
WORD DisableAppCursor; |
452 |
WORD ClearComBuffOnOpen; |
453 |
WORD Send8BitCtrl; |
454 |
char UILanguageFile_ini[MAX_PATH]; |
455 |
WORD SelectOnlyByLButton; |
456 |
WORD TelAutoDetect; |
457 |
char XModemRcvCommand[MAX_PATH]; |
458 |
char ZModemRcvCommand[MAX_PATH]; |
459 |
WORD ConfirmFileDragAndDrop; |
460 |
WORD TranslateWheelToCursor; |
461 |
WORD HostDialogOnStartup; |
462 |
WORD MouseEventTracking; |
463 |
WORD KillFocusCursor; |
464 |
WORD LogHideDialog; |
465 |
int TerminalOldWidth; |
466 |
int TerminalOldHeight; |
467 |
WORD MaximizedBugTweak; |
468 |
WORD ConfirmChangePaste; |
469 |
WORD SaveVTWinPos; |
470 |
WORD DisablePasteMouseMButton; |
471 |
int MouseWheelScrollLine; |
472 |
WORD CRSend_ini; |
473 |
WORD LocalEcho_ini; |
474 |
WORD UnicodeDecSpMapping; |
475 |
WORD VTIcon; |
476 |
WORD TEKIcon; |
477 |
WORD ScrollWindowClearScreen; |
478 |
WORD AutoScrollOnlyInBottomLine; |
479 |
WORD UnknownUnicodeCharaAsWide; |
480 |
char YModemRcvCommand[MAX_PATH]; |
481 |
WORD AcceptTitleChangeRequest; |
482 |
SIZE PasteDialogSize; |
483 |
WORD DisableMouseTrackingByCtrl; |
484 |
WORD DisableWheelToCursorByCtrl; |
485 |
WORD StrictKeyMapping; |
486 |
WORD Wait4allMacroCommand; |
487 |
WORD DisableMenuSendBreak; |
488 |
WORD ClearScreenOnCloseConnection; |
489 |
WORD DisableAcceleratorDuplicateSession; |
490 |
int PasteDelayPerLine; |
491 |
WORD FontScaling; |
492 |
WORD Meta8Bit; |
493 |
WORD WindowFlag; |
494 |
WORD EnableLineMode; |
495 |
char ConfirmChangePasteStringFile[MAX_PATH]; |
496 |
DWORD Baud; |
497 |
}; |
498 |
|
499 |
typedef struct tttset TTTSet, *PTTSet; |
500 |
//typedef TTTSet far *PTTSet; |
501 |
|
502 |
/* New Line modes */ |
503 |
#define IdCR 1 |
504 |
#define IdCRLF 2 |
505 |
#define IdLF 3 |
506 |
|
507 |
/* Terminal ID */ |
508 |
#define IdVT100 1 |
509 |
#define IdVT100J 2 |
510 |
#define IdVT101 3 |
511 |
#define IdVT102 4 |
512 |
#define IdVT102J 5 |
513 |
#define IdVT220J 6 |
514 |
#define IdVT282 7 |
515 |
#define IdVT320 8 |
516 |
#define IdVT382 9 |
517 |
|
518 |
/* Kanji Code ID */ |
519 |
#define IdSJIS 1 |
520 |
#define IdEUC 2 |
521 |
#define IdJIS 3 |
522 |
#define IdUTF8 4 |
523 |
#define IdUTF8m 5 |
524 |
|
525 |
// Russian code sets |
526 |
#define IdWindows 1 |
527 |
#define IdKOI8 2 |
528 |
#define Id866 3 |
529 |
#define IdISO 4 |
530 |
|
531 |
/* KanjiIn modes */ |
532 |
#define IdKanjiInA 1 |
533 |
#define IdKanjiInB 2 |
534 |
/* KanjiOut modes */ |
535 |
#define IdKanjiOutB 1 |
536 |
#define IdKanjiOutJ 2 |
537 |
#define IdKanjiOutH 3 |
538 |
|
539 |
// �����������l��300����500�����X (2008.2.15 maya) |
540 |
#define TermWidthMax 500 |
541 |
#define TermHeightMax 200 |
542 |
|
543 |
/* Cursor shapes */ |
544 |
#define IdBlkCur 1 |
545 |
#define IdVCur 2 |
546 |
#define IdHCur 3 |
547 |
|
548 |
#define IdBS 1 |
549 |
#define IdDEL 2 |
550 |
|
551 |
/* Mouse tracking mode */ |
552 |
#define IdMouseTrackNone 0 |
553 |
#define IdMouseTrackDECELR 1 // not supported |
554 |
#define IdMouseTrackX10 2 |
555 |
#define IdMouseTrackVT200 3 |
556 |
#define IdMouseTrackVT200Hl 4 // not supported |
557 |
#define IdMouseTrackBtnEvent 5 // limited support -- same as VT200 mode |
558 |
#define IdMouseTrackAllEvent 6 // limited support -- same as VT200 mode |
559 |
|
560 |
/* Mouse event */ |
561 |
#define IdMouseEventBtnDown 1 |
562 |
#define IdMouseEventBtnUp 2 |
563 |
#define IdMouseEventMove 3 // not supported yet |
564 |
#define IdMouseEventWheel 4 |
565 |
|
566 |
/* Serial port ID */ |
567 |
#define IdCOM1 1 |
568 |
#define IdCOM2 2 |
569 |
#define IdCOM3 3 |
570 |
#define IdCOM4 4 |
571 |
/* Baud rate ID */ |
572 |
#define BaudNone 0 |
573 |
|
574 |
static PCHAR far BaudList[] = |
575 |
{"110","300","600","1200","2400","4800","9600", |
576 |
"14400","19200","38400","57600","115200", |
577 |
"230400", "460800", "921600", NULL}; |
578 |
|
579 |
/* Parity ID */ |
580 |
#define IdParityEven 1 |
581 |
#define IdParityOdd 2 |
582 |
#define IdParityNone 3 |
583 |
/* Data bit ID */ |
584 |
#define IdDataBit7 1 |
585 |
#define IdDataBit8 2 |
586 |
/* Stop bit ID */ |
587 |
#define IdStopBit1 1 |
588 |
#define IdStopBit2 2 |
589 |
/* Flow control ID */ |
590 |
#define IdFlowX 1 |
591 |
#define IdFlowHard 2 |
592 |
#define IdFlowNone 3 |
593 |
|
594 |
/* GetHostName dialog record */ |
595 |
typedef struct { |
596 |
PCHAR SetupFN; // setup file name |
597 |
WORD PortType; // TCPIP/Serial |
598 |
PCHAR HostName; // host name |
599 |
WORD Telnet; // non-zero: enable telnet |
600 |
WORD TelPort; // default TCP port# for telnet |
601 |
WORD TCPPort; // TCP port # |
602 |
#ifndef NO_INET6 |
603 |
WORD ProtocolFamily; // Protocol Family (AF_INET/AF_INET6/AF_UNSPEC) |
604 |
#endif /* NO_INET6 */ |
605 |
WORD ComPort; // serial port # |
606 |
WORD MaxComPort; // max serial port # |
607 |
} TGetHNRec; |
608 |
typedef TGetHNRec far *PGetHNRec; |
609 |
|
610 |
/* Tera Term internal key codes */ |
611 |
#define IdUp 1 |
612 |
#define IdDown 2 |
613 |
#define IdRight 3 |
614 |
#define IdLeft 4 |
615 |
#define Id0 5 |
616 |
#define Id1 6 |
617 |
#define Id2 7 |
618 |
#define Id3 8 |
619 |
#define Id4 9 |
620 |
#define Id5 10 |
621 |
#define Id6 11 |
622 |
#define Id7 12 |
623 |
#define Id8 13 |
624 |
#define Id9 14 |
625 |
#define IdMinus 15 |
626 |
#define IdComma 16 |
627 |
#define IdPeriod 17 |
628 |
#define IdSlash 18 |
629 |
#define IdAsterisk 19 |
630 |
#define IdPlus 20 |
631 |
#define IdEnter 21 |
632 |
#define IdPF1 22 |
633 |
#define IdPF2 23 |
634 |
#define IdPF3 24 |
635 |
#define IdPF4 25 |
636 |
#define IdFind 26 |
637 |
#define IdInsert 27 |
638 |
#define IdRemove 28 |
639 |
#define IdSelect 29 |
640 |
#define IdPrev 30 |
641 |
#define IdNext 31 |
642 |
#define IdF6 32 |
643 |
#define IdF7 33 |
644 |
#define IdF8 34 |
645 |
#define IdF9 35 |
646 |
#define IdF10 36 |
647 |
#define IdF11 37 |
648 |
#define IdF12 38 |
649 |
#define IdF13 39 |
650 |
#define IdF14 40 |
651 |
#define IdHelp 41 |
652 |
#define IdDo 42 |
653 |
#define IdF17 43 |
654 |
#define IdF18 44 |
655 |
#define IdF19 45 |
656 |
#define IdF20 46 |
657 |
#define IdXF1 47 |
658 |
#define IdXF2 48 |
659 |
#define IdXF3 49 |
660 |
#define IdXF4 50 |
661 |
#define IdXF5 51 |
662 |
#define IdUDK6 52 |
663 |
#define IdUDK7 53 |
664 |
#define IdUDK8 54 |
665 |
#define IdUDK9 55 |
666 |
#define IdUDK10 56 |
667 |
#define IdUDK11 57 |
668 |
#define IdUDK12 58 |
669 |
#define IdUDK13 59 |
670 |
#define IdUDK14 60 |
671 |
#define IdUDK15 61 |
672 |
#define IdUDK16 62 |
673 |
#define IdUDK17 63 |
674 |
#define IdUDK18 64 |
675 |
#define IdUDK19 65 |
676 |
#define IdUDK20 66 |
677 |
#define IdHold 67 |
678 |
#define IdPrint 68 |
679 |
#define IdBreak 69 |
680 |
#define IdCmdEditCopy 70 |
681 |
#define IdCmdEditPaste 71 |
682 |
#define IdCmdEditPasteCR 72 |
683 |
#define IdCmdEditCLS 73 |
684 |
#define IdCmdEditCLB 74 |
685 |
#define IdCmdCtrlOpenTEK 75 |
686 |
#define IdCmdCtrlCloseTEK 76 |
687 |
#define IdCmdLineUp 77 |
688 |
#define IdCmdLineDown 78 |
689 |
#define IdCmdPageUp 79 |
690 |
#define IdCmdPageDown 80 |
691 |
#define IdCmdBuffTop 81 |
692 |
#define IdCmdBuffBottom 82 |
693 |
#define IdCmdNextWin 83 |
694 |
#define IdCmdPrevWin 84 |
695 |
#define IdCmdLocalEcho 85 |
696 |
#define IdScrollLock 86 |
697 |
#define IdUser1 87 |
698 |
#define NumOfUDK IdUDK20-IdUDK6+1 |
699 |
#define NumOfUserKey 99 |
700 |
#define IdKeyMax IdUser1+NumOfUserKey-1 |
701 |
|
702 |
// key code for macro commands |
703 |
#define IdCmdDisconnect 1000 |
704 |
#define IdCmdLoadKeyMap 1001 |
705 |
#define IdCmdRestoreSetup 1002 |
706 |
|
707 |
#define KeyStrMax 1023 |
708 |
|
709 |
// (user) key type IDs |
710 |
#define IdBinary 0 // transmit text without any modification |
711 |
#define IdText 1 // transmit text with new-line & DBCS conversions |
712 |
#define IdMacro 2 // activate macro |
713 |
#define IdCommand 3 // post a WM_COMMAND message |
714 |
|
715 |
typedef struct { |
716 |
WORD Map[IdKeyMax]; |
717 |
/* user key str position/length in buffer */ |
718 |
int UserKeyPtr[NumOfUserKey], UserKeyLen[NumOfUserKey]; |
719 |
BYTE UserKeyStr[KeyStrMax+1]; |
720 |
/* user key type */ |
721 |
BYTE UserKeyType[NumOfUserKey]; |
722 |
} TKeyMap; |
723 |
typedef TKeyMap far *PKeyMap; |
724 |
|
725 |
/* Control Characters */ |
726 |
|
727 |
#define NUL 0x00 |
728 |
#define SOH 0x01 |
729 |
#define STX 0x02 |
730 |
#define ETX 0x03 |
731 |
#define EOT 0x04 |
732 |
#define ENQ 0x05 |
733 |
#define ACK 0x06 |
734 |
#define BEL 0x07 |
735 |
#define BS 0x08 |
736 |
#define HT 0x09 |
737 |
#define LF 0x0A |
738 |
#define VT 0x0B |
739 |
#define FF 0x0C |
740 |
#define CR 0x0D |
741 |
#define SO 0x0E |
742 |
#define SI 0x0F |
743 |
#define DLE 0x10 |
744 |
#define DC1 0x11 |
745 |
#define XON 0x11 |
746 |
#define DC2 0x12 |
747 |
#define DC3 0x13 |
748 |
#define XOFF 0x13 |
749 |
#define DC4 0x14 |
750 |
#define NAK 0x15 |
751 |
#define SYN 0x16 |
752 |
#define ETB 0x17 |
753 |
#define CAN 0x18 |
754 |
#define EM 0x19 |
755 |
#define SUB 0x1A |
756 |
#define ESC 0x1B |
757 |
#define FS 0x1C |
758 |
#define GS 0x1D |
759 |
#define RS 0x1E |
760 |
#define US 0x1F |
761 |
|
762 |
#define SP 0x20 |
763 |
|
764 |
#define DEL 0x7F |
765 |
|
766 |
#define IND 0x84 |
767 |
#define NEL 0x85 |
768 |
#define SSA 0x86 |
769 |
#define ESA 0x87 |
770 |
#define HTS 0x88 |
771 |
#define HTJ 0x89 |
772 |
#define VTS 0x8A |
773 |
#define PLD 0x8B |
774 |
#define PLU 0x8C |
775 |
#define RI 0x8D |
776 |
#define SS2 0x8E |
777 |
#define SS3 0x8F |
778 |
#define DCS 0x90 |
779 |
#define PU1 0x91 |
780 |
#define PU2 0x92 |
781 |
#define STS 0x93 |
782 |
#define CCH 0x94 |
783 |
#define MW 0x95 |
784 |
#define SPA 0x96 |
785 |
#define EPA 0x97 |
786 |
#define SOS 0x98 |
787 |
|
788 |
|
789 |
#define CSI 0x9B |
790 |
#define ST 0x9C |
791 |
#define OSC 0x9D |
792 |
#define PM 0x9E |
793 |
#define APC 0x9F |
794 |
|
795 |
#define InBuffSize 1024 |
796 |
#define OutBuffSize 1024 |
797 |
|
798 |
typedef struct { |
799 |
BYTE InBuff[InBuffSize]; |
800 |
int InBuffCount, InPtr; |
801 |
BYTE OutBuff[OutBuffSize]; |
802 |
int OutBuffCount, OutPtr; |
803 |
|
804 |
HWND HWin; |
805 |
BOOL Ready; |
806 |
BOOL Open; |
807 |
WORD PortType; |
808 |
WORD ComPort; |
809 |
unsigned int s; /* SOCKET */ |
810 |
WORD RetryCount; |
811 |
HANDLE ComID; |
812 |
BOOL CanSend, RRQ; |
813 |
|
814 |
BOOL SendKanjiFlag; |
815 |
BOOL EchoKanjiFlag; |
816 |
int SendCode; |
817 |
int EchoCode; |
818 |
BYTE SendKanjiFirst; |
819 |
BYTE EchoKanjiFirst; |
820 |
|
821 |
/* from VTSet */ |
822 |
WORD Language; |
823 |
/* from TermSet */ |
824 |
WORD CRSend; |
825 |
WORD KanjiCodeEcho; |
826 |
WORD JIS7KatakanaEcho; |
827 |
WORD KanjiCodeSend; |
828 |
WORD JIS7KatakanaSend; |
829 |
WORD KanjiIn; |
830 |
WORD KanjiOut; |
831 |
WORD RussHost; |
832 |
WORD RussClient; |
833 |
/* from PortSet */ |
834 |
WORD DelayPerChar; |
835 |
WORD DelayPerLine; |
836 |
BOOL TelBinRecv, TelBinSend; |
837 |
|
838 |
BOOL DelayFlag; |
839 |
BOOL TelFlag, TelMode; |
840 |
BOOL IACFlag, TelCRFlag; |
841 |
BOOL TelCRSend, TelCRSendEcho; |
842 |
BOOL TelAutoDetect; /* TTPLUG */ |
843 |
|
844 |
/* Text log */ |
845 |
HANDLE HLogBuf; |
846 |
PCHAR LogBuf; |
847 |
int LogPtr, LStart, LCount; |
848 |
/* Binary log & DDE */ |
849 |
HANDLE HBinBuf; |
850 |
PCHAR BinBuf; |
851 |
int BinPtr, BStart, BCount, DStart, DCount; |
852 |
int BinSkip; |
853 |
WORD FilePause; |
854 |
BOOL ProtoFlag; |
855 |
/* message flag */ |
856 |
WORD NoMsg; |
857 |
#ifndef NO_INET6 |
858 |
/* if TRUE, teraterm trys to connect other protocol family */ |
859 |
BOOL RetryWithOtherProtocol; |
860 |
struct addrinfo FAR * res0; |
861 |
struct addrinfo FAR * res; |
862 |
#endif /* NO_INET6 */ |
863 |
char *Locale; |
864 |
int *CodePage; |
865 |
int *ConnetingTimeout; |
866 |
|
867 |
time_t LastSendTime; |
868 |
WORD isSSH; |
869 |
char TitleRemote[TitleBuffSize]; |
870 |
|
871 |
BYTE LineModeBuff[OutBuffSize]; |
872 |
int LineModeBuffCount, FlushLen; |
873 |
BOOL Flush; |
874 |
|
875 |
BOOL TelLineMode; |
876 |
} TComVar; |
877 |
typedef TComVar far *PComVar; |
878 |
|
879 |
#define ID_FILE 0 |
880 |
#define ID_EDIT 1 |
881 |
#define ID_SETUP 2 |
882 |
#define ID_CONTROL 3 |
883 |
#define ID_HELPMENU 4 |
884 |
|
885 |
#define ID_WINDOW_1 50801 |
886 |
#define ID_WINDOW_WINDOW 50810 |
887 |
#define ID_TEKWINDOW_WINDOW 51810 |
888 |
|
889 |
#define ID_TRANSFER 9 // the position on [File] menu |
890 |
#define ID_SHOWMENUBAR 995 |
891 |
|
892 |
#define MAXNWIN 50 |
893 |
#define MAXCOMPORT 4096 |
894 |
#define MAXHOSTLIST 500 |
895 |
|
896 |
/* shared memory */ |
897 |
typedef struct { |
898 |
/* Setup information from "teraterm.ini" */ |
899 |
TTTSet ts; |
900 |
/* Key code map from "keyboard.def" */ |
901 |
TKeyMap km; |
902 |
// Window list |
903 |
int NWin; |
904 |
HWND WinList[MAXNWIN]; |
905 |
/* COM port use flag |
906 |
* bit 8 7 6 5 4 3 2 1 |
907 |
* char[0] : COM 8 7 6 5 4 3 2 1 |
908 |
* char[1] : COM16 15 14 13 12 11 10 9 ... |
909 |
*/ |
910 |
unsigned char ComFlag[(MAXCOMPORT-1)/CHAR_BIT+1]; |
911 |
} TMap; |
912 |
typedef TMap far *PMap; |
913 |
|
914 |
|
915 |
/* |
916 |
* Increment the number of this macro value |
917 |
* when you change TMap or member of TMap. |
918 |
* |
919 |
* - At version 4.63, ttset_memfilemap was replaced with ttset_memfilemap_11. |
920 |
* added tttset.Wait4allMacroCommand. |
921 |
* added tttset.DisableAcceleratorMenu. |
922 |
* added tttset.ClearScreenOnCloseConnection. |
923 |
* added tttset.DisableAcceleratorDuplicateSession. |
924 |
* added tttset.PasteDelayPerLine. |
925 |
* added tttset.FontScaling. |
926 |
* added tttset.Meta8Bit. |
927 |
* added tttset.WindowFlag. |
928 |
* added tttset.EnableLineMode |
929 |
* added tttset.ConfirmChangePasteStringFile |
930 |
* |
931 |
* - At version 4.62, ttset_memfilemap was replaced with ttset_memfilemap_10. |
932 |
* added tttset.DisableMouseTrackingByCtrl. |
933 |
* added tttset.DisableWheelToCursorByCtrl. |
934 |
* added tttset.VTReverseColor[]. etc. |
935 |
* added tttset.StrictKeyMapping. |
936 |
* |
937 |
* - At version 4.61, ttset_memfilemap was replaced with ttset_memfilemap_9. |
938 |
* added TComVar.TitleRemote. |
939 |
* |
940 |
* - At version 4.60, ttset_memfilemap was replaced with ttset_memfilemap_8. |
941 |
* added tttset.AcceptTitleChangeRequest. |
942 |
* added tttset.PasteDialogSize. |
943 |
* |
944 |
* - At version 4.59, ttset_memfilemap was replaced with ttset_memfilemap_7. |
945 |
* added tttset.DisablePasteMouseMButton. |
946 |
* added tttset.MouseWheelScrollLine. |
947 |
* added tttset.CRSend_ini. |
948 |
* added tttset.LocalEcho_ini. |
949 |
* added tttset.UnicodeDecSpMapping. |
950 |
* added tttset.VTIcon. |
951 |
* added tttset.TEKIcon. |
952 |
* added tttset.ScrollWindowClearScreen. |
953 |
* added tttset.AutoScrollOnlyInBottomLine. |
954 |
* added tttset.UnknownUnicodeCharaAsWide. |
955 |
* added tttset.YModemRcvCommand. |
956 |
* |
957 |
* - At version 4.58, ttset_memfilemap was replaced with ttset_memfilemap_6. |
958 |
* added tttset.TranslateWheelToCursor. |
959 |
* added tttset.HostDialogOnStartup. |
960 |
* added tttset.MouseEventTracking. |
961 |
* added tttset.KillFocusCursor. |
962 |
* added tttset.LogHideDialog. |
963 |
* added tttset.TerminalOldWidth. |
964 |
* added tttset.TerminalOldHeight. |
965 |
* added tttset.MaximizeBugTweak. |
966 |
* added tttset.ConfirmChangePaste. |
967 |
* added tttset.SaveVTWinPos. |
968 |
* |
969 |
* - At version 4.57, ttset_memfilemap was replaced with ttset_memfilemap_5. |
970 |
* added tttset.XModemRcvCommand. |
971 |
* added tttset.ZModemRcvCommand. |
972 |
* added tttset.ConfirmFileDragAndDrop. |
973 |
* |
974 |
* - At version 4.56, ttset_memfilemap was replaced with ttset_memfilemap_4. |
975 |
* added tttset.DisableAppKeypad. |
976 |
* added tttset.DisableAppCursor. |
977 |
* added tttset.ClearComBuffOnOpen. |
978 |
* added tttset.Send8BitCtrl. |
979 |
* added tttset.UILanguageFile_ini. |
980 |
* added tttset.SelectOnlyByLButton. |
981 |
* added tttset.TelAutoDetect. |
982 |
* |
983 |
* - At version 4.54, ttset_memfilemap was replaced with ttset_memfilemap_3. |
984 |
* added tttset.TelKeepAliveInterval. |
985 |
* added tttset.MaxBroadcatHistory. |
986 |
* changed pm.ComFlag type. |
987 |
* |
988 |
* - At version 4.53, ttset_memfilemap was replaced with ttset_memfilemap_2. |
989 |
* added tttset.VTCompatTab. |
990 |
*/ |
991 |
|
992 |
#define TT_FILEMAPNAME "ttset_memfilemap_11" |