Develop and Download Open Source Software

Browse Subversion Repository

Contents of /trunk/teraterm/common/tttypes.h

Parent Directory Parent Directory | Revision Log Revision Log


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

SourceForge.JP is a Japanese version of SourceForge.net. For developments that are not related to Japan, we recommend you to use SourceForge.net.