Develop and Download Open Source Software

Browse Subversion Repository

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 3709 - (hide annotations) (download) (as text)
Sun Dec 6 15:14:26 2009 UTC (14 years, 4 months ago) by maya
Original Path: trunk/teraterm/teraterm/ftdlg.cpp
File MIME type: text/x-c++src
File size: 5409 byte(s)
[File]-[Show Log dialog] を、ダイアログ非表示でなくても押せるようにした。
1 maya 3227 /* Tera Term
2     Copyright(C) 1994-1998 T. Teranishi
3     All rights reserved. */
4    
5     /* TERATERM.EXE, file transfer dialog box */
6     #include "stdafx.h"
7     #include "teraterm.h"
8     #include "tttypes.h"
9     #include "ttftypes.h"
10     #include "ttlib.h"
11     #include "tt_res.h"
12     #include "ftdlg.h"
13    
14     #ifdef _DEBUG
15     #define new DEBUG_NEW
16     #undef THIS_FILE
17     static char THIS_FILE[] = __FILE__;
18     #endif
19    
20     /////////////////////////////////////////////////////////////////////////////
21     // CFileTransDlg dialog
22    
23     BEGIN_MESSAGE_MAP(CFileTransDlg, CDialog)
24     //{{AFX_MSG_MAP(CFileTransDlg)
25     //}}AFX_MSG_MAP
26     END_MESSAGE_MAP()
27    
28     BOOL CFileTransDlg::Create(PFileVar pfv, PComVar pcv, PTTSet pts)
29     {
30 maya 3392 BOOL Ok;
31     WNDCLASS wc;
32     int fuLoad = LR_DEFAULTCOLOR;
33 maya 3600 HWND hwnd = GetForegroundWindow()->GetSafeHwnd();
34 maya 3227
35 maya 3392 fv = pfv;
36     cv = pcv;
37     cv->FilePause &= ~fv->OpId;
38     ts = pts;
39     LOGFONT logfont;
40     HFONT font;
41 maya 3227
42 maya 3392 wc.style = CS_PARENTDC;
43     wc.lpfnWndProc = AfxWndProc;
44     wc.cbClsExtra = 0;
45     wc.cbWndExtra = DLGWINDOWEXTRA;
46     wc.hInstance = AfxGetInstanceHandle();
47     wc.hIcon = NULL;
48     wc.hCursor = LoadCursor(NULL,IDC_ARROW);
49     wc.hbrBackground = (HBRUSH)(COLOR_BTNFACE+1);
50     wc.lpszMenuName = NULL;
51     wc.lpszClassName = "FTDlg32";
52     RegisterClass(&wc);
53 maya 3227
54 maya 3392 Pause = FALSE;
55     if (fv->OpId == OpLog) { // parent window is desktop
56     Ok = CDialog::Create(CFileTransDlg::IDD, GetDesktopWindow());
57     }
58     else { // parent window is VT window
59 maya 3596 Ok = CDialog::Create(CFileTransDlg::IDD, NULL);
60 maya 3392 }
61 maya 3227
62 maya 3392 // �����o������������ (2009.2.7 maya)
63     if (!fv->HideDialog) {
64 maya 3709 ShowWindow(SW_SHOWNORMAL);
65 maya 3392 if (fv->OpId == OpLog) {
66     ShowWindow(SW_MINIMIZE);
67     }
68     }
69 maya 3596 else {
70 maya 3600 ::SetForegroundWindow(hwnd);
71 maya 3596 }
72 maya 3227
73 maya 3392 fv->HWin = GetSafeHwnd();
74 maya 3227
75 maya 3392 font = (HFONT)SendMessage(WM_GETFONT, 0, 0);
76     GetObject(font, sizeof(LOGFONT), &logfont);
77     if (get_lang_font("DLG_SYSTEM_FONT", fv->HWin, &logfont, &DlgFont, ts->UILanguageFile)) {
78     SendDlgItemMessage(IDC_TRANS_FILENAME, WM_SETFONT, (WPARAM)DlgFont, MAKELPARAM(TRUE,0));
79     SendDlgItemMessage(IDC_TRANSFNAME, WM_SETFONT, (WPARAM)DlgFont, MAKELPARAM(TRUE,0));
80     SendDlgItemMessage(IDC_FULLPATH_LABEL, WM_SETFONT, (WPARAM)DlgFont, MAKELPARAM(TRUE,0));
81     SendDlgItemMessage(IDC_EDIT_FULLPATH, WM_SETFONT, (WPARAM)DlgFont, MAKELPARAM(TRUE,0));
82     SendDlgItemMessage(IDC_TRANS_TRANS, WM_SETFONT, (WPARAM)DlgFont, MAKELPARAM(TRUE,0));
83     SendDlgItemMessage(IDC_TRANSBYTES, WM_SETFONT, (WPARAM)DlgFont, MAKELPARAM(TRUE,0));
84     SendDlgItemMessage(IDC_TRANSPAUSESTART, WM_SETFONT, (WPARAM)DlgFont, MAKELPARAM(TRUE,0));
85     SendDlgItemMessage(IDCANCEL, WM_SETFONT, (WPARAM)DlgFont, MAKELPARAM(TRUE,0));
86     SendDlgItemMessage(IDC_TRANSHELP, WM_SETFONT, (WPARAM)DlgFont, MAKELPARAM(TRUE,0));
87     }
88 maya 3227
89 maya 3392 return Ok;
90 maya 3227 }
91    
92     void CFileTransDlg::ChangeButton(BOOL PauseFlag)
93     {
94 maya 3392 Pause = PauseFlag;
95     if (Pause) {
96     get_lang_msg("DLG_FILETRANS_START", ts->UIMsg, sizeof(ts->UIMsg), "&Start", ts->UILanguageFile);
97     SetDlgItemText(IDC_TRANSPAUSESTART, ts->UIMsg);
98     cv->FilePause |= fv->OpId;
99     }
100     else {
101     get_lang_msg("DLG_FILETRANS_PAUSE", ts->UIMsg, sizeof(ts->UIMsg), "Pau&se", ts->UILanguageFile);
102     SetDlgItemText(IDC_TRANSPAUSESTART, ts->UIMsg);
103     cv->FilePause &= ~fv->OpId;
104     }
105 maya 3227 }
106    
107     void CFileTransDlg::RefreshNum()
108     {
109 maya 3392 char NumStr[24];
110     double rate;
111 maya 3227
112 maya 3392 if (fv->OpId == OpSendFile && fv->FileSize > 0) {
113     rate = 100.0 * (double)fv->ByteCount / (double)fv->FileSize;
114     if (fv->ProgStat < (int)rate) {
115     fv->ProgStat = (int)rate;
116     SendDlgItemMessage(IDC_TRANSPROGRESS, PBM_SETPOS, (WPARAM)fv->ProgStat, 0);
117     }
118     _snprintf_s(NumStr,sizeof(NumStr),_TRUNCATE,"%u (%3.1f%%)",fv->ByteCount, rate);
119     }
120     else {
121     _snprintf_s(NumStr,sizeof(NumStr),_TRUNCATE,"%u",fv->ByteCount);
122     }
123     SetDlgItemText(IDC_TRANSBYTES, NumStr);
124 maya 3227 }
125    
126     /////////////////////////////////////////////////////////////////////////////
127     // CFileTransDlg message handler
128    
129     BOOL CFileTransDlg::OnInitDialog()
130     {
131 maya 3392 int fuLoad = LR_DEFAULTCOLOR;
132 maya 3227
133 maya 3392 SetWindowText(fv->DlgCaption);
134     SetDlgItemText(IDC_TRANSFNAME, &(fv->FullName[fv->DirLen]));
135 maya 3227
136 maya 3392 // ���O�t�@�C�����t���p�X�\��������(2004.8.6 yutaka)
137     SetDlgItemText(IDC_EDIT_FULLPATH, &(fv->FullName[0]));
138 maya 3227
139 maya 3392 if (is_NT4()) {
140     fuLoad = LR_VGACOLOR;
141     }
142     ::PostMessage(GetSafeHwnd(),WM_SETICON,ICON_SMALL,
143     (LPARAM)LoadImage(AfxGetInstanceHandle(),
144     MAKEINTRESOURCE(IDI_TTERM),
145     IMAGE_ICON,16,16,fuLoad));
146     ::PostMessage(GetSafeHwnd(),WM_SETICON,ICON_BIG,
147     (LPARAM)LoadImage(AfxGetInstanceHandle(),
148     MAKEINTRESOURCE(IDI_TTERM),
149     IMAGE_ICON, 0, 0, fuLoad));
150 maya 3227
151 maya 3392 return 1;
152 maya 3227 }
153    
154     void CFileTransDlg::OnCancel( )
155     {
156 maya 3392 ::PostMessage(fv->HMainWin,WM_USER_FTCANCEL,fv->OpId,0);
157 maya 3227 }
158    
159     BOOL CFileTransDlg::OnCommand(WPARAM wParam, LPARAM lParam)
160     {
161 maya 3392 switch (LOWORD(wParam)) {
162     case IDCANCEL:
163     ::PostMessage(fv->HMainWin,WM_USER_FTCANCEL,fv->OpId,0);
164     return TRUE;
165     case IDC_TRANSPAUSESTART:
166     ChangeButton(! Pause);
167     return TRUE;
168     case IDC_TRANSHELP:
169     ::PostMessage(fv->HMainWin,WM_USER_DLGHELP2,0,0);
170     return TRUE;
171     default:
172     return (CDialog::OnCommand(wParam,lParam));
173     }
174 maya 3227 }
175    
176     void CFileTransDlg::PostNcDestroy()
177     {
178 maya 3392 delete this;
179 maya 3227 }
180    
181     LRESULT CFileTransDlg::DefWindowProc(UINT message, WPARAM wParam, LPARAM lParam)
182     {
183 maya 3392 return DefDlgProc(GetSafeHwnd(),message,wParam,lParam);
184 maya 3227 }

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