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

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