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

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