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

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