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

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