Develop and Download Open Source Software

Browse Subversion Repository

Contents of /trunk/teraterm/teraterm/addsetting.cpp

Parent Directory Parent Directory | Revision Log Revision Log


Revision 5573 - (show annotations) (download) (as text)
Wed Apr 30 12:57:36 2014 UTC (9 years, 11 months ago) by yutakapon
File MIME type: text/x-c++src
File size: 71518 byte(s)
Eterm look-feel: 背景画像を指定するかどうかをチェックボックスで判別するようにした。

・組み合わせパターン
 Eterm look-feel   Background Image   画像ファイル指定
       ✓なし             無効               無効
       ✓あり             ✓なし             無効
       ✓あり             ✓あり             有効

1 /*
2 * Additional settings dialog
3 */
4
5 #include <afxwin.h>
6 #include <afxdlgs.h>
7 #include <afxcmn.h>
8 #include <commctrl.h>
9
10 #include "addsetting.h"
11 #include "teraterm.h"
12 #include "tttypes.h"
13 #include "ttwinman.h"
14 #include "ttcommon.h"
15 #include "ttftypes.h"
16
17 mouse_cursor_t MouseCursor[] = {
18 {"ARROW", IDC_ARROW},
19 {"IBEAM", IDC_IBEAM},
20 {"CROSS", IDC_CROSS},
21 {"HAND", IDC_HAND},
22 {NULL, NULL},
23 };
24 #define MOUSE_CURSOR_MAX (sizeof(MouseCursor)/sizeof(MouseCursor[0]) - 1)
25
26 // –{‘Ì‚Í vtwin.cpp
27 extern void SetWindowStyle(TTTSet *ts);
28
29 void split_buffer(char *buffer, int delimiter, char **head, char **body)
30 {
31 char *p1, *p2;
32
33 *head = *body = NULL;
34
35 if (!isalnum(*buffer) || (p1 = strchr(buffer, delimiter)) == NULL) {
36 return;
37 }
38
39 *head = buffer;
40
41 p2 = buffer;
42 while (p2 < p1 && !isspace(*p2)) {
43 p2++;
44 }
45
46 *p2 = '\0';
47
48 p1++;
49 while (*p1 && isspace(*p1)) {
50 p1++;
51 }
52
53 *body = p1;
54 }
55
56
57 static void SetupRGBbox(HWND hDlgWnd, int index)
58 {
59 HWND hWnd;
60 BYTE c;
61 char buf[10];
62
63 hWnd = GetDlgItem(hDlgWnd, IDC_COLOR_RED);
64 c = GetRValue(ts.ANSIColor[index]);
65 _snprintf_s(buf, sizeof(buf), _TRUNCATE, "%d", c);
66 SendMessage(hWnd, WM_SETTEXT , 0, (LPARAM)buf);
67
68 hWnd = GetDlgItem(hDlgWnd, IDC_COLOR_GREEN);
69 c = GetGValue(ts.ANSIColor[index]);
70 _snprintf_s(buf, sizeof(buf), _TRUNCATE, "%d", c);
71 SendMessage(hWnd, WM_SETTEXT , 0, (LPARAM)buf);
72
73 hWnd = GetDlgItem(hDlgWnd, IDC_COLOR_BLUE);
74 c = GetBValue(ts.ANSIColor[index]);
75 _snprintf_s(buf, sizeof(buf), _TRUNCATE, "%d", c);
76 SendMessage(hWnd, WM_SETTEXT , 0, (LPARAM)buf);
77 }
78
79
80
81 // CGeneralPropPageDlg ƒ_ƒCƒAƒ�ƒO
82
83 IMPLEMENT_DYNAMIC(CGeneralPropPageDlg, CPropertyPage)
84
85 CGeneralPropPageDlg::CGeneralPropPageDlg()
86 : CPropertyPage(CGeneralPropPageDlg::IDD)
87 {
88 }
89
90 CGeneralPropPageDlg::~CGeneralPropPageDlg()
91 {
92 if (DlgGeneralFont != NULL) {
93 DeleteObject(DlgGeneralFont);
94 }
95 }
96
97 BEGIN_MESSAGE_MAP(CGeneralPropPageDlg, CPropertyPage)
98 END_MESSAGE_MAP()
99
100 // CGeneralPropPageDlg ƒ�ƒbƒZ�[ƒW ƒnƒ“ƒhƒ‰
101
102 BOOL CGeneralPropPageDlg::OnInitDialog()
103 {
104 char uimsg[MAX_UIMSG];
105 char buf[64];
106 CButton *btn;
107
108 CPropertyPage::OnInitDialog();
109
110 font = (HFONT)SendMessage(WM_GETFONT, 0, 0);
111 GetObject(font, sizeof(LOGFONT), &logfont);
112 if (get_lang_font("DLG_TAHOMA_FONT", GetSafeHwnd(), &logfont, &DlgGeneralFont, ts.UILanguageFile)) {
113 SendDlgItemMessage(IDC_CLICKABLE_URL, WM_SETFONT, (WPARAM)DlgGeneralFont, MAKELPARAM(TRUE,0));
114 SendDlgItemMessage(IDC_DISABLE_SENDBREAK, WM_SETFONT, (WPARAM)DlgGeneralFont, MAKELPARAM(TRUE,0));
115 SendDlgItemMessage(IDC_ACCEPT_BROADCAST, WM_SETFONT, (WPARAM)DlgGeneralFont, MAKELPARAM(TRUE,0)); // 337: 2007/03/20
116 SendDlgItemMessage(IDC_MOUSEWHEEL_SCROLL_LINE, WM_SETFONT, (WPARAM)DlgGeneralFont, MAKELPARAM(TRUE,0));
117 SendDlgItemMessage(IDC_SCROLL_LINE, WM_SETFONT, (WPARAM)DlgGeneralFont, MAKELPARAM(TRUE,0));
118 SendDlgItemMessage(IDC_AUTOSCROLL_ONLY_IN_BOTTOM_LINE, WM_SETFONT, (WPARAM)DlgGeneralFont, MAKELPARAM(TRUE,0));
119 SendDlgItemMessage(IDC_CLEAR_ON_RESIZE, WM_SETFONT, (WPARAM)DlgGeneralFont, MAKELPARAM(TRUE,0));
120 SendDlgItemMessage(IDC_CURSOR_CHANGE_IME, WM_SETFONT, (WPARAM)DlgGeneralFont, MAKELPARAM(TRUE,0));
121 }
122 else {
123 DlgGeneralFont = NULL;
124 }
125
126 GetDlgItemText(IDC_CLICKABLE_URL, uimsg, sizeof(uimsg));
127 get_lang_msg("DLG_TAB_GENERAL_CLICKURL", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
128 SetDlgItemText(IDC_CLICKABLE_URL, ts.UIMsg);
129 GetDlgItemText(IDC_DISABLE_SENDBREAK, uimsg, sizeof(uimsg));
130 get_lang_msg("DLG_TAB_GENERAL_DISABLESENDBREAK", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
131 SetDlgItemText(IDC_DISABLE_SENDBREAK, ts.UIMsg);
132 GetDlgItemText(IDC_ACCEPT_BROADCAST, uimsg, sizeof(uimsg));
133 get_lang_msg("DLG_TAB_GENERAL_ACCEPTBROADCAST", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
134 SetDlgItemText(IDC_ACCEPT_BROADCAST, ts.UIMsg);
135 GetDlgItemText(IDC_MOUSEWHEEL_SCROLL_LINE, uimsg, sizeof(uimsg));
136 get_lang_msg("DLG_TAB_GENERAL_MOUSEWHEEL_SCROLL_LINE", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
137 SetDlgItemText(IDC_MOUSEWHEEL_SCROLL_LINE, ts.UIMsg);
138 GetDlgItemText(IDC_AUTOSCROLL_ONLY_IN_BOTTOM_LINE, uimsg, sizeof(uimsg));
139 get_lang_msg("DLG_TAB_GENERAL_AUTOSCROLL_ONLY_IN_BOTTOM_LINE", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
140 SetDlgItemText(IDC_AUTOSCROLL_ONLY_IN_BOTTOM_LINE, ts.UIMsg);
141 GetDlgItemText(IDC_CLEAR_ON_RESIZE, uimsg, sizeof(uimsg));
142 get_lang_msg("DLG_TAB_GENERAL_CLEAR_ON_RESIZE", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
143 SetDlgItemText(IDC_CLEAR_ON_RESIZE, ts.UIMsg);
144 GetDlgItemText(IDC_CURSOR_CHANGE_IME, uimsg, sizeof(uimsg));
145 get_lang_msg("DLG_TAB_GENERAL_CURSOR_CHANGE_IME", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
146 SetDlgItemText(IDC_CURSOR_CHANGE_IME, ts.UIMsg);
147
148 // (1)DisableAcceleratorSendBreak
149 btn = (CButton *)GetDlgItem(IDC_DISABLE_SENDBREAK);
150 btn->SetCheck(ts.DisableAcceleratorSendBreak);
151
152 // (2)EnableClickableUrl
153 btn = (CButton *)GetDlgItem(IDC_CLICKABLE_URL);
154 btn->SetCheck(ts.EnableClickableUrl);
155
156 // (3)AcceptBroadcast 337: 2007/03/20
157 btn = (CButton *)GetDlgItem(IDC_ACCEPT_BROADCAST);
158 btn->SetCheck(ts.AcceptBroadcast);
159
160 // (4)IDC_MOUSEWHEEL_SCROLL_LINE
161 _snprintf_s(buf, sizeof(buf), "%d", ts.MouseWheelScrollLine);
162 SetDlgItemText(IDC_SCROLL_LINE, buf);
163
164 // (5)IDC_AUTOSCROLL_ONLY_IN_BOTTOM_LINE
165 btn = (CButton *)GetDlgItem(IDC_AUTOSCROLL_ONLY_IN_BOTTOM_LINE);
166 btn->SetCheck(ts.AutoScrollOnlyInBottomLine);
167
168 // (6)IDC_CLEAR_ON_RESIZE
169 btn = (CButton *)GetDlgItem(IDC_CLEAR_ON_RESIZE);
170 btn->SetCheck((ts.TermFlag & TF_CLEARONRESIZE) != 0);
171
172 // (7)IDC_CURSOR_CHANGE_IME
173 btn = (CButton *)GetDlgItem(IDC_CURSOR_CHANGE_IME);
174 btn->SetCheck((ts.WindowFlag & WF_IMECURSORCHANGE) != 0);
175
176 // ƒ_ƒCƒAƒ�ƒO‚ɃtƒH�[ƒJƒX‚ð“–‚Ä‚é (2004.12.7 yutaka)
177 ::SetFocus(::GetDlgItem(GetSafeHwnd(), IDC_CLICKABLE_URL));
178
179 return FALSE;
180 }
181
182 void CGeneralPropPageDlg::OnOK()
183 {
184 CButton *btn;
185 char buf[64];
186 int val;
187
188 // (1)
189 btn = (CButton *)GetDlgItem(IDC_DISABLE_SENDBREAK);
190 ts.DisableAcceleratorSendBreak = btn->GetCheck();
191
192 // (2)
193 btn = (CButton *)GetDlgItem(IDC_CLICKABLE_URL);
194 ts.EnableClickableUrl = btn->GetCheck();
195
196 // (3) 337: 2007/03/20
197 btn = (CButton *)GetDlgItem(IDC_ACCEPT_BROADCAST);
198 ts.AcceptBroadcast = btn->GetCheck();
199
200 // (4)IDC_MOUSEWHEEL_SCROLL_LINE
201 GetDlgItemText(IDC_SCROLL_LINE, buf, sizeof(buf));
202 val = atoi(buf);
203 if (val > 0)
204 ts.MouseWheelScrollLine = val;
205
206 // (5)IDC_AUTOSCROLL_ONLY_IN_BOTTOM_LINE
207 btn = (CButton *)GetDlgItem(IDC_AUTOSCROLL_ONLY_IN_BOTTOM_LINE);
208 ts.AutoScrollOnlyInBottomLine = btn->GetCheck();
209
210 // (6)IDC_CLEAR_ON_RESIZE
211 btn = (CButton *)GetDlgItem(IDC_CLEAR_ON_RESIZE);
212 if (((ts.TermFlag & TF_CLEARONRESIZE) != 0) != btn->GetCheck()) {
213 ts.TermFlag ^= TF_CLEARONRESIZE;
214 }
215
216 // (7)IDC_CURSOR_CHANGE_IME
217 btn = (CButton *)GetDlgItem(IDC_CURSOR_CHANGE_IME);
218 if (((ts.WindowFlag & WF_IMECURSORCHANGE) != 0) != btn->GetCheck()) {
219 ts.WindowFlag ^= WF_IMECURSORCHANGE;
220 }
221 }
222
223
224
225 // CSequencePropPageDlg ƒ_ƒCƒAƒ�ƒO
226
227 IMPLEMENT_DYNAMIC(CSequencePropPageDlg, CPropertyPage)
228
229 CSequencePropPageDlg::CSequencePropPageDlg()
230 : CPropertyPage(CSequencePropPageDlg::IDD)
231 {
232 }
233
234 CSequencePropPageDlg::~CSequencePropPageDlg()
235 {
236 if (DlgSequenceFont != NULL) {
237 DeleteObject(DlgSequenceFont);
238 }
239 }
240
241 BEGIN_MESSAGE_MAP(CSequencePropPageDlg, CPropertyPage)
242 END_MESSAGE_MAP()
243
244 // CSequencePropPageDlg ƒ�ƒbƒZ�[ƒW ƒnƒ“ƒhƒ‰
245
246 BOOL CSequencePropPageDlg::OnInitDialog()
247 {
248 char uimsg[MAX_UIMSG];
249 CButton *btn, *btn2;
250 CComboBox *cmb;
251
252 CPropertyPage::OnInitDialog();
253
254 font = (HFONT)SendMessage(WM_GETFONT, 0, 0);
255 GetObject(font, sizeof(LOGFONT), &logfont);
256 if (get_lang_font("DLG_TAHOMA_FONT", GetSafeHwnd(), &logfont, &DlgSequenceFont, ts.UILanguageFile)) {
257 SendDlgItemMessage(IDC_ACCEPT_MOUSE_EVENT_TRACKING, WM_SETFONT, (WPARAM)DlgSequenceFont, MAKELPARAM(TRUE,0));
258 SendDlgItemMessage(IDC_DISABLE_MOUSE_TRACKING_CTRL, WM_SETFONT, (WPARAM)DlgSequenceFont, MAKELPARAM(TRUE,0));
259 SendDlgItemMessage(IDC_ACCEPT_TITLE_CHANGING_LABEL, WM_SETFONT, (WPARAM)DlgSequenceFont, MAKELPARAM(TRUE,0));
260 SendDlgItemMessage(IDC_ACCEPT_TITLE_CHANGING, WM_SETFONT, (WPARAM)DlgSequenceFont, MAKELPARAM(TRUE,0));
261 SendDlgItemMessage(IDC_TITLE_REPORT_LABEL, WM_SETFONT, (WPARAM)DlgSequenceFont, MAKELPARAM(TRUE,0));
262 SendDlgItemMessage(IDC_TITLE_REPORT, WM_SETFONT, (WPARAM)DlgSequenceFont, MAKELPARAM(TRUE,0));
263 SendDlgItemMessage(IDC_WINDOW_CTRL, WM_SETFONT, (WPARAM)DlgSequenceFont, MAKELPARAM(TRUE,0));
264 SendDlgItemMessage(IDC_WINDOW_REPORT, WM_SETFONT, (WPARAM)DlgSequenceFont, MAKELPARAM(TRUE,0));
265 SendDlgItemMessage(IDC_CURSOR_CTRL_SEQ, WM_SETFONT, (WPARAM)DlgSequenceFont, MAKELPARAM(TRUE,0));
266 SendDlgItemMessage(IDC_CLIPBOARD_ACCESS_LABEL, WM_SETFONT, (WPARAM)DlgSequenceFont, MAKELPARAM(TRUE,0));
267 SendDlgItemMessage(IDC_CLIPBOARD_ACCESS, WM_SETFONT, (WPARAM)DlgSequenceFont, MAKELPARAM(TRUE,0));
268 }
269 else {
270 DlgSequenceFont = NULL;
271 }
272
273 GetDlgItemText(IDC_ACCEPT_MOUSE_EVENT_TRACKING, uimsg, sizeof(uimsg));
274 get_lang_msg("DLG_TAB_SEQENCE_ACCEPT_MOUSE_EVENT_TRACKING", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
275 SetDlgItemText(IDC_ACCEPT_MOUSE_EVENT_TRACKING, ts.UIMsg);
276 GetDlgItemText(IDC_DISABLE_MOUSE_TRACKING_CTRL, uimsg, sizeof(uimsg));
277 get_lang_msg("DLG_TAB_SEQENCE_DISABLE_MOUSE_TRACKING_CTRL", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
278 SetDlgItemText(IDC_DISABLE_MOUSE_TRACKING_CTRL, ts.UIMsg);
279 GetDlgItemText(IDC_ACCEPT_TITLE_CHANGING_LABEL, uimsg, sizeof(uimsg));
280 get_lang_msg("DLG_TAB_SEQENCE_ACCEPT_TITLE_CHANGING", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
281 SetDlgItemText(IDC_ACCEPT_TITLE_CHANGING_LABEL, ts.UIMsg);
282
283 get_lang_msg("DLG_TAB_SEQENCE_ACCEPT_TITLE_CHANGING_OFF", ts.UIMsg, sizeof(ts.UIMsg), "off", ts.UILanguageFile);
284 SendDlgItemMessage(IDC_ACCEPT_TITLE_CHANGING, CB_ADDSTRING, 0, (LPARAM)ts.UIMsg);
285 get_lang_msg("DLG_TAB_SEQENCE_ACCEPT_TITLE_CHANGING_OVERWRITE", ts.UIMsg, sizeof(ts.UIMsg), "overwrite", ts.UILanguageFile);
286 SendDlgItemMessage(IDC_ACCEPT_TITLE_CHANGING, CB_ADDSTRING, 0, (LPARAM)ts.UIMsg);
287 get_lang_msg("DLG_TAB_SEQENCE_ACCEPT_TITLE_CHANGING_AHEAD", ts.UIMsg, sizeof(ts.UIMsg), "ahead", ts.UILanguageFile);
288 SendDlgItemMessage(IDC_ACCEPT_TITLE_CHANGING, CB_ADDSTRING, 0, (LPARAM)ts.UIMsg);
289 get_lang_msg("DLG_TAB_SEQENCE_ACCEPT_TITLE_CHANGING_LAST", ts.UIMsg, sizeof(ts.UIMsg), "last", ts.UILanguageFile);
290 SendDlgItemMessage(IDC_ACCEPT_TITLE_CHANGING, CB_ADDSTRING, 0, (LPARAM)ts.UIMsg);
291
292 GetDlgItemText(IDC_CURSOR_CTRL_SEQ, uimsg, sizeof(uimsg));
293 get_lang_msg("DLG_TAB_SEQENCE_CURSOR_CTRL", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
294 SetDlgItemText(IDC_CURSOR_CTRL_SEQ, ts.UIMsg);
295 GetDlgItemText(IDC_WINDOW_CTRL, uimsg, sizeof(uimsg));
296 get_lang_msg("DLG_TAB_SEQENCE_WINDOW_CTRL", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
297 SetDlgItemText(IDC_WINDOW_CTRL, ts.UIMsg);
298 GetDlgItemText(IDC_WINDOW_REPORT, uimsg, sizeof(uimsg));
299 get_lang_msg("DLG_TAB_SEQENCE_WINDOW_REPORT", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
300 SetDlgItemText(IDC_WINDOW_REPORT, ts.UIMsg);
301 GetDlgItemText(IDC_TITLE_REPORT_LABEL, uimsg, sizeof(uimsg));
302 get_lang_msg("DLG_TAB_SEQENCE_TITLE_REPORT", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
303 SetDlgItemText(IDC_TITLE_REPORT_LABEL, ts.UIMsg);
304
305 get_lang_msg("DLG_TAB_SEQENCE_TITLE_REPORT_IGNORE", ts.UIMsg, sizeof(ts.UIMsg), "ignore", ts.UILanguageFile);
306 SendDlgItemMessage(IDC_TITLE_REPORT, CB_ADDSTRING, 0, (LPARAM)ts.UIMsg);
307 get_lang_msg("DLG_TAB_SEQENCE_TITLE_REPORT_ACCEPT", ts.UIMsg, sizeof(ts.UIMsg), "accept", ts.UILanguageFile);
308 SendDlgItemMessage(IDC_TITLE_REPORT, CB_ADDSTRING, 0, (LPARAM)ts.UIMsg);
309 get_lang_msg("DLG_TAB_SEQENCE_TITLE_REPORT_EMPTY", ts.UIMsg, sizeof(ts.UIMsg), "empty", ts.UILanguageFile);
310 SendDlgItemMessage(IDC_TITLE_REPORT, CB_ADDSTRING, 0, (LPARAM)ts.UIMsg);
311
312 GetDlgItemText(IDC_CLIPBOARD_ACCESS_LABEL, uimsg, sizeof(uimsg));
313 get_lang_msg("DLG_TAB_SEQENCE_CLIPBOARD_ACCESS", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
314 SetDlgItemText(IDC_CLIPBOARD_ACCESS_LABEL, ts.UIMsg);
315
316 get_lang_msg("DLG_TAB_SEQENCE_CLIPBOARD_ACCESS_OFF", ts.UIMsg, sizeof(ts.UIMsg), "off", ts.UILanguageFile);
317 SendDlgItemMessage(IDC_CLIPBOARD_ACCESS, CB_ADDSTRING, 0, (LPARAM)ts.UIMsg);
318 get_lang_msg("DLG_TAB_SEQENCE_CLIPBOARD_ACCESS_WRITE", ts.UIMsg, sizeof(ts.UIMsg), "write only", ts.UILanguageFile);
319 SendDlgItemMessage(IDC_CLIPBOARD_ACCESS, CB_ADDSTRING, 0, (LPARAM)ts.UIMsg);
320 get_lang_msg("DLG_TAB_SEQENCE_CLIPBOARD_ACCESS_READ", ts.UIMsg, sizeof(ts.UIMsg), "read only", ts.UILanguageFile);
321 SendDlgItemMessage(IDC_CLIPBOARD_ACCESS, CB_ADDSTRING, 0, (LPARAM)ts.UIMsg);
322 get_lang_msg("DLG_TAB_SEQENCE_CLIPBOARD_ACCESS_ON", ts.UIMsg, sizeof(ts.UIMsg), "read/write", ts.UILanguageFile);
323 SendDlgItemMessage(IDC_CLIPBOARD_ACCESS, CB_ADDSTRING, 0, (LPARAM)ts.UIMsg);
324
325 // (1)IDC_ACCEPT_MOUSE_EVENT_TRACKING
326 btn = (CButton *)GetDlgItem(IDC_ACCEPT_MOUSE_EVENT_TRACKING);
327 btn2 = (CButton *)GetDlgItem(IDC_DISABLE_MOUSE_TRACKING_CTRL);
328 btn->SetCheck(ts.MouseEventTracking);
329 if (ts.MouseEventTracking) {
330 btn2->EnableWindow(TRUE);
331 } else {
332 btn2->EnableWindow(FALSE);
333 }
334
335 // (2)IDC_DISABLE_MOUSE_TRACKING_CTRL
336 btn2->SetCheck(ts.DisableMouseTrackingByCtrl);
337
338 // (3)IDC_ACCEPT_TITLE_CHANGING
339 cmb = (CComboBox *)GetDlgItem(IDC_ACCEPT_TITLE_CHANGING);
340 cmb->SetCurSel(ts.AcceptTitleChangeRequest);
341
342 // (4)IDC_TITLE_REPORT
343 cmb = (CComboBox *)GetDlgItem(IDC_TITLE_REPORT);
344 switch (ts.WindowFlag & WF_TITLEREPORT) {
345 case IdTitleReportIgnore:
346 cmb->SetCurSel(0);
347 break;
348 case IdTitleReportAccept:
349 cmb->SetCurSel(1);
350 break;
351 default: // IdTitleReportEmpty
352 cmb->SetCurSel(2);
353 break;
354 }
355
356 // (5)IDC_WINDOW_CTRL
357 btn = (CButton *)GetDlgItem(IDC_WINDOW_CTRL);
358 btn->SetCheck((ts.WindowFlag & WF_WINDOWCHANGE) != 0);
359
360 // (6)IDC_WINDOW_REPORT
361 btn = (CButton *)GetDlgItem(IDC_WINDOW_REPORT);
362 btn->SetCheck((ts.WindowFlag & WF_WINDOWREPORT) != 0);
363
364 // (7)IDC_CURSOR_CTRL_SEQ
365 btn = (CButton *)GetDlgItem(IDC_CURSOR_CTRL_SEQ);
366 btn->SetCheck((ts.WindowFlag & WF_CURSORCHANGE) != 0);
367
368 // (8)IDC_CLIPBOARD_ACCESS
369 cmb = (CComboBox *)GetDlgItem(IDC_CLIPBOARD_ACCESS);
370 switch (ts.CtrlFlag & CSF_CBRW) {
371 case CSF_CBRW:
372 cmb->SetCurSel(3);
373 break;
374 case CSF_CBREAD:
375 cmb->SetCurSel(2);
376 break;
377 case CSF_CBWRITE:
378 cmb->SetCurSel(1);
379 break;
380 default: // off
381 cmb->SetCurSel(0);
382 break;
383 }
384
385 // ƒ_ƒCƒAƒ�ƒO‚ɃtƒH�[ƒJƒX‚ð“–‚Ä‚é (2004.12.7 yutaka)
386 ::SetFocus(::GetDlgItem(GetSafeHwnd(), IDC_CLICKABLE_URL));
387
388 return FALSE;
389 }
390
391 BOOL CSequencePropPageDlg::OnCommand(WPARAM wParam, LPARAM lParam)
392 {
393 CButton *btn, *btn2;
394
395 switch (wParam) {
396 case IDC_ACCEPT_MOUSE_EVENT_TRACKING | (BN_CLICKED << 16):
397 btn = (CButton *)GetDlgItem(IDC_ACCEPT_MOUSE_EVENT_TRACKING);
398 btn2 = (CButton *)GetDlgItem(IDC_DISABLE_MOUSE_TRACKING_CTRL);
399 if (btn->GetCheck()) {
400 btn2->EnableWindow(TRUE);
401 } else {
402 btn2->EnableWindow(FALSE);
403 }
404 return TRUE;
405 }
406 return CPropertyPage::OnCommand(wParam, lParam);
407 }
408
409 void CSequencePropPageDlg::OnOK()
410 {
411 CButton *btn;
412 CComboBox *cmb;
413
414 // (1)IDC_ACCEPT_MOUSE_EVENT_TRACKING
415 btn = (CButton *)GetDlgItem(IDC_ACCEPT_MOUSE_EVENT_TRACKING);
416 ts.MouseEventTracking = btn->GetCheck();
417
418 // (2)IDC_DISABLE_MOUSE_TRACKING_CTRL
419 btn = (CButton *)GetDlgItem(IDC_DISABLE_MOUSE_TRACKING_CTRL);
420 ts.DisableMouseTrackingByCtrl = btn->GetCheck();
421
422 // (3)IDC_ACCEPT_TITLE_CHANGING
423 cmb = (CComboBox *)GetDlgItem(IDC_ACCEPT_TITLE_CHANGING);
424 ts.AcceptTitleChangeRequest = cmb->GetCurSel();
425
426 // (4)IDC_TITLE_REPORT
427 cmb = (CComboBox *)GetDlgItem(IDC_TITLE_REPORT);
428 switch (cmb->GetCurSel()) {
429 case 0:
430 ts.WindowFlag &= ~WF_TITLEREPORT;
431 break;
432 case 1:
433 ts.WindowFlag &= ~WF_TITLEREPORT;
434 ts.WindowFlag |= IdTitleReportAccept;
435 break;
436 default: // 2
437 ts.WindowFlag |= IdTitleReportEmpty;
438 break;
439 }
440
441 // (5)IDC_WINDOW_CTRL
442 btn = (CButton *)GetDlgItem(IDC_WINDOW_CTRL);
443 if (((ts.WindowFlag & WF_WINDOWCHANGE) != 0) != btn->GetCheck()) {
444 ts.WindowFlag ^= WF_WINDOWCHANGE;
445 }
446
447 // (6)IDC_WINDOW_REPORT
448 btn = (CButton *)GetDlgItem(IDC_WINDOW_REPORT);
449 if (((ts.WindowFlag & WF_WINDOWREPORT) != 0) != btn->GetCheck()) {
450 ts.WindowFlag ^= WF_WINDOWREPORT;
451 }
452
453 // (7)IDC_CURSOR_CTRL_SEQ
454 btn = (CButton *)GetDlgItem(IDC_CURSOR_CTRL_SEQ);
455 if (((ts.WindowFlag & WF_CURSORCHANGE) != 0) != btn->GetCheck()) {
456 ts.WindowFlag ^= WF_CURSORCHANGE;
457 }
458
459 // (8)IDC_TITLE_REPORT
460 cmb = (CComboBox *)GetDlgItem(IDC_CLIPBOARD_ACCESS);
461 switch (cmb->GetCurSel()) {
462 case 0: // off
463 ts.CtrlFlag &= ~CSF_CBRW;
464 break;
465 case 1: // write only
466 ts.CtrlFlag &= ~CSF_CBRW;
467 ts.CtrlFlag |= CSF_CBWRITE;
468 break;
469 case 2: // read only
470 ts.CtrlFlag &= ~CSF_CBRW;
471 ts.CtrlFlag |= CSF_CBREAD;
472 break;
473 default: // read/write
474 ts.CtrlFlag |= CSF_CBRW;
475 break;
476 }
477 }
478
479
480
481 // CCopypastePropPageDlg ƒ_ƒCƒAƒ�ƒO
482
483 IMPLEMENT_DYNAMIC(CCopypastePropPageDlg, CPropertyPage)
484
485 CCopypastePropPageDlg::CCopypastePropPageDlg()
486 : CPropertyPage(CCopypastePropPageDlg::IDD)
487 {
488 }
489
490 CCopypastePropPageDlg::~CCopypastePropPageDlg()
491 {
492 if (DlgCopypasteFont != NULL) {
493 DeleteObject(DlgCopypasteFont);
494 }
495 }
496
497 BEGIN_MESSAGE_MAP(CCopypastePropPageDlg, CPropertyPage)
498 END_MESSAGE_MAP()
499
500 // CCopypastePropPageDlg ƒ�ƒbƒZ�[ƒW ƒnƒ“ƒhƒ‰
501
502 BOOL CCopypastePropPageDlg::OnInitDialog()
503 {
504 char uimsg[MAX_UIMSG];
505 CButton *btn, *btn2;
506 CEdit *edit;
507 char buf[64];
508
509 CPropertyPage::OnInitDialog();
510
511 font = (HFONT)SendMessage(WM_GETFONT, 0, 0);
512 GetObject(font, sizeof(LOGFONT), &logfont);
513 if (get_lang_font("DLG_TAHOMA_FONT", GetSafeHwnd(), &logfont, &DlgCopypasteFont, ts.UILanguageFile)) {
514 SendDlgItemMessage(IDC_LINECOPY, WM_SETFONT, (WPARAM)DlgCopypasteFont, MAKELPARAM(TRUE,0));
515 SendDlgItemMessage(IDC_DISABLE_PASTE_RBUTTON, WM_SETFONT, (WPARAM)DlgCopypasteFont, MAKELPARAM(TRUE,0));
516 SendDlgItemMessage(IDC_CONFIRM_PASTE_RBUTTON, WM_SETFONT, (WPARAM)DlgCopypasteFont, MAKELPARAM(TRUE,0));
517 SendDlgItemMessage(IDC_DISABLE_PASTE_MBUTTON, WM_SETFONT, (WPARAM)DlgCopypasteFont, MAKELPARAM(TRUE,0));
518 SendDlgItemMessage(IDC_SELECT_LBUTTON, WM_SETFONT, (WPARAM)DlgCopypasteFont, MAKELPARAM(TRUE,0));
519 SendDlgItemMessage(IDC_CONFIRM_CHANGE_PASTE, WM_SETFONT, (WPARAM)DlgCopypasteFont, MAKELPARAM(TRUE,0));
520 SendDlgItemMessage(IDC_CONFIRM_STRING_FILE_LABEL, WM_SETFONT, (WPARAM)DlgCopypasteFont, MAKELPARAM(TRUE,0));
521 SendDlgItemMessage(IDC_CONFIRM_STRING_FILE, WM_SETFONT, (WPARAM)DlgCopypasteFont, MAKELPARAM(TRUE,0));
522 SendDlgItemMessage(IDC_CONFIRM_STRING_FILE_PATH, WM_SETFONT, (WPARAM)DlgCopypasteFont, MAKELPARAM(TRUE,0));
523 SendDlgItemMessage(IDC_DELIMITER, WM_SETFONT, (WPARAM)DlgCopypasteFont, MAKELPARAM(TRUE,0));
524 SendDlgItemMessage(IDC_DELIM_LIST, WM_SETFONT, (WPARAM)DlgCopypasteFont, MAKELPARAM(TRUE,0));
525 SendDlgItemMessage(IDC_PASTEDELAY_LABEL, WM_SETFONT, (WPARAM)DlgCopypasteFont, MAKELPARAM(TRUE,0));
526 SendDlgItemMessage(IDC_PASTEDELAY_EDIT, WM_SETFONT, (WPARAM)DlgCopypasteFont, MAKELPARAM(TRUE,0));
527 SendDlgItemMessage(IDC_PASTEDELAY_LABEL2, WM_SETFONT, (WPARAM)DlgCopypasteFont, MAKELPARAM(TRUE,0));
528 }
529 else {
530 DlgCopypasteFont = NULL;
531 }
532
533 GetDlgItemText(IDC_LINECOPY, uimsg, sizeof(uimsg));
534 get_lang_msg("DLG_TAB_COPYPASTE_CONTINUE", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
535 SetDlgItemText(IDC_LINECOPY, ts.UIMsg);
536 GetDlgItemText(IDC_DISABLE_PASTE_RBUTTON, uimsg, sizeof(uimsg));
537 get_lang_msg("DLG_TAB_COPYPASTE_MOUSEPASTE", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
538 SetDlgItemText(IDC_DISABLE_PASTE_RBUTTON, ts.UIMsg);
539 GetDlgItemText(IDC_CONFIRM_PASTE_RBUTTON, uimsg, sizeof(uimsg));
540 get_lang_msg("DLG_TAB_COPYPASTE_CONFIRMPASTE", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
541 SetDlgItemText(IDC_CONFIRM_PASTE_RBUTTON, ts.UIMsg);
542 GetDlgItemText(IDC_DISABLE_PASTE_MBUTTON, uimsg, sizeof(uimsg));
543 get_lang_msg("DLG_TAB_COPYPASTE_MOUSEPASTEM", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
544 SetDlgItemText(IDC_DISABLE_PASTE_MBUTTON, ts.UIMsg);
545 GetDlgItemText(IDC_SELECT_LBUTTON, uimsg, sizeof(uimsg));
546 get_lang_msg("DLG_TAB_COPYPASTE_SELECTLBUTTON", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
547 SetDlgItemText(IDC_SELECT_LBUTTON, ts.UIMsg);
548 GetDlgItemText(IDC_CONFIRM_CHANGE_PASTE, uimsg, sizeof(uimsg));
549 get_lang_msg("DLG_TAB_COPYPASTE_CONFIRM_CHANGE_PASTE", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
550 SetDlgItemText(IDC_CONFIRM_CHANGE_PASTE, ts.UIMsg);
551 GetDlgItemText(IDC_CONFIRM_STRING_FILE_LABEL, uimsg, sizeof(uimsg));
552 get_lang_msg("DLG_TAB_CONFIRM_STRING_FILE", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
553 SetDlgItemText(IDC_CONFIRM_STRING_FILE_LABEL, ts.UIMsg);
554 GetDlgItemText(IDC_DELIMITER, uimsg, sizeof(uimsg));
555 get_lang_msg("DLG_TAB_COPYPASTE_DELIMITER", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
556 SetDlgItemText(IDC_DELIMITER, ts.UIMsg);
557 GetDlgItemText(IDC_PASTEDELAY_LABEL, uimsg, sizeof(uimsg));
558 get_lang_msg("DLG_TAB_COPYPASTE_PASTEDELAY", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
559 SetDlgItemText(IDC_PASTEDELAY_LABEL, ts.UIMsg);
560 GetDlgItemText(IDC_PASTEDELAY_LABEL2, uimsg, sizeof(uimsg));
561 get_lang_msg("DLG_TAB_COPYPASTE_PASTEDELAY2", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
562 SetDlgItemText(IDC_PASTEDELAY_LABEL2, ts.UIMsg);
563
564 // (1)Enable continued-line copy
565 btn = (CButton *)GetDlgItem(IDC_LINECOPY);
566 btn->SetCheck(ts.EnableContinuedLineCopy);
567
568 // (2)DisablePasteMouseRButton
569 btn = (CButton *)GetDlgItem(IDC_DISABLE_PASTE_RBUTTON);
570 btn2 = (CButton *)GetDlgItem(IDC_CONFIRM_PASTE_RBUTTON);
571 btn->SetCheck(ts.DisablePasteMouseRButton);
572 if (ts.DisablePasteMouseRButton) {
573 btn2->EnableWindow(FALSE);
574 } else {
575 btn2->EnableWindow(TRUE);
576 }
577
578 // (3)ConfirmPasteMouseRButton
579 btn2->SetCheck(ts.ConfirmPasteMouseRButton);
580
581 // (4)DisablePasteMouseMButton
582 btn = (CButton *)GetDlgItem(IDC_DISABLE_PASTE_MBUTTON);
583 btn->SetCheck(ts.DisablePasteMouseMButton);
584
585 // (5)SelectOnlyByLButton
586 btn = (CButton *)GetDlgItem(IDC_SELECT_LBUTTON);
587 btn->SetCheck(ts.SelectOnlyByLButton);
588
589 // (6)ConfirmChangePaste
590 btn = (CButton *)GetDlgItem(IDC_CONFIRM_CHANGE_PASTE);
591 btn->SetCheck(ts.ConfirmChangePaste);
592
593 // ƒtƒ@ƒCƒ‹ƒpƒX
594 SetDlgItemText(IDC_CONFIRM_STRING_FILE, ts.ConfirmChangePasteStringFile);
595 edit = (CEdit *)GetDlgItem(IDC_CONFIRM_STRING_FILE);
596 btn = (CButton *)GetDlgItem(IDC_CONFIRM_STRING_FILE_PATH);
597 if (ts.ConfirmChangePaste) {
598 edit->EnableWindow(TRUE);
599 btn->EnableWindow(TRUE);
600 } else {
601 edit->EnableWindow(FALSE);
602 btn->EnableWindow(FALSE);
603 }
604
605 // (7)delimiter characters
606 SetDlgItemText(IDC_DELIM_LIST, ts.DelimList);
607
608 // (8)PasteDelayPerLine
609 _snprintf_s(buf, sizeof(buf), "%d", ts.PasteDelayPerLine);
610 SetDlgItemText(IDC_PASTEDELAY_EDIT, buf);
611
612 // ƒ_ƒCƒAƒ�ƒO‚ɃtƒH�[ƒJƒX‚ð“–‚Ä‚é
613 ::SetFocus(::GetDlgItem(GetSafeHwnd(), IDC_LINECOPY));
614
615 return FALSE;
616 }
617
618 BOOL CCopypastePropPageDlg::OnCommand(WPARAM wParam, LPARAM lParam)
619 {
620 CButton *btn, *btn2;
621 CEdit *edit;
622 char uimsg[MAX_UIMSG];
623
624 switch (wParam) {
625 case IDC_DISABLE_PASTE_RBUTTON | (BN_CLICKED << 16):
626 btn = (CButton *)GetDlgItem(IDC_DISABLE_PASTE_RBUTTON);
627 btn2 = (CButton *)GetDlgItem(IDC_CONFIRM_PASTE_RBUTTON);
628 if (btn->GetCheck()) {
629 btn2->EnableWindow(FALSE);
630 } else {
631 btn2->EnableWindow(TRUE);
632 }
633 return TRUE;
634
635 case IDC_CONFIRM_CHANGE_PASTE | (BN_CLICKED << 16):
636 btn2 = (CButton *)GetDlgItem(IDC_CONFIRM_CHANGE_PASTE);
637 btn = (CButton *)GetDlgItem(IDC_CONFIRM_STRING_FILE_PATH);
638 edit = (CEdit *)GetDlgItem(IDC_CONFIRM_STRING_FILE);
639 if (btn2->GetCheck()) {
640 edit->EnableWindow(TRUE);
641 btn->EnableWindow(TRUE);
642 } else {
643 edit->EnableWindow(FALSE);
644 btn->EnableWindow(FALSE);
645 }
646 return TRUE;
647
648 case IDC_CONFIRM_STRING_FILE_PATH | (BN_CLICKED << 16):
649 {
650 OPENFILENAME ofn;
651
652 ZeroMemory(&ofn, sizeof(ofn));
653 ofn.lStructSize = get_OPENFILENAME_SIZE();
654 ofn.hwndOwner = GetSafeHwnd();
655 get_lang_msg("FILEDLG_SELECT_CONFIRM_STRING_APP_FILTER", ts.UIMsg, sizeof(ts.UIMsg),
656 "txt(*.txt)\\0*.txt\\0all(*.*)\\0*.*\\0\\0", ts.UILanguageFile);
657 ofn.lpstrFilter = ts.UIMsg;
658 ofn.lpstrFile = ts.ConfirmChangePasteStringFile;
659 ofn.nMaxFile = sizeof(ts.ConfirmChangePasteStringFile);
660 get_lang_msg("FILEDLG_SELECT_CONFIRM_STRING_APP_TITLE", uimsg, sizeof(uimsg),
661 "Choose a file including strings for ConfirmChangePaste", ts.UILanguageFile);
662 ofn.lpstrTitle = uimsg;
663 ofn.Flags = OFN_FILEMUSTEXIST | OFN_PATHMUSTEXIST | OFN_FORCESHOWHIDDEN | OFN_HIDEREADONLY;
664 if (GetOpenFileName(&ofn) != 0) {
665 SetDlgItemText(IDC_CONFIRM_STRING_FILE, ts.ConfirmChangePasteStringFile);
666 }
667 }
668 return TRUE;
669 }
670
671 return CPropertyPage::OnCommand(wParam, lParam);
672 }
673
674 void CCopypastePropPageDlg::OnOK()
675 {
676 CButton *btn;
677 char buf[64];
678 int val;
679
680 // (1)
681 btn = (CButton *)GetDlgItem(IDC_LINECOPY);
682 ts.EnableContinuedLineCopy = btn->GetCheck();
683
684 // (2)
685 btn = (CButton *)GetDlgItem(IDC_DISABLE_PASTE_RBUTTON);
686 ts.DisablePasteMouseRButton = btn->GetCheck();
687
688 // (3)
689 btn = (CButton *)GetDlgItem(IDC_CONFIRM_PASTE_RBUTTON);
690 ts.ConfirmPasteMouseRButton = btn->GetCheck();
691
692 // (4)
693 btn = (CButton *)GetDlgItem(IDC_DISABLE_PASTE_MBUTTON);
694 ts.DisablePasteMouseMButton = btn->GetCheck();
695
696 // (5)
697 btn = (CButton *)GetDlgItem(IDC_SELECT_LBUTTON);
698 ts.SelectOnlyByLButton = btn->GetCheck();
699
700 // (6)IDC_CONFIRM_CHANGE_PASTE
701 btn = (CButton *)GetDlgItem(IDC_CONFIRM_CHANGE_PASTE);
702 ts.ConfirmChangePaste = btn->GetCheck();
703 GetDlgItemText(IDC_CONFIRM_STRING_FILE, ts.ConfirmChangePasteStringFile, sizeof(ts.ConfirmChangePasteStringFile));
704
705 // (7)
706 GetDlgItemText(IDC_DELIM_LIST, ts.DelimList, sizeof(ts.DelimList));
707
708 // (8)
709 GetDlgItemText(IDC_PASTEDELAY_EDIT, buf, sizeof(buf));
710 val = atoi(buf);
711 ts.PasteDelayPerLine = min(max(0, val), 5000);
712 }
713
714
715
716 // CVisualPropPageDlg ƒ_ƒCƒAƒ�ƒO
717
718 IMPLEMENT_DYNAMIC(CVisualPropPageDlg, CPropertyPage)
719
720 CVisualPropPageDlg::CVisualPropPageDlg()
721 : CPropertyPage(CVisualPropPageDlg::IDD)
722 {
723
724 }
725
726 CVisualPropPageDlg::~CVisualPropPageDlg()
727 {
728 if (DlgVisualFont != NULL) {
729 DeleteObject(DlgVisualFont);
730 }
731 }
732
733 BEGIN_MESSAGE_MAP(CVisualPropPageDlg, CPropertyPage)
734 END_MESSAGE_MAP()
735
736 // CVisualPropPageDlg ƒ�ƒbƒZ�[ƒW ƒnƒ“ƒhƒ‰
737
738 BOOL CVisualPropPageDlg::OnInitDialog()
739 {
740 char buf[MAXPATHLEN];
741 char uimsg[MAX_UIMSG];
742 CListBox *listbox;
743 CButton *btn;
744 CComboBox *cmb;
745 int i;
746
747 CPropertyPage::OnInitDialog();
748
749 font = (HFONT)SendMessage(WM_GETFONT, 0, 0);
750 GetObject(font, sizeof(LOGFONT), &logfont);
751 if (get_lang_font("DLG_TAHOMA_FONT", GetSafeHwnd(), &logfont, &DlgVisualFont, ts.UILanguageFile)) {
752 SendDlgItemMessage(IDC_ALPHABLEND, WM_SETFONT, (WPARAM)DlgVisualFont, MAKELPARAM(TRUE,0));
753 SendDlgItemMessage(IDC_ALPHA_BLEND, WM_SETFONT, (WPARAM)DlgVisualFont, MAKELPARAM(TRUE,0));
754 SendDlgItemMessage(IDC_ETERM_LOOKFEEL, WM_SETFONT, (WPARAM)DlgVisualFont, MAKELPARAM(TRUE,0));
755 SendDlgItemMessage(IDC_MOUSE, WM_SETFONT, (WPARAM)DlgVisualFont, MAKELPARAM(TRUE,0));
756 SendDlgItemMessage(IDC_MOUSE_CURSOR, WM_SETFONT, (WPARAM)DlgVisualFont, MAKELPARAM(TRUE,0));
757 SendDlgItemMessage(IDC_FONT_QUALITY_LABEL, WM_SETFONT, (WPARAM)DlgVisualFont, MAKELPARAM(TRUE,0));
758 SendDlgItemMessage(IDC_FONT_QUALITY, WM_SETFONT, (WPARAM)DlgVisualFont, MAKELPARAM(TRUE,0));
759 SendDlgItemMessage(IDC_ANSICOLOR, WM_SETFONT, (WPARAM)DlgVisualFont, MAKELPARAM(TRUE,0));
760 SendDlgItemMessage(IDC_ANSI_COLOR, WM_SETFONT, (WPARAM)DlgVisualFont, MAKELPARAM(TRUE,0));
761 SendDlgItemMessage(IDC_RED, WM_SETFONT, (WPARAM)DlgVisualFont, MAKELPARAM(TRUE,0));
762 SendDlgItemMessage(IDC_COLOR_RED, WM_SETFONT, (WPARAM)DlgVisualFont, MAKELPARAM(TRUE,0));
763 SendDlgItemMessage(IDC_GREEN, WM_SETFONT, (WPARAM)DlgVisualFont, MAKELPARAM(TRUE,0));
764 SendDlgItemMessage(IDC_COLOR_GREEN, WM_SETFONT, (WPARAM)DlgVisualFont, MAKELPARAM(TRUE,0));
765 SendDlgItemMessage(IDC_BLUE, WM_SETFONT, (WPARAM)DlgVisualFont, MAKELPARAM(TRUE,0));
766 SendDlgItemMessage(IDC_COLOR_BLUE, WM_SETFONT, (WPARAM)DlgVisualFont, MAKELPARAM(TRUE,0));
767 SendDlgItemMessage(IDC_SAMPLE_COLOR, WM_SETFONT, (WPARAM)DlgVisualFont, MAKELPARAM(TRUE,0));
768 SendDlgItemMessage(IDC_ENABLE_ATTR_COLOR_BOLD, WM_SETFONT, (WPARAM)DlgVisualFont, MAKELPARAM(TRUE,0));
769 SendDlgItemMessage(IDC_ENABLE_ATTR_COLOR_BLINK, WM_SETFONT, (WPARAM)DlgVisualFont, MAKELPARAM(TRUE,0));
770 SendDlgItemMessage(IDC_ENABLE_ATTR_COLOR_REVERSE, WM_SETFONT, (WPARAM)DlgVisualFont, MAKELPARAM(TRUE,0));
771 SendDlgItemMessage(IDC_ENABLE_URL_COLOR, WM_SETFONT, (WPARAM)DlgVisualFont, MAKELPARAM(TRUE,0));
772 SendDlgItemMessage(IDC_ENABLE_ANSI_COLOR, WM_SETFONT, (WPARAM)DlgVisualFont, MAKELPARAM(TRUE,0));
773 SendDlgItemMessage(IDC_URL_UNDERLINE, WM_SETFONT, (WPARAM)DlgVisualFont, MAKELPARAM(TRUE,0));
774 SendDlgItemMessage(IDC_BGIMG_CHECK, WM_SETFONT, (WPARAM)DlgVisualFont, MAKELPARAM(TRUE,0));
775 SendDlgItemMessage(IDC_BGIMG_EDIT, WM_SETFONT, (WPARAM)DlgVisualFont, MAKELPARAM(TRUE,0));
776 SendDlgItemMessage(IDC_BGIMG_BUTTON, WM_SETFONT, (WPARAM)DlgVisualFont, MAKELPARAM(TRUE,0));
777 SendDlgItemMessage(IDC_RESTART, WM_SETFONT, (WPARAM)DlgVisualFont, MAKELPARAM(TRUE,0));
778 }
779 else {
780 DlgVisualFont = NULL;
781 }
782
783 GetDlgItemText(IDC_ALPHABLEND, uimsg, sizeof(uimsg));
784 get_lang_msg("DLG_TAB_VISUAL_ALHPA", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
785 SetDlgItemText(IDC_ALPHABLEND, ts.UIMsg);
786 GetDlgItemText(IDC_ETERM_LOOKFEEL, uimsg, sizeof(uimsg));
787 get_lang_msg("DLG_TAB_VISUAL_ETERM", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
788 SetDlgItemText(IDC_ETERM_LOOKFEEL, ts.UIMsg);
789 GetDlgItemText(IDC_BGIMG_CHECK, uimsg, sizeof(uimsg));
790 get_lang_msg("DLG_TAB_VISUAL_BGIMG", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
791 SetDlgItemText(IDC_BGIMG_CHECK, ts.UIMsg);
792 GetDlgItemText(IDC_MOUSE, uimsg, sizeof(uimsg));
793 get_lang_msg("DLG_TAB_VISUAL_MOUSE", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
794 SetDlgItemText(IDC_MOUSE, ts.UIMsg);
795 GetDlgItemText(IDC_FONT_QUALITY_LABEL, uimsg, sizeof(uimsg));
796 get_lang_msg("DLG_TAB_VISUAL_FONT_QUALITY", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
797 SetDlgItemText(IDC_FONT_QUALITY_LABEL, ts.UIMsg);
798 GetDlgItemText(IDC_ANSICOLOR, uimsg, sizeof(uimsg));
799 get_lang_msg("DLG_TAB_VISUAL_ANSICOLOR", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
800 SetDlgItemText(IDC_ANSICOLOR, ts.UIMsg);
801 GetDlgItemText(IDC_RED, uimsg, sizeof(uimsg));
802 get_lang_msg("DLG_TAB_VISUAL_RED", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
803 SetDlgItemText(IDC_RED, ts.UIMsg);
804 GetDlgItemText(IDC_GREEN, uimsg, sizeof(uimsg));
805 get_lang_msg("DLG_TAB_VISUAL_GREEN", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
806 SetDlgItemText(IDC_GREEN, ts.UIMsg);
807 GetDlgItemText(IDC_BLUE, uimsg, sizeof(uimsg));
808 get_lang_msg("DLG_TAB_VISUAL_BLUE", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
809 SetDlgItemText(IDC_BLUE, ts.UIMsg);
810 GetDlgItemText(IDC_ENABLE_ATTR_COLOR_BOLD, uimsg, sizeof(uimsg));
811 get_lang_msg("DLG_TAB_VISUAL_BOLD", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
812 SetDlgItemText(IDC_ENABLE_ATTR_COLOR_BOLD, ts.UIMsg);
813 GetDlgItemText(IDC_ENABLE_ATTR_COLOR_BLINK, uimsg, sizeof(uimsg));
814 get_lang_msg("DLG_TAB_VISUAL_BLINK", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
815 SetDlgItemText(IDC_ENABLE_ATTR_COLOR_BLINK, ts.UIMsg);
816 GetDlgItemText(IDC_ENABLE_ATTR_COLOR_REVERSE, uimsg, sizeof(uimsg));
817 get_lang_msg("DLG_TAB_VISUAL_REVERSE", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
818 SetDlgItemText(IDC_ENABLE_ATTR_COLOR_REVERSE, ts.UIMsg);
819 GetDlgItemText(IDC_ENABLE_URL_COLOR, uimsg, sizeof(uimsg));
820 get_lang_msg("DLG_TAB_VISUAL_URL", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
821 SetDlgItemText(IDC_ENABLE_URL_COLOR, ts.UIMsg);
822 GetDlgItemText(IDC_ENABLE_ANSI_COLOR, uimsg, sizeof(uimsg));
823 get_lang_msg("DLG_TAB_VISUAL_ANSI", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
824 SetDlgItemText(IDC_ENABLE_ANSI_COLOR, ts.UIMsg);
825 GetDlgItemText(IDC_URL_UNDERLINE, uimsg, sizeof(uimsg));
826 get_lang_msg("DLG_TAB_VISUAL_URLUL", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
827 SetDlgItemText(IDC_URL_UNDERLINE, ts.UIMsg);
828 GetDlgItemText(IDC_RESTART, uimsg, sizeof(uimsg));
829 get_lang_msg("DLG_TAB_VISUAL_RESTART", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
830 SetDlgItemText(IDC_RESTART, ts.UIMsg);
831
832 get_lang_msg("DLG_TAB_VISUAL_FONT_QUALITY_DEFAULT", ts.UIMsg, sizeof(ts.UIMsg), "Default", ts.UILanguageFile);
833 SendDlgItemMessage(IDC_FONT_QUALITY, CB_ADDSTRING, 0, (LPARAM)ts.UIMsg);
834 get_lang_msg("DLG_TAB_VISUAL_FONT_QUALITY_NONANTIALIASED", ts.UIMsg, sizeof(ts.UIMsg), "Non-Antialiased", ts.UILanguageFile);
835 SendDlgItemMessage(IDC_FONT_QUALITY, CB_ADDSTRING, 0, (LPARAM)ts.UIMsg);
836 get_lang_msg("DLG_TAB_VISUAL_FONT_QUALITY_ANTIALIASED", ts.UIMsg, sizeof(ts.UIMsg), "Antialiased", ts.UILanguageFile);
837 SendDlgItemMessage(IDC_FONT_QUALITY, CB_ADDSTRING, 0, (LPARAM)ts.UIMsg);
838 get_lang_msg("DLG_TAB_VISUAL_FONT_QUALITY_CLEARTYPE", ts.UIMsg, sizeof(ts.UIMsg), "ClearType", ts.UILanguageFile);
839 SendDlgItemMessage(IDC_FONT_QUALITY, CB_ADDSTRING, 0, (LPARAM)ts.UIMsg);
840
841 // (1)AlphaBlend
842 _snprintf_s(buf, sizeof(buf), _TRUNCATE, "%d", ts.AlphaBlend);
843 SetDlgItemText(IDC_ALPHA_BLEND, buf);
844
845 // (2)[BG] BGEnable
846 btn = (CButton *)GetDlgItem(IDC_ETERM_LOOKFEEL);
847 btn->SetCheck(ts.EtermLookfeel.BGEnable);
848
849 // Eterm look-feel‚Ì”wŒi‰æ‘œŽw’è�B
850 SetDlgItemText(IDC_BGIMG_EDIT, ts.BGImageFilePath);
851 if (ts.EtermLookfeel.BGEnable) {
852 GetDlgItem(IDC_BGIMG_CHECK)->EnableWindow(TRUE);
853
854 btn = (CButton *)GetDlgItem(IDC_BGIMG_CHECK);
855 if (strcmp(ts.EtermLookfeel.BGThemeFile, BG_THEME_IMAGEFILE) == 0) {
856 btn->SetCheck(BST_CHECKED);
857 GetDlgItem(IDC_BGIMG_EDIT)->EnableWindow(TRUE);
858 GetDlgItem(IDC_BGIMG_BUTTON)->EnableWindow(TRUE);
859 } else {
860 btn->SetCheck(BST_UNCHECKED);
861 GetDlgItem(IDC_BGIMG_EDIT)->EnableWindow(FALSE);
862 GetDlgItem(IDC_BGIMG_BUTTON)->EnableWindow(FALSE);
863 }
864 } else {
865 GetDlgItem(IDC_BGIMG_CHECK)->EnableWindow(FALSE);
866 GetDlgItem(IDC_BGIMG_EDIT)->EnableWindow(FALSE);
867 GetDlgItem(IDC_BGIMG_BUTTON)->EnableWindow(FALSE);
868 }
869
870 // (3)Mouse cursor type
871 listbox = (CListBox *)GetDlgItem(IDC_MOUSE_CURSOR);
872 for (i = 0 ; MouseCursor[i].name ; i++) {
873 listbox->InsertString(i, MouseCursor[i].name);
874 }
875 listbox->SelectString(0, ts.MouseCursorName);
876
877 // (4)Font quality
878 cmb = (CComboBox *)GetDlgItem(IDC_FONT_QUALITY);
879 switch (ts.FontQuality) {
880 case DEFAULT_QUALITY:
881 cmb->SetCurSel(0);
882 break;
883 case NONANTIALIASED_QUALITY:
884 cmb->SetCurSel(1);
885 break;
886 case ANTIALIASED_QUALITY:
887 cmb->SetCurSel(2);
888 break;
889 default: // CLEARTYPE_QUALITY
890 cmb->SetCurSel(3);
891 break;
892 }
893
894 // (5)ANSI color
895 listbox = (CListBox *)GetDlgItem(IDC_ANSI_COLOR);
896 for (i = 0 ; i < 16 ; i++) {
897 _snprintf_s(buf, sizeof(buf), _TRUNCATE, "%d", i);
898 listbox->InsertString(i, buf);
899 }
900 SetupRGBbox(GetSafeHwnd(), 0);
901 #if 0
902 SendMessage(WM_CTLCOLORSTATIC,
903 (WPARAM)label_hdc,
904 (LPARAM)GetDlgItem(IDC_SAMPLE_COLOR));
905 #endif
906
907 // (6)Bold Attr Color
908 btn = (CButton *)GetDlgItem(IDC_ENABLE_ATTR_COLOR_BOLD);
909 btn->SetCheck((ts.ColorFlag&CF_BOLDCOLOR) != 0);
910
911 // (7)Blink Attr Color
912 btn = (CButton *)GetDlgItem(IDC_ENABLE_ATTR_COLOR_BLINK);
913 btn->SetCheck((ts.ColorFlag&CF_BLINKCOLOR) != 0);
914
915 // (8)Reverse Attr Color
916 btn = (CButton *)GetDlgItem(IDC_ENABLE_ATTR_COLOR_REVERSE);
917 btn->SetCheck((ts.ColorFlag&CF_REVERSECOLOR) != 0);
918
919 // (9)URL Color
920 btn = (CButton *)GetDlgItem(IDC_ENABLE_URL_COLOR);
921 btn->SetCheck((ts.ColorFlag&CF_URLCOLOR) != 0);
922
923 // (10)Color
924 btn = (CButton *)GetDlgItem(IDC_ENABLE_ANSI_COLOR);
925 btn->SetCheck((ts.ColorFlag&CF_ANSICOLOR) != 0);
926
927 // (11)URL Underline
928 btn = (CButton *)GetDlgItem(IDC_URL_UNDERLINE);
929 btn->SetCheck((ts.FontFlag&FF_URLUNDERLINE) != 0);
930
931 // ƒ_ƒCƒAƒ�ƒO‚ɃtƒH�[ƒJƒX‚ð“–‚Ä‚é
932 ::SetFocus(::GetDlgItem(GetSafeHwnd(), IDC_ALPHA_BLEND));
933
934 return FALSE;
935 }
936
937 BOOL CVisualPropPageDlg::OnCommand(WPARAM wParam, LPARAM lParam)
938 {
939 CListBox *listbox;
940 int sel;
941 char buf[MAXPATHLEN];
942 CButton *btn;
943
944 switch (wParam) {
945 case IDC_ETERM_LOOKFEEL:
946 // ƒ`ƒFƒbƒN‚³‚ꂽ‚ç Enable/Disable ‚ðƒgƒOƒ‹‚·‚é�B
947 btn = (CButton *)GetDlgItem(IDC_ETERM_LOOKFEEL);
948 if (btn->GetCheck()) {
949 GetDlgItem(IDC_BGIMG_CHECK)->EnableWindow(TRUE);
950 btn = (CButton *)GetDlgItem(IDC_BGIMG_CHECK);
951 if (btn->GetCheck()) {
952 GetDlgItem(IDC_BGIMG_EDIT)->EnableWindow(TRUE);
953 GetDlgItem(IDC_BGIMG_BUTTON)->EnableWindow(TRUE);
954 } else {
955 GetDlgItem(IDC_BGIMG_EDIT)->EnableWindow(FALSE);
956 GetDlgItem(IDC_BGIMG_BUTTON)->EnableWindow(FALSE);
957 }
958 } else {
959 GetDlgItem(IDC_BGIMG_CHECK)->EnableWindow(FALSE);
960 GetDlgItem(IDC_BGIMG_EDIT)->EnableWindow(FALSE);
961 GetDlgItem(IDC_BGIMG_BUTTON)->EnableWindow(FALSE);
962
963 // –³Œø‰»‚³‚ꂽ‚ç�ABGThemeFile ‚ðŒ³‚É–ß‚·�B
964 strncpy_s(ts.EtermLookfeel.BGThemeFile, BG_THEME_IMAGEFILE_DEFAULT, sizeof(ts.EtermLookfeel.BGThemeFile));
965 // ”wŒi‰æ‘œ‚à–³Œø‰»‚·‚é�B
966 SetDlgItemText(IDC_BGIMG_EDIT, "");
967 }
968 return TRUE;
969
970 case IDC_BGIMG_CHECK:
971 btn = (CButton *)GetDlgItem(IDC_BGIMG_CHECK);
972 if (btn->GetCheck()) {
973 GetDlgItem(IDC_BGIMG_EDIT)->EnableWindow(TRUE);
974 GetDlgItem(IDC_BGIMG_BUTTON)->EnableWindow(TRUE);
975
976 strncpy_s(ts.EtermLookfeel.BGThemeFile, BG_THEME_IMAGEFILE, sizeof(ts.EtermLookfeel.BGThemeFile));
977 } else {
978 GetDlgItem(IDC_BGIMG_EDIT)->EnableWindow(FALSE);
979 GetDlgItem(IDC_BGIMG_BUTTON)->EnableWindow(FALSE);
980
981 // –³Œø‰»‚³‚ꂽ‚ç�ABGThemeFile ‚ðŒ³‚É–ß‚·�B
982 strncpy_s(ts.EtermLookfeel.BGThemeFile, BG_THEME_IMAGEFILE_DEFAULT, sizeof(ts.EtermLookfeel.BGThemeFile));
983 // ”wŒi‰æ‘œ‚à–³Œø‰»‚·‚é�B
984 SetDlgItemText(IDC_BGIMG_EDIT, "");
985 }
986 return TRUE;
987
988 case IDC_BGIMG_BUTTON | (BN_CLICKED << 16):
989 // ”wŒi‰æ‘œ‚ðƒ_ƒCƒAƒ�ƒO‚ÅŽw’è‚·‚é�B
990 {
991 CString filter("Image Files(*.jpg;*.jpeg;*.bmp)|*.jpg;*.jpeg;*.bmp|All Files(*.*)|*.*||");
992 CFileDialog selDlg(TRUE, NULL, NULL, OFN_HIDEREADONLY, filter);
993 if (selDlg.DoModal() == IDOK) {
994 // ”wŒi‰æ‘œŽw’肪ˆÓ�}“I‚É�s‚í‚ꂽ‚ç�ABGThemeFile ‚ðŒÅ’艻‚·‚é�B
995 SetDlgItemText(IDC_BGIMG_EDIT, selDlg.GetPathName());
996 }
997 }
998 return TRUE;
999
1000 case IDC_ANSI_COLOR | (LBN_SELCHANGE << 16):
1001 listbox = (CListBox *)GetDlgItem(IDC_ANSI_COLOR);
1002 sel = listbox->GetCurSel();
1003 if (sel != -1) {
1004 SetupRGBbox(GetSafeHwnd(), sel);
1005 #if 0
1006 SendMessage(WM_CTLCOLORSTATIC,
1007 (WPARAM)label_hdc,
1008 (LPARAM)GetDlgItem(IDC_SAMPLE_COLOR));
1009 #endif
1010 }
1011 return TRUE;
1012
1013 case IDC_COLOR_RED | (EN_KILLFOCUS << 16):
1014 case IDC_COLOR_GREEN | (EN_KILLFOCUS << 16):
1015 case IDC_COLOR_BLUE | (EN_KILLFOCUS << 16):
1016 {
1017 BYTE r, g, b;
1018
1019 listbox = (CListBox *)GetDlgItem(IDC_ANSI_COLOR);
1020 sel = listbox->GetCurSel();
1021 if (sel < 0 && sel > sizeof(ts.ANSIColor)-1) {
1022 return TRUE;
1023 }
1024
1025 GetDlgItemText(IDC_COLOR_RED, buf, sizeof(buf));
1026 r = atoi(buf);
1027
1028 GetDlgItemText(IDC_COLOR_GREEN, buf, sizeof(buf));
1029 g = atoi(buf);
1030
1031 GetDlgItemText(IDC_COLOR_BLUE, buf, sizeof(buf));
1032 b = atoi(buf);
1033
1034 ts.ANSIColor[sel] = RGB(r, g, b);
1035
1036 // 255‚ð’´‚¦‚½RGB’l‚Í•â�³‚³‚ê‚é‚Ì‚Å�A‚»‚ê‚ðEdit‚É•\ަ‚·‚é (2007.2.18 maya)
1037 SetupRGBbox(GetSafeHwnd(), sel);
1038 #if 0
1039 SendMessage(WM_CTLCOLORSTATIC,
1040 (WPARAM)label_hdc,
1041 (LPARAM)GetDlgItem(IDC_SAMPLE_COLOR));
1042 #endif
1043 }
1044
1045 return TRUE;
1046 #if 0
1047 case WM_CTLCOLORSTATIC:
1048 {
1049 HDC hDC = (HDC)wp;
1050 HWND hWnd = (HWND)lp;
1051
1052 //if (label_hdc == NULL) {
1053 hDC = GetWindowDC(GetDlgItem(hDlgWnd, IDC_SAMPLE_COLOR));
1054 // label_hdc = hDC;
1055 //}
1056
1057 if ( hWnd == GetDlgItem(hDlgWnd, IDC_SAMPLE_COLOR) ) {
1058 BYTE r, g, b;
1059
1060 hWnd = GetDlgItem(hDlgWnd, IDC_COLOR_RED);
1061 SendMessage(hWnd, WM_GETTEXT , sizeof(buf), (LPARAM)buf);
1062 r = atoi(buf);
1063
1064 hWnd = GetDlgItem(hDlgWnd, IDC_COLOR_GREEN);
1065 SendMessage(hWnd, WM_GETTEXT , sizeof(buf), (LPARAM)buf);
1066 g = atoi(buf);
1067
1068 hWnd = GetDlgItem(hDlgWnd, IDC_COLOR_BLUE);
1069 SendMessage(hWnd, WM_GETTEXT , sizeof(buf), (LPARAM)buf);
1070 b = atoi(buf);
1071
1072 OutputDebugPrintf("%06x\n", RGB(r, g, b));
1073
1074 SetBkMode(hDC, TRANSPARENT);
1075 SetTextColor(hDC, RGB(r, g, b) );
1076 ReleaseDC(hDlgWnd, hDC);
1077
1078 return (BOOL)(HBRUSH)GetStockObject(NULL_BRUSH);
1079 }
1080 return FALSE;
1081 }
1082 break ;
1083 #endif
1084 }
1085
1086 return CPropertyPage::OnCommand(wParam, lParam);
1087 }
1088
1089 void CVisualPropPageDlg::OnOK()
1090 {
1091 CListBox *listbox;
1092 CButton *btn;
1093 CComboBox *cmb;
1094 int sel;
1095 int beforeAlphaBlend;
1096 char buf[MAXPATHLEN];
1097 COLORREF TmpColor;
1098 int flag_changed = 0;
1099
1100 // (1)
1101 beforeAlphaBlend = ts.AlphaBlend;
1102 GetDlgItemText(IDC_ALPHA_BLEND, buf, sizeof(buf));
1103 if (isdigit(buf[0])) {
1104 ts.AlphaBlend = atoi(buf);
1105 ts.AlphaBlend = max(0, ts.AlphaBlend);
1106 ts.AlphaBlend = min(255, ts.AlphaBlend);
1107 }
1108
1109 // (2)
1110 // ƒOƒ��[ƒoƒ‹•Ï�” BGEnable ‚ð’¼�Ú�‘‚«Š·‚¦‚邯�Aƒvƒ�ƒOƒ‰ƒ€‚ª—Ž‚¿‚邱‚Æ‚ª
1111 // ‚ ‚é‚̂ŃRƒs�[‚ð�C�³‚·‚é‚݂̂Ƃ·‚é�B(2005.4.24 yutaka)
1112 btn = (CButton *)GetDlgItem(IDC_ETERM_LOOKFEEL);
1113 if (ts.EtermLookfeel.BGEnable != btn->GetCheck()) {
1114 flag_changed = 1;
1115 ts.EtermLookfeel.BGEnable = btn->GetCheck();
1116 }
1117
1118 if (ts.EtermLookfeel.BGEnable) {
1119 GetDlgItemText(IDC_BGIMG_EDIT, ts.BGImageFilePath, sizeof(ts.BGImageFilePath));
1120 } else {
1121 strncpy_s(ts.BGImageFilePath, sizeof(ts.BGImageFilePath), "%SystemRoot%\\Web\\Wallpaper\\*.bmp", _TRUNCATE);
1122 }
1123
1124 // (3)
1125 listbox = (CListBox *)GetDlgItem(IDC_MOUSE_CURSOR);
1126 sel = listbox->GetCurSel();
1127 if (sel >= 0 && sel < MOUSE_CURSOR_MAX) {
1128 strncpy_s(ts.MouseCursorName, sizeof(ts.MouseCursorName), MouseCursor[sel].name, _TRUNCATE);
1129 }
1130
1131 // (4)Font quality
1132 cmb = (CComboBox *)GetDlgItem(IDC_FONT_QUALITY);
1133 switch (cmb->GetCurSel()) {
1134 case 0:
1135 ts.FontQuality = DEFAULT_QUALITY;
1136 break;
1137 case 1:
1138 ts.FontQuality = NONANTIALIASED_QUALITY;
1139 break;
1140 case 2:
1141 ts.FontQuality = ANTIALIASED_QUALITY;
1142 break;
1143 default: // 3
1144 ts.FontQuality = CLEARTYPE_QUALITY;
1145 break;
1146 }
1147
1148 // (6) Attr Bold Color
1149 btn = (CButton *)GetDlgItem(IDC_ENABLE_ATTR_COLOR_BOLD);
1150 if (((ts.ColorFlag & CF_BOLDCOLOR) != 0) != btn->GetCheck()) {
1151 ts.ColorFlag ^= CF_BOLDCOLOR;
1152 }
1153
1154 // (7) Attr Blink Color
1155 btn = (CButton *)GetDlgItem(IDC_ENABLE_ATTR_COLOR_BLINK);
1156 if (((ts.ColorFlag & CF_BLINKCOLOR) != 0) != btn->GetCheck()) {
1157 ts.ColorFlag ^= CF_BLINKCOLOR;
1158 }
1159
1160 // (8) Attr Reverse Color
1161 btn = (CButton *)GetDlgItem(IDC_ENABLE_ATTR_COLOR_REVERSE);
1162 if (ts.ColorFlag & CF_REVERSEVIDEO) { // Reverse Videoƒ‚�[ƒh(DECSCNM)Žž‚Í�ˆ—�‚ð•Ï‚¦‚é
1163 if (ts.ColorFlag & CF_REVERSECOLOR) {
1164 if (!btn->GetCheck()) {
1165 TmpColor = ts.VTColor[0];
1166 ts.VTColor[0] = ts.VTReverseColor[1];
1167 ts.VTReverseColor[1] = ts.VTColor[1];
1168 ts.VTColor[1] = ts.VTReverseColor[0];
1169 ts.VTReverseColor[0] = TmpColor;
1170 ts.ColorFlag ^= CF_REVERSECOLOR;
1171 }
1172 }
1173 else if (btn->GetCheck()) {
1174 TmpColor = ts.VTColor[0];
1175 ts.VTColor[0] = ts.VTReverseColor[0];
1176 ts.VTReverseColor[0] = ts.VTColor[1];
1177 ts.VTColor[1] = ts.VTReverseColor[1];
1178 ts.VTReverseColor[1] = TmpColor;
1179 ts.ColorFlag ^= CF_REVERSECOLOR;
1180 }
1181 }
1182 else if (((ts.ColorFlag & CF_REVERSECOLOR) != 0) != btn->GetCheck()) {
1183 ts.ColorFlag ^= CF_REVERSECOLOR;
1184 }
1185
1186 // (9) URL Color
1187 btn = (CButton *)GetDlgItem(IDC_ENABLE_URL_COLOR);
1188 if (((ts.ColorFlag & CF_URLCOLOR) != 0) != btn->GetCheck()) {
1189 ts.ColorFlag ^= CF_URLCOLOR;
1190 }
1191
1192 // (10) Color
1193 btn = (CButton *)GetDlgItem(IDC_ENABLE_ANSI_COLOR);
1194 if (((ts.ColorFlag & CF_ANSICOLOR) != 0) != btn->GetCheck()) {
1195 ts.ColorFlag ^= CF_ANSICOLOR;
1196 }
1197
1198 // (11) URL Underline
1199 btn = (CButton *)GetDlgItem(IDC_URL_UNDERLINE);
1200 if (((ts.FontFlag & FF_URLUNDERLINE) != 0) != btn->GetCheck()) {
1201 ts.FontFlag ^= FF_URLUNDERLINE;
1202 }
1203
1204 // 2006/03/11 by 337 : Alpha’l‚à‘¦Žž•Ï�X
1205 // Layered‘‹‚ɂȂÁ‚Ä‚¢‚È‚¢�ê�‡‚ÍŒø‰Ê‚ª–³‚¢
1206 if (ts.EtermLookfeel.BGUseAlphaBlendAPI) {
1207 // ‹N“®Žž‚É”¼“§–¾ƒŒƒCƒ„‚É‚µ‚Ä‚¢‚È‚¢�ê�‡‚Å‚à�A‘¦�À‚É”¼“§–¾‚Æ‚È‚é‚æ‚¤‚É‚·‚é�B(2006.4.1 yutaka)
1208 //MySetLayeredWindowAttributes(HVTWin, 0, (ts.AlphaBlend > 255) ? 255: ts.AlphaBlend, LWA_ALPHA);
1209 // ’l‚ª•Ï�X‚³‚ꂽ‚Æ‚«‚Ì‚Ý�Ý’è‚𔽉f‚·‚é�B(2007.10.19 maya)
1210 if (ts.AlphaBlend != beforeAlphaBlend) {
1211 SetWindowStyle(&ts);
1212 }
1213 }
1214
1215 if (flag_changed) {
1216 // re-launch
1217 // RestartTeraTerm(GetSafeHwnd(), &ts);
1218 }
1219 }
1220
1221
1222
1223 // CLogPropPageDlg ƒ_ƒCƒAƒ�ƒO
1224
1225 IMPLEMENT_DYNAMIC(CLogPropPageDlg, CPropertyPage)
1226
1227 CLogPropPageDlg::CLogPropPageDlg()
1228 : CPropertyPage(CLogPropPageDlg::IDD)
1229 {
1230
1231 }
1232
1233 CLogPropPageDlg::~CLogPropPageDlg()
1234 {
1235 if (DlgLogFont != NULL) {
1236 DeleteObject(DlgLogFont);
1237 }
1238 }
1239
1240 BEGIN_MESSAGE_MAP(CLogPropPageDlg, CPropertyPage)
1241 END_MESSAGE_MAP()
1242
1243 // CLogPropPageDlg ƒ�ƒbƒZ�[ƒW ƒnƒ“ƒhƒ‰
1244
1245 #define LOG_ROTATE_SIZETYPE_NUM 3
1246 static char *LogRotateSizeType[] = {
1247 "Byte", "KB", "MB"
1248 };
1249
1250 static char *GetLogRotateSizeType(int val)
1251 {
1252 if (val >= LOG_ROTATE_SIZETYPE_NUM)
1253 val = 0;
1254
1255 return LogRotateSizeType[val];
1256 }
1257
1258 BOOL CLogPropPageDlg::OnInitDialog()
1259 {
1260 char uimsg[MAX_UIMSG];
1261 CButton *btn;
1262 CComboBox *combo;
1263 int i;
1264
1265 CPropertyPage::OnInitDialog();
1266
1267 font = (HFONT)SendMessage(WM_GETFONT, 0, 0);
1268 GetObject(font, sizeof(LOGFONT), &logfont);
1269 if (get_lang_font("DLG_TAHOMA_FONT", GetSafeHwnd(), &logfont, &DlgLogFont, ts.UILanguageFile)) {
1270 SendDlgItemMessage(IDC_VIEWLOG_LABEL, WM_SETFONT, (WPARAM)DlgLogFont, MAKELPARAM(TRUE,0));
1271 SendDlgItemMessage(IDC_VIEWLOG_EDITOR, WM_SETFONT, (WPARAM)DlgLogFont, MAKELPARAM(TRUE,0));
1272 SendDlgItemMessage(IDC_VIEWLOG_PATH, WM_SETFONT, (WPARAM)DlgLogFont, MAKELPARAM(TRUE,0));
1273 SendDlgItemMessage(IDC_DEFAULTNAME_LABEL, WM_SETFONT, (WPARAM)DlgLogFont, MAKELPARAM(TRUE,0));
1274 SendDlgItemMessage(IDC_DEFAULTNAME_EDITOR, WM_SETFONT, (WPARAM)DlgLogFont, MAKELPARAM(TRUE,0));
1275 SendDlgItemMessage(IDC_DEFAULTPATH_LABEL, WM_SETFONT, (WPARAM)DlgLogFont, MAKELPARAM(TRUE,0));
1276 SendDlgItemMessage(IDC_DEFAULTPATH_EDITOR, WM_SETFONT, (WPARAM)DlgLogFont, MAKELPARAM(TRUE,0));
1277 SendDlgItemMessage(IDC_DEFAULTPATH_PUSH, WM_SETFONT, (WPARAM)DlgLogFont, MAKELPARAM(TRUE,0));
1278 SendDlgItemMessage(IDC_AUTOSTART, WM_SETFONT, (WPARAM)DlgLogFont, MAKELPARAM(TRUE,0));
1279
1280 // Log rotate
1281 SendDlgItemMessage(IDC_LOG_ROTATE, WM_SETFONT, (WPARAM)DlgLogFont, MAKELPARAM(TRUE,0));
1282 SendDlgItemMessage(IDC_ROTATE_SIZE_TEXT, WM_SETFONT, (WPARAM)DlgLogFont, MAKELPARAM(TRUE,0));
1283 SendDlgItemMessage(IDC_ROTATE_SIZE, WM_SETFONT, (WPARAM)DlgLogFont, MAKELPARAM(TRUE,0));
1284 SendDlgItemMessage(IDC_ROTATE_SIZE_TYPE, WM_SETFONT, (WPARAM)DlgLogFont, MAKELPARAM(TRUE,0));
1285 SendDlgItemMessage(IDC_ROTATE_STEP_TEXT, WM_SETFONT, (WPARAM)DlgLogFont, MAKELPARAM(TRUE,0));
1286 SendDlgItemMessage(IDC_ROTATE_STEP, WM_SETFONT, (WPARAM)DlgLogFont, MAKELPARAM(TRUE,0));
1287 }
1288 else {
1289 DlgLogFont = NULL;
1290 }
1291
1292 GetDlgItemText(IDC_VIEWLOG_LABEL, uimsg, sizeof(uimsg));
1293 get_lang_msg("DLG_TAB_LOG_EDITOR", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
1294 SetDlgItemText(IDC_VIEWLOG_LABEL, ts.UIMsg);
1295 GetDlgItemText(IDC_DEFAULTNAME_LABEL, uimsg, sizeof(uimsg));
1296 get_lang_msg("DLG_TAB_LOG_FILENAME", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
1297 SetDlgItemText(IDC_DEFAULTNAME_LABEL, ts.UIMsg);
1298 GetDlgItemText(IDC_DEFAULTPATH_LABEL, uimsg, sizeof(uimsg));
1299 get_lang_msg("DLG_TAB_LOG_FILEPATH", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
1300 SetDlgItemText(IDC_DEFAULTPATH_LABEL, ts.UIMsg);
1301 GetDlgItemText(IDC_AUTOSTART, uimsg, sizeof(uimsg));
1302 get_lang_msg("DLG_TAB_LOG_AUTOSTART", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
1303 SetDlgItemText(IDC_AUTOSTART, ts.UIMsg);
1304 // Log rotate
1305 GetDlgItemText(IDC_LOG_ROTATE, uimsg, sizeof(uimsg));
1306 get_lang_msg("DLG_TAB_LOG_ROTATE", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
1307 SetDlgItemText(IDC_LOG_ROTATE, ts.UIMsg);
1308 GetDlgItemText(IDC_ROTATE_SIZE_TEXT, uimsg, sizeof(uimsg));
1309 get_lang_msg("DLG_TAB_LOG_ROTATE_SIZE_TEXT", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
1310 SetDlgItemText(IDC_ROTATE_SIZE_TEXT, ts.UIMsg);
1311 GetDlgItemText(IDC_ROTATE_STEP_TEXT, uimsg, sizeof(uimsg));
1312 get_lang_msg("IDC_ROTATE_STEP_TEXT", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
1313 SetDlgItemText(IDC_ROTATE_STEP_TEXT, ts.UIMsg);
1314
1315
1316 // Viewlog Editor path (2005.1.29 yutaka)
1317 SetDlgItemText(IDC_VIEWLOG_EDITOR, ts.ViewlogEditor);
1318
1319 // Log Default File Name (2006.8.28 maya)
1320 SetDlgItemText(IDC_DEFAULTNAME_EDITOR, ts.LogDefaultName);
1321
1322 // Log Default File Path (2007.5.30 maya)
1323 SetDlgItemText(IDC_DEFAULTPATH_EDITOR, ts.LogDefaultPath);
1324
1325 /* Auto start logging (2007.5.31 maya) */
1326 btn = (CButton *)GetDlgItem(IDC_AUTOSTART);
1327 btn->SetCheck(ts.LogAutoStart);
1328
1329 // Log rotate
1330 btn = (CButton *)GetDlgItem(IDC_LOG_ROTATE);
1331 btn->SetCheck(ts.LogRotate != ROTATE_NONE);
1332
1333 combo = (CComboBox *)GetDlgItem(IDC_ROTATE_SIZE_TYPE);
1334 for (i = 0 ; i < LOG_ROTATE_SIZETYPE_NUM ; i++) {
1335 combo->AddString(LogRotateSizeType[i]);
1336 }
1337
1338 SetDlgItemInt(IDC_ROTATE_SIZE, ts.LogRotateSize, FALSE);
1339 combo->SelectString(-1, GetLogRotateSizeType(ts.LogRotateSizeType));
1340 SetDlgItemInt(IDC_ROTATE_STEP, ts.LogRotateStep, FALSE);
1341 if (ts.LogRotate == ROTATE_NONE) {
1342 GetDlgItem(IDC_ROTATE_SIZE_TEXT)->EnableWindow(FALSE);
1343 GetDlgItem(IDC_ROTATE_SIZE)->EnableWindow(FALSE);
1344 GetDlgItem(IDC_ROTATE_SIZE_TYPE)->EnableWindow(FALSE);
1345 GetDlgItem(IDC_ROTATE_STEP_TEXT)->EnableWindow(FALSE);
1346 GetDlgItem(IDC_ROTATE_STEP)->EnableWindow(FALSE);
1347 } else {
1348 GetDlgItem(IDC_ROTATE_SIZE_TEXT)->EnableWindow(TRUE);
1349 GetDlgItem(IDC_ROTATE_SIZE)->EnableWindow(TRUE);
1350 GetDlgItem(IDC_ROTATE_SIZE_TYPE)->EnableWindow(TRUE);
1351 GetDlgItem(IDC_ROTATE_STEP_TEXT)->EnableWindow(TRUE);
1352 GetDlgItem(IDC_ROTATE_STEP)->EnableWindow(TRUE);
1353 }
1354
1355
1356 // ƒ_ƒCƒAƒ�ƒO‚ɃtƒH�[ƒJƒX‚ð“–‚Ä‚é
1357 ::SetFocus(::GetDlgItem(GetSafeHwnd(), IDC_VIEWLOG_EDITOR));
1358
1359 return FALSE;
1360 }
1361
1362 BOOL CLogPropPageDlg::OnCommand(WPARAM wParam, LPARAM lParam)
1363 {
1364 char uimsg[MAX_UIMSG];
1365
1366 switch (wParam) {
1367 case IDC_VIEWLOG_PATH | (BN_CLICKED << 16):
1368 {
1369 OPENFILENAME ofn;
1370
1371 ZeroMemory(&ofn, sizeof(ofn));
1372 ofn.lStructSize = get_OPENFILENAME_SIZE();
1373 ofn.hwndOwner = GetSafeHwnd();
1374 get_lang_msg("FILEDLG_SELECT_LOGVIEW_APP_FILTER", ts.UIMsg, sizeof(ts.UIMsg),
1375 "exe(*.exe)\\0*.exe\\0all(*.*)\\0*.*\\0\\0", ts.UILanguageFile);
1376 ofn.lpstrFilter = ts.UIMsg;
1377 ofn.lpstrFile = ts.ViewlogEditor;
1378 ofn.nMaxFile = sizeof(ts.ViewlogEditor);
1379 get_lang_msg("FILEDLG_SELECT_LOGVIEW_APP_TITLE", uimsg, sizeof(uimsg),
1380 "Choose a executing file with launching logging file", ts.UILanguageFile);
1381 ofn.lpstrTitle = uimsg;
1382 ofn.Flags = OFN_FILEMUSTEXIST | OFN_PATHMUSTEXIST | OFN_FORCESHOWHIDDEN | OFN_HIDEREADONLY;
1383 if (GetOpenFileName(&ofn) != 0) {
1384 SetDlgItemText(IDC_VIEWLOG_EDITOR, ts.ViewlogEditor);
1385 }
1386 }
1387 return TRUE;
1388
1389 case IDC_DEFAULTPATH_PUSH | (BN_CLICKED << 16):
1390 // ƒ�ƒOƒfƒBƒŒƒNƒgƒŠ‚Ì‘I‘ðƒ_ƒCƒAƒ�ƒO
1391 get_lang_msg("FILEDLG_SELECT_LOGDIR_TITLE", ts.UIMsg, sizeof(ts.UIMsg),
1392 "Select log folder", ts.UILanguageFile);
1393 doSelectFolder(GetSafeHwnd(), ts.LogDefaultPath, sizeof(ts.LogDefaultPath),
1394 ts.UIMsg);
1395 SetDlgItemText(IDC_DEFAULTPATH_EDITOR, ts.LogDefaultPath);
1396
1397 return TRUE;
1398
1399 case IDC_LOG_ROTATE | (BN_CLICKED << 16):
1400 {
1401 CButton *btn;
1402 btn = (CButton *)GetDlgItem(IDC_LOG_ROTATE);
1403 if (btn->GetCheck()) {
1404 GetDlgItem(IDC_ROTATE_SIZE_TEXT)->EnableWindow(TRUE);
1405 GetDlgItem(IDC_ROTATE_SIZE)->EnableWindow(TRUE);
1406 GetDlgItem(IDC_ROTATE_SIZE_TYPE)->EnableWindow(TRUE);
1407 GetDlgItem(IDC_ROTATE_STEP_TEXT)->EnableWindow(TRUE);
1408 GetDlgItem(IDC_ROTATE_STEP)->EnableWindow(TRUE);
1409 } else {
1410 GetDlgItem(IDC_ROTATE_SIZE_TEXT)->EnableWindow(FALSE);
1411 GetDlgItem(IDC_ROTATE_SIZE)->EnableWindow(FALSE);
1412 GetDlgItem(IDC_ROTATE_SIZE_TYPE)->EnableWindow(FALSE);
1413 GetDlgItem(IDC_ROTATE_STEP_TEXT)->EnableWindow(FALSE);
1414 GetDlgItem(IDC_ROTATE_STEP)->EnableWindow(FALSE);
1415 }
1416
1417 }
1418 return TRUE;
1419 }
1420
1421 return CPropertyPage::OnCommand(wParam, lParam);
1422 }
1423
1424 void CLogPropPageDlg::OnOK()
1425 {
1426 char buf[80], buf2[80];
1427 time_t time_local;
1428 struct tm *tm_local;
1429 char uimsg[MAX_UIMSG];
1430 CButton *btn;
1431 CString str;
1432 int i;
1433
1434 // Viewlog Editor path (2005.1.29 yutaka)
1435 GetDlgItemText(IDC_VIEWLOG_EDITOR, ts.ViewlogEditor, sizeof(ts.ViewlogEditor));
1436
1437 // Log Default File Name (2006.8.28 maya)
1438 GetDlgItemText(IDC_DEFAULTNAME_EDITOR, buf, sizeof(buf));
1439 if (isInvalidStrftimeChar(buf)) {
1440 get_lang_msg("MSG_ERROR", uimsg, sizeof(uimsg), "ERROR", ts.UILanguageFile);
1441 get_lang_msg("MSG_LOGFILE_INVALID_CHAR_ERROR", ts.UIMsg, sizeof(ts.UIMsg),
1442 "Invalid character is included in log file name.", ts.UILanguageFile);
1443 MessageBox(ts.UIMsg, uimsg, MB_ICONEXCLAMATION);
1444 return;
1445 }
1446 // Œ»�ÝŽž��‚ðŽæ“¾
1447 time(&time_local);
1448 tm_local = localtime(&time_local);
1449 // Žž��•¶Žš—ñ‚ɕϊ·
1450 if (strlen(buf) != 0 && strftime(buf2, sizeof(buf2), buf, tm_local) == 0) {
1451 get_lang_msg("MSG_ERROR", uimsg, sizeof(uimsg), "ERROR", ts.UILanguageFile);
1452 get_lang_msg("MSG_LOGFILE_TOOLONG_ERROR", ts.UIMsg, sizeof(ts.UIMsg),
1453 "The log file name is too long.", ts.UILanguageFile);
1454 MessageBox(ts.UIMsg, uimsg, MB_ICONEXCLAMATION);
1455 return;
1456 }
1457 if (isInvalidFileNameChar(buf2)) {
1458 get_lang_msg("MSG_ERROR", uimsg, sizeof(uimsg), "ERROR", ts.UILanguageFile);
1459 get_lang_msg("MSG_LOGFILE_INVALID_CHAR_ERROR", ts.UIMsg, sizeof(ts.UIMsg),
1460 "Invalid character is included in log file name.", ts.UILanguageFile);
1461 MessageBox(ts.UIMsg, uimsg, MB_ICONEXCLAMATION);
1462 return;
1463 }
1464 strncpy_s(ts.LogDefaultName, sizeof(ts.LogDefaultName), buf, _TRUNCATE);
1465
1466 // Log Default File Path (2007.5.30 maya)
1467 GetDlgItemText(IDC_DEFAULTPATH_EDITOR, ts.LogDefaultPath, sizeof(ts.LogDefaultPath));
1468
1469 /* Auto start logging (2007.5.31 maya) */
1470 btn = (CButton *)GetDlgItem(IDC_AUTOSTART);
1471 ts.LogAutoStart = btn->GetCheck();
1472
1473 /* Log Rotate */
1474 btn = (CButton *)GetDlgItem(IDC_LOG_ROTATE);
1475 if (btn->GetCheck()) { /* on */
1476 ts.LogRotate = ROTATE_SIZE;
1477
1478 ((CComboBox*)GetDlgItem(IDC_ROTATE_SIZE_TYPE))->GetWindowText(str);
1479 for (i = 0 ; i < LOG_ROTATE_SIZETYPE_NUM ; i++) {
1480 if (strcmp(str, LogRotateSizeType[i]) == 0)
1481 break;
1482 }
1483 if (i >= LOG_ROTATE_SIZETYPE_NUM)
1484 i = 0;
1485 ts.LogRotateSizeType = i;
1486
1487 ts.LogRotateSize = GetDlgItemInt(IDC_ROTATE_SIZE);
1488 for (i = 0 ; i < ts.LogRotateSizeType ; i++)
1489 ts.LogRotateSize *= 1024;
1490
1491 ts.LogRotateStep = GetDlgItemInt(IDC_ROTATE_STEP);
1492
1493 } else { /* off */
1494 ts.LogRotate = ROTATE_NONE;
1495 /* Žc‚è‚̃�ƒ“ƒo�[‚͈Ó�}“I‚É�Ý’è‚ðŽc‚·�B*/
1496 }
1497
1498 }
1499
1500
1501
1502 // CCygwinPropPageDlg ƒ_ƒCƒAƒ�ƒO
1503
1504 IMPLEMENT_DYNAMIC(CCygwinPropPageDlg, CPropertyPage)
1505
1506 CCygwinPropPageDlg::CCygwinPropPageDlg()
1507 : CPropertyPage(CCygwinPropPageDlg::IDD)
1508 {
1509 }
1510
1511 CCygwinPropPageDlg::~CCygwinPropPageDlg()
1512 {
1513 if (DlgCygwinFont != NULL) {
1514 DeleteObject(DlgCygwinFont);
1515 }
1516 }
1517
1518 BEGIN_MESSAGE_MAP(CCygwinPropPageDlg, CPropertyPage)
1519 END_MESSAGE_MAP()
1520
1521 // CCygwinPropPageDlg ƒ�ƒbƒZ�[ƒW ƒnƒ“ƒhƒ‰
1522 #define CYGTERM_FILE "cygterm.cfg" // CygTerm configuration file
1523
1524 BOOL CCygwinPropPageDlg::OnInitDialog()
1525 {
1526 char *cfgfile = CYGTERM_FILE; // CygTerm configuration file
1527 char cfg[MAX_PATH];
1528 FILE *fp;
1529 char buf[256], *head, *body;
1530 char uimsg[MAX_UIMSG];
1531 CButton *btn;
1532
1533 CPropertyPage::OnInitDialog();
1534
1535 font = (HFONT)SendMessage(WM_GETFONT, 0, 0);
1536 GetObject(font, sizeof(LOGFONT), &logfont);
1537 if (get_lang_font("DLG_TAHOMA_FONT", GetSafeHwnd(), &logfont, &DlgCygwinFont, ts.UILanguageFile)) {
1538 SendDlgItemMessage(IDC_CYGWIN_PATH_LABEL, WM_SETFONT, (WPARAM)DlgCygwinFont, MAKELPARAM(TRUE,0));
1539 SendDlgItemMessage(IDC_CYGWIN_PATH, WM_SETFONT, (WPARAM)DlgCygwinFont, MAKELPARAM(TRUE,0));
1540 SendDlgItemMessage(IDC_SELECT_FILE, WM_SETFONT, (WPARAM)DlgCygwinFont, MAKELPARAM(TRUE,0));
1541 SendDlgItemMessage(IDC_CYGWIN, WM_SETFONT, (WPARAM)DlgCygwinFont, MAKELPARAM(TRUE,0));
1542 SendDlgItemMessage(IDC_TERM_LABEL, WM_SETFONT, (WPARAM)DlgCygwinFont, MAKELPARAM(TRUE,0));
1543 SendDlgItemMessage(IDC_TERM_EDIT, WM_SETFONT, (WPARAM)DlgCygwinFont, MAKELPARAM(TRUE,0));
1544 SendDlgItemMessage(IDC_TERMTYPE_LABEL, WM_SETFONT, (WPARAM)DlgCygwinFont, MAKELPARAM(TRUE,0));
1545 SendDlgItemMessage(IDC_TERM_TYPE, WM_SETFONT, (WPARAM)DlgCygwinFont, MAKELPARAM(TRUE,0));
1546 SendDlgItemMessage(IDC_PORTSTART_LABEL, WM_SETFONT, (WPARAM)DlgCygwinFont, MAKELPARAM(TRUE,0));
1547 SendDlgItemMessage(IDC_PORT_START, WM_SETFONT, (WPARAM)DlgCygwinFont, MAKELPARAM(TRUE,0));
1548 SendDlgItemMessage(IDC_PORTRANGE_LABEL, WM_SETFONT, (WPARAM)DlgCygwinFont, MAKELPARAM(TRUE,0));
1549 SendDlgItemMessage(IDC_PORT_RANGE, WM_SETFONT, (WPARAM)DlgCygwinFont, MAKELPARAM(TRUE,0));
1550 SendDlgItemMessage(IDC_SHELL_LABEL, WM_SETFONT, (WPARAM)DlgCygwinFont, MAKELPARAM(TRUE,0));
1551 SendDlgItemMessage(IDC_SHELL, WM_SETFONT, (WPARAM)DlgCygwinFont, MAKELPARAM(TRUE,0));
1552 SendDlgItemMessage(IDC_ENV1_LABEL, WM_SETFONT, (WPARAM)DlgCygwinFont, MAKELPARAM(TRUE,0));
1553 SendDlgItemMessage(IDC_ENV1, WM_SETFONT, (WPARAM)DlgCygwinFont, MAKELPARAM(TRUE,0));
1554 SendDlgItemMessage(IDC_ENV2_LABEL, WM_SETFONT, (WPARAM)DlgCygwinFont, MAKELPARAM(TRUE,0));
1555 SendDlgItemMessage(IDC_ENV2, WM_SETFONT, (WPARAM)DlgCygwinFont, MAKELPARAM(TRUE,0));
1556 SendDlgItemMessage(IDC_LOGIN_SHELL, WM_SETFONT, (WPARAM)DlgCygwinFont, MAKELPARAM(TRUE,0));
1557 SendDlgItemMessage(IDC_HOME_CHDIR, WM_SETFONT, (WPARAM)DlgCygwinFont, MAKELPARAM(TRUE,0));
1558 SendDlgItemMessage(IDC_AGENT_PROXY, WM_SETFONT, (WPARAM)DlgCygwinFont, MAKELPARAM(TRUE,0));
1559 }
1560 else {
1561 DlgCygwinFont = NULL;
1562 }
1563
1564 GetDlgItemText(IDC_CYGWIN_PATH_LABEL, uimsg, sizeof(uimsg));
1565 get_lang_msg("DLG_TAB_CYGWIN_PATH", ts.UIMsg, sizeof(ts.UIMsg), uimsg, ts.UILanguageFile);
1566 SetDlgItemText(IDC_CYGWIN_PATH_LABEL, ts.UIMsg);
1567
1568 // try to read CygTerm config file
1569 memset(&settings, 0, sizeof(settings));
1570 _snprintf_s(settings.term, sizeof(settings.term), _TRUNCATE, "ttermpro.exe %%s %%d /E /KR=SJIS /KT=SJIS /VTICON=CygTerm /nossh");
1571 _snprintf_s(settings.term_type, sizeof(settings.term_type), _TRUNCATE, "vt100");
1572 _snprintf_s(settings.port_start, sizeof(settings.port_start), _TRUNCATE, "20000");
1573 _snprintf_s(settings.port_range, sizeof(settings.port_range), _TRUNCATE, "40");
1574 _snprintf_s(settings.shell, sizeof(settings.shell), _TRUNCATE, "auto");
1575 _snprintf_s(settings.env1, sizeof(settings.env1), _TRUNCATE, "MAKE_MODE=unix");
1576 _snprintf_s(settings.env2, sizeof(settings.env2), _TRUNCATE, "");
1577 settings.login_shell = FALSE;
1578 settings.home_chdir = FALSE;
1579 settings.agent_proxy = FALSE;
1580
1581 strncpy_s(cfg, sizeof(cfg), ts.HomeDir, _TRUNCATE);
1582 AppendSlash(cfg, sizeof(cfg));
1583 strncat_s(cfg, sizeof(cfg), cfgfile, _TRUNCATE);
1584
1585 fp = fopen(cfg, "r");
1586 if (fp != NULL) {
1587 while (fgets(buf, sizeof(buf), fp) != NULL) {
1588 int len = strlen(buf);
1589
1590 if (buf[len - 1] == '\n')
1591 buf[len - 1] = '\0';
1592
1593 split_buffer(buf, '=', &head, &body);
1594 if (head == NULL || body == NULL)
1595 continue;
1596
1597 if (_stricmp(head, "TERM") == 0) {
1598 _snprintf_s(settings.term, sizeof(settings.term), _TRUNCATE, "%s", body);
1599
1600 } else if (_stricmp(head, "TERM_TYPE") == 0) {
1601 _snprintf_s(settings.term_type, sizeof(settings.term_type), _TRUNCATE, "%s", body);
1602
1603 } else if (_stricmp(head, "PORT_START") == 0) {
1604 _snprintf_s(settings.port_start, sizeof(settings.port_start), _TRUNCATE, "%s", body);
1605
1606 } else if (_stricmp(head, "PORT_RANGE") == 0) {
1607 _snprintf_s(settings.port_range, sizeof(settings.port_range), _TRUNCATE, "%s", body);
1608
1609 } else if (_stricmp(head, "SHELL") == 0) {
1610 _snprintf_s(settings.shell, sizeof(settings.shell), _TRUNCATE, "%s", body);
1611
1612 } else if (_stricmp(head, "ENV_1") == 0) {
1613 _snprintf_s(settings.env1, sizeof(settings.env1), _TRUNCATE, "%s", body);
1614
1615 } else if (_stricmp(head, "ENV_2") == 0) {
1616 _snprintf_s(settings.env2, sizeof(settings.env2), _TRUNCATE, "%s", body);
1617
1618 } else if (_stricmp(head, "LOGIN_SHELL") == 0) {
1619 if (strchr("YyTt", *body)) {
1620 settings.login_shell = TRUE;
1621 }
1622
1623 } else if (_stricmp(head, "HOME_CHDIR") == 0) {
1624 if (strchr("YyTt", *body)) {
1625 settings.home_chdir = TRUE;
1626 }
1627
1628 } else if (_stricmp(head, "SSH_AGENT_PROXY") == 0) {
1629 if (strchr("YyTt", *body)) {
1630 settings.agent_proxy = TRUE;
1631 }
1632
1633 } else {
1634 // TODO: error check
1635
1636 }
1637 }
1638 fclose(fp);
1639 }
1640 SetDlgItemText(IDC_TERM_EDIT, settings.term);
1641 SetDlgItemText(IDC_TERM_TYPE, settings.term_type);
1642 SetDlgItemText(IDC_PORT_START, settings.port_start);
1643 SetDlgItemText(IDC_PORT_RANGE, settings.port_range);
1644 SetDlgItemText(IDC_SHELL, settings.shell);
1645 SetDlgItemText(IDC_ENV1, settings.env1);
1646 SetDlgItemText(IDC_ENV2, settings.env2);
1647 btn = (CButton *)GetDlgItem(IDC_LOGIN_SHELL);
1648 btn->SetCheck(settings.login_shell);
1649 btn = (CButton *)GetDlgItem(IDC_HOME_CHDIR);
1650 btn->SetCheck(settings.home_chdir);
1651 btn = (CButton *)GetDlgItem(IDC_AGENT_PROXY);
1652 btn->SetCheck(settings.agent_proxy);
1653
1654 // Cygwin install path
1655 SetDlgItemText(IDC_CYGWIN_PATH, ts.CygwinDirectory);
1656
1657 // ƒ_ƒCƒAƒ�ƒO‚ɃtƒH�[ƒJƒX‚ð“–‚Ä‚é
1658 ::SetFocus(::GetDlgItem(GetSafeHwnd(), IDC_CYGWIN_PATH));
1659
1660 return FALSE;
1661 }
1662
1663 BOOL CCygwinPropPageDlg::OnCommand(WPARAM wParam, LPARAM lParam)
1664 {
1665 switch (wParam) {
1666 case IDC_SELECT_FILE | (BN_CLICKED << 16):
1667 // Cygwin install ƒfƒBƒŒƒNƒgƒŠ‚Ì‘I‘ðƒ_ƒCƒAƒ�ƒO
1668 get_lang_msg("DIRDLG_CYGTERM_DIR_TITLE", ts.UIMsg, sizeof(ts.UIMsg),
1669 "Select Cygwin directory", ts.UILanguageFile);
1670 doSelectFolder(GetSafeHwnd(), ts.CygwinDirectory, sizeof(ts.CygwinDirectory),
1671 ts.UIMsg);
1672 // Cygwin install path
1673 SetDlgItemText(IDC_CYGWIN_PATH, ts.CygwinDirectory);
1674 return TRUE;
1675 }
1676
1677 return CPropertyPage::OnCommand(wParam, lParam);
1678 }
1679
1680 void CCygwinPropPageDlg::OnOK()
1681 {
1682 char *cfgfile = CYGTERM_FILE; // CygTerm configuration file
1683 char *tmpfile = "cygterm.tmp";
1684 char cfg[MAX_PATH];
1685 char tmp[MAX_PATH];
1686 FILE *fp;
1687 FILE *tmp_fp;
1688 char buf[256], *head, *body;
1689 char uimsg[MAX_UIMSG];
1690 CButton *btn;
1691
1692 // writing to CygTerm config file
1693 GetDlgItemText(IDC_TERM_EDIT, settings.term, sizeof(settings.term));
1694 GetDlgItemText(IDC_TERM_TYPE, settings.term_type, sizeof(settings.term_type));
1695 GetDlgItemText(IDC_PORT_START, settings.port_start, sizeof(settings.port_start));
1696 GetDlgItemText(IDC_PORT_RANGE, settings.port_range, sizeof(settings.port_range));
1697 GetDlgItemText(IDC_SHELL, settings.shell, sizeof(settings.shell));
1698 GetDlgItemText(IDC_ENV1, settings.env1, sizeof(settings.env1));
1699 GetDlgItemText(IDC_ENV2, settings.env2, sizeof(settings.env2));
1700 btn = (CButton *)GetDlgItem(IDC_LOGIN_SHELL);
1701 settings.login_shell = btn->GetCheck();
1702 btn = (CButton *)GetDlgItem(IDC_HOME_CHDIR);
1703 settings.home_chdir = btn->GetCheck();
1704 btn = (CButton *)GetDlgItem(IDC_AGENT_PROXY);
1705 settings.agent_proxy = btn->GetCheck();
1706
1707 strncpy_s(cfg, sizeof(cfg), ts.HomeDir, _TRUNCATE);
1708 AppendSlash(cfg, sizeof(cfg));
1709 strncat_s(cfg, sizeof(cfg), cfgfile, _TRUNCATE);
1710
1711 strncpy_s(tmp, sizeof(tmp), ts.HomeDir, _TRUNCATE);
1712 AppendSlash(tmp, sizeof(tmp));
1713 strncat_s(tmp, sizeof(tmp), tmpfile, _TRUNCATE);
1714
1715 fp = fopen(cfg, "r");
1716 tmp_fp = fopen(tmp, "w");
1717 if (tmp_fp == NULL) {
1718 get_lang_msg("MSG_ERROR", uimsg, sizeof(uimsg), "ERROR", ts.UILanguageFile);
1719 get_lang_msg("MSG_CYGTERM_CONF_WRITEFILE_ERROR", ts.UIMsg, sizeof(ts.UIMsg),
1720 "Can't write CygTerm configuration file (%d).", ts.UILanguageFile);
1721 _snprintf_s(buf, sizeof(buf), _TRUNCATE, ts.UIMsg, GetLastError());
1722 MessageBox(buf, uimsg, MB_ICONEXCLAMATION);
1723 } else {
1724 if (fp != NULL) {
1725 while (fgets(buf, sizeof(buf), fp) != NULL) {
1726 int len = strlen(buf);
1727
1728 if (buf[len - 1] == '\n')
1729 buf[len - 1] = '\0';
1730
1731 split_buffer(buf, '=', &head, &body);
1732 if (head == NULL || body == NULL) {
1733 fprintf(tmp_fp, "%s\n", buf);
1734 }
1735 else if (_stricmp(head, "TERM") == 0) {
1736 fprintf(tmp_fp, "TERM = %s\n", settings.term);
1737 settings.term[0] = '\0';
1738 }
1739 else if (_stricmp(head, "TERM_TYPE") == 0) {
1740 fprintf(tmp_fp, "TERM_TYPE = %s\n", settings.term_type);
1741 settings.term_type[0] = '\0';
1742 }
1743 else if (_stricmp(head, "PORT_START") == 0) {
1744 fprintf(tmp_fp, "PORT_START = %s\n", settings.port_start);
1745 settings.port_start[0] = '\0';
1746 }
1747 else if (_stricmp(head, "PORT_RANGE") == 0) {
1748 fprintf(tmp_fp, "PORT_RANGE = %s\n", settings.port_range);
1749 settings.port_range[0] = '\0';
1750 }
1751 else if (_stricmp(head, "SHELL") == 0) {
1752 fprintf(tmp_fp, "SHELL = %s\n", settings.shell);
1753 settings.shell[0] = '\0';
1754 }
1755 else if (_stricmp(head, "ENV_1") == 0) {
1756 fprintf(tmp_fp, "ENV_1 = %s\n", settings.env1);
1757 settings.env1[0] = '\0';
1758 }
1759 else if (_stricmp(head, "ENV_2") == 0) {
1760 fprintf(tmp_fp, "ENV_2 = %s\n", settings.env2);
1761 settings.env2[0] = '\0';
1762 }
1763 else if (_stricmp(head, "LOGIN_SHELL") == 0) {
1764 fprintf(tmp_fp, "LOGIN_SHELL = %s\n", (settings.login_shell == TRUE) ? "yes" : "no");
1765 settings.login_shell = FALSE;
1766 }
1767 else if (_stricmp(head, "HOME_CHDIR") == 0) {
1768 fprintf(tmp_fp, "HOME_CHDIR = %s\n", (settings.home_chdir == TRUE) ? "yes" : "no");
1769 settings.home_chdir = FALSE;
1770 }
1771 else if (_stricmp(head, "SSH_AGENT_PROXY") == 0) {
1772 fprintf(tmp_fp, "SSH_AGENT_PROXY = %s\n", (settings.agent_proxy == TRUE) ? "yes" : "no");
1773 settings.agent_proxy = FALSE;
1774 }
1775 else {
1776 fprintf(tmp_fp, "%s = %s\n", head, body);
1777 }
1778 }
1779 fclose(fp);
1780 }
1781 else {
1782 fputs("# CygTerm setting\n", tmp_fp);
1783 fputs("\n", tmp_fp);
1784 }
1785 if (settings.term[0] != '\0') {
1786 fprintf(tmp_fp, "TERM = %s\n", settings.term);
1787 }
1788 if (settings.term_type[0] != '\0') {
1789 fprintf(tmp_fp, "TERM_TYPE = %s\n", settings.term_type);
1790 }
1791 if (settings.port_start[0] != '\0') {
1792 fprintf(tmp_fp, "PORT_START = %s\n", settings.port_start);
1793 }
1794 if (settings.port_range[0] != '\0') {
1795 fprintf(tmp_fp, "PORT_RANGE = %s\n", settings.port_range);
1796 }
1797 if (settings.shell[0] != '\0') {
1798 fprintf(tmp_fp, "SHELL = %s\n", settings.shell);
1799 }
1800 if (settings.env1[0] != '\0') {
1801 fprintf(tmp_fp, "ENV_1 = %s\n", settings.env1);
1802 }
1803 if (settings.env2[0] != '\0') {
1804 fprintf(tmp_fp, "ENV_2 = %s\n", settings.env2);
1805 }
1806 if (settings.login_shell) {
1807 fprintf(tmp_fp, "LOGIN_SHELL = yes\n");
1808 }
1809 if (settings.home_chdir) {
1810 fprintf(tmp_fp, "HOME_CHDIR = yes\n");
1811 }
1812 if (settings.agent_proxy) {
1813 fprintf(tmp_fp, "SSH_AGENT_PROXY = yes\n");
1814 }
1815 fclose(tmp_fp);
1816
1817 if (remove(cfg) != 0 && errno != ENOENT) {
1818 get_lang_msg("MSG_ERROR", uimsg, sizeof(uimsg), "ERROR", ts.UILanguageFile);
1819 get_lang_msg("MSG_CYGTERM_CONF_REMOVEFILE_ERROR", ts.UIMsg, sizeof(ts.UIMsg),
1820 "Can't remove old CygTerm configuration file (%d).", ts.UILanguageFile);
1821 _snprintf_s(buf, sizeof(buf), _TRUNCATE, ts.UIMsg, GetLastError());
1822 MessageBox(buf, uimsg, MB_ICONEXCLAMATION);
1823 }
1824 else if (rename(tmp, cfg) != 0) {
1825 get_lang_msg("MSG_ERROR", uimsg, sizeof(uimsg), "ERROR", ts.UILanguageFile);
1826 get_lang_msg("MSG_CYGTERM_CONF_RENAMEFILE_ERROR", ts.UIMsg, sizeof(ts.UIMsg),
1827 "Can't rename CygTerm configuration file (%d).", ts.UILanguageFile);
1828 _snprintf_s(buf, sizeof(buf), _TRUNCATE, ts.UIMsg, GetLastError());
1829 MessageBox(buf, uimsg, MB_ICONEXCLAMATION);
1830 } else {
1831 // cygterm.cfg ƒtƒ@ƒCƒ‹‚ւ̕ۑ¶‚ª�¬Œ÷‚µ‚½‚ç�Aƒ�ƒbƒZ�[ƒWƒ_ƒCƒAƒ�ƒO‚ð•\ަ‚·‚é�B
1832 // ‰ü‚ß‚Ä�ASave setup‚ðŽÀ�s‚·‚é•K—v‚͂Ȃ¢‚±‚Æ‚ð’�ˆÓŠ«‹N‚·‚é�B
1833 // (2012.5.1 yutaka)
1834 get_lang_msg("MSG_TT_NOTICE", uimsg, sizeof(uimsg), "MSG_TT_NOTICE", ts.UILanguageFile);
1835 get_lang_msg("MSG_CYGTERM_CONF_SAVED_NOTICE", ts.UIMsg, sizeof(ts.UIMsg),
1836 "%s has been saved. Do not do save setup.", ts.UILanguageFile);
1837 _snprintf_s(buf, sizeof(buf), _TRUNCATE, ts.UIMsg, CYGTERM_FILE);
1838 MessageBox(buf, uimsg, MB_OK | MB_ICONINFORMATION);
1839 }
1840 }
1841
1842 // Cygwin install path
1843 GetDlgItemText(IDC_CYGWIN_PATH, ts.CygwinDirectory, sizeof(ts.CygwinDirectory));
1844 }
1845
1846
1847
1848 // CAddSettingPropSheetDlg
1849
1850 IMPLEMENT_DYNAMIC(CAddSettingPropSheetDlg, CPropertySheet)
1851
1852 CAddSettingPropSheetDlg::CAddSettingPropSheetDlg(UINT nIDCaption, CWnd* pParentWnd, UINT iSelectPage)
1853 :CPropertySheet(nIDCaption, pParentWnd, iSelectPage)
1854 {
1855 AddPage(&m_GeneralPage);
1856 AddPage(&m_SequencePage);
1857 AddPage(&m_CopypastePage);
1858 AddPage(&m_VisualPage);
1859 AddPage(&m_LogPage);
1860 AddPage(&m_CygwinPage);
1861
1862 m_psh.dwFlags |= PSH_NOAPPLYNOW;
1863 }
1864
1865 CAddSettingPropSheetDlg::CAddSettingPropSheetDlg(LPCTSTR pszCaption, CWnd* pParentWnd, UINT iSelectPage)
1866 :CPropertySheet(pszCaption, pParentWnd, iSelectPage)
1867 {
1868 AddPage(&m_GeneralPage);
1869 AddPage(&m_SequencePage);
1870 AddPage(&m_CopypastePage);
1871 AddPage(&m_VisualPage);
1872 AddPage(&m_LogPage);
1873 AddPage(&m_CygwinPage);
1874
1875 m_psh.dwFlags |= PSH_NOAPPLYNOW;
1876 }
1877
1878 CAddSettingPropSheetDlg::~CAddSettingPropSheetDlg()
1879 {
1880 }
1881
1882
1883 BEGIN_MESSAGE_MAP(CAddSettingPropSheetDlg, CPropertySheet)
1884 END_MESSAGE_MAP()
1885
1886
1887 // CAddSettingPropSheetDlg ƒ�ƒbƒZ�[ƒW ƒnƒ“ƒhƒ‰
1888
1889 BOOL CAddSettingPropSheetDlg::OnInitDialog()
1890 {
1891 CPropertySheet::OnInitDialog();
1892
1893 get_lang_msg("DLG_TABSHEET_TITLE", ts.UIMsg, sizeof(ts.UIMsg),
1894 "Tera Term: Additional settings", ts.UILanguageFile);
1895 SetWindowText(ts.UIMsg);
1896
1897 CTabCtrl *tab = GetTabControl();
1898 TCITEM tc;
1899 tc.mask = TCIF_TEXT;
1900
1901 get_lang_msg("DLG_TABSHEET_TITLE_GENERAL", ts.UIMsg, sizeof(ts.UIMsg),
1902 "General", ts.UILanguageFile);
1903 tc.pszText = ts.UIMsg;
1904 tab->SetItem(0, &tc);
1905
1906 get_lang_msg("DLG_TABSHEET_TITLE_SEQUENCE", ts.UIMsg, sizeof(ts.UIMsg),
1907 "Control Sequence", ts.UILanguageFile);
1908 tc.pszText = ts.UIMsg;
1909 tab->SetItem(1, &tc);
1910
1911 get_lang_msg("DLG_TABSHEET_TITLE_COPYPASTE", ts.UIMsg, sizeof(ts.UIMsg),
1912 "Copy and Paste", ts.UILanguageFile);
1913 tc.pszText = ts.UIMsg;
1914 tab->SetItem(2, &tc);
1915
1916 get_lang_msg("DLG_TABSHEET_TITLE_VISUAL", ts.UIMsg, sizeof(ts.UIMsg),
1917 "Visual", ts.UILanguageFile);
1918 tc.pszText = ts.UIMsg;
1919 tab->SetItem(3, &tc);
1920
1921 get_lang_msg("DLG_TABSHEET_TITLE_Log", ts.UIMsg, sizeof(ts.UIMsg),
1922 "Log", ts.UILanguageFile);
1923 tc.pszText = ts.UIMsg;
1924 tab->SetItem(4, &tc);
1925
1926 get_lang_msg("DLG_TABSHEET_TITLE_CYGWIN", ts.UIMsg, sizeof(ts.UIMsg),
1927 "Cygwin", ts.UILanguageFile);
1928 tc.pszText = ts.UIMsg;
1929 tab->SetItem(5, &tc);
1930
1931 return FALSE;
1932 }

Back to OSDN">Back to OSDN
ViewVC Help
Powered by ViewVC 1.1.26