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 4043 - (hide annotations) (download) (as text)
Sun Aug 22 17:53:38 2010 UTC (13 years, 7 months ago) by doda
Original Path: trunk/teraterm/teraterm/addsetting.cpp
File MIME type: text/x-c++src
File size: 58172 byte(s)
IME状態依存カーソルを additional settings で設定できるようにした。 [Ttssh2-devel 1736]

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

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