Develop and Download Open Source Software

Browse Subversion Repository

Annotation of /branches/ttcomtester/teraterm/teraterm/addsetting.cpp

Parent Directory Parent Directory | Revision Log Revision Log


Revision 6841 - (hide annotations) (download) (as text)
Tue Jul 4 15:02:28 2017 UTC (6 years, 9 months ago) by doda
Original Path: trunk/teraterm/teraterm/addsetting.cpp
File MIME type: text/x-c++src
File size: 74494 byte(s)
TeraTerm Project としてのライセンス表記を追加

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

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