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

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