Develop and Download Open Source Software

Browse Subversion Repository

Annotation of /trunk/teraterm/teraterm/addsetting.cpp

Parent Directory Parent Directory | Revision Log Revision Log


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

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