Open-Source-Software-Entwicklung und Downloads

Browse Subversion Repository

Contents of /trunk/teraterm/teraterm/ftdlg.cpp

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2570 - (show annotations) (download) (as text)
Fri Aug 1 16:28:26 2008 UTC (15 years, 9 months ago) by maya
Original Path: teraterm/trunk/teraterm/ftdlg.cpp
File MIME type: text/x-c++src
File size: 4632 byte(s)
NT4.0で無理矢理32bitアイコンを表示しようとして崩れたアイコンが表示される問題を修正した。

1 /* 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 BOOL Ok;
31 WNDCLASS wc;
32 int fuLoad = LR_DEFAULTCOLOR;
33
34 fv = pfv;
35 cv = pcv;
36 cv->FilePause &= ~fv->OpId;
37 ts = pts;
38 LOGFONT logfont;
39 HFONT font;
40
41 wc.style = CS_PARENTDC;
42 wc.lpfnWndProc = AfxWndProc;
43 wc.cbClsExtra = 0;
44 wc.cbWndExtra = DLGWINDOWEXTRA;
45 wc.hInstance = AfxGetInstanceHandle();
46 if (is_NT4()) {
47 fuLoad = LR_VGACOLOR;
48 }
49 wc.hIcon = (HICON)LoadImage(wc.hInstance, MAKEINTRESOURCE(IDI_TTERM),
50 IMAGE_ICON, 0, 0, fuLoad);
51 wc.hCursor = LoadCursor(NULL,IDC_ARROW);
52 wc.hbrBackground = (HBRUSH)(COLOR_BTNFACE+1);
53 wc.lpszMenuName = NULL;
54 wc.lpszClassName = "FTDlg32";
55 RegisterClass(&wc);
56
57 Pause = FALSE;
58 if (fv->OpId == OpLog) // parent window is desktop
59 Ok = CDialog::Create(CFileTransDlg::IDD, GetDesktopWindow());
60 else // parent window is VT window
61 Ok = CDialog::Create(CFileTransDlg::IDD, NULL);
62
63 fv->HWin = GetSafeHwnd();
64
65 font = (HFONT)SendMessage(WM_GETFONT, 0, 0);
66 GetObject(font, sizeof(LOGFONT), &logfont);
67 if (get_lang_font("DLG_SYSTEM_FONT", fv->HWin, &logfont, &DlgFont, ts->UILanguageFile)) {
68 SendDlgItemMessage(IDC_TRANS_FILENAME, WM_SETFONT, (WPARAM)DlgFont, MAKELPARAM(TRUE,0));
69 SendDlgItemMessage(IDC_TRANSFNAME, WM_SETFONT, (WPARAM)DlgFont, MAKELPARAM(TRUE,0));
70 SendDlgItemMessage(IDC_FULLPATH_LABEL, WM_SETFONT, (WPARAM)DlgFont, MAKELPARAM(TRUE,0));
71 SendDlgItemMessage(IDC_EDIT_FULLPATH, WM_SETFONT, (WPARAM)DlgFont, MAKELPARAM(TRUE,0));
72 SendDlgItemMessage(IDC_TRANS_TRANS, WM_SETFONT, (WPARAM)DlgFont, MAKELPARAM(TRUE,0));
73 SendDlgItemMessage(IDC_TRANSBYTES, WM_SETFONT, (WPARAM)DlgFont, MAKELPARAM(TRUE,0));
74 SendDlgItemMessage(IDC_TRANSPAUSESTART, WM_SETFONT, (WPARAM)DlgFont, MAKELPARAM(TRUE,0));
75 SendDlgItemMessage(IDCANCEL, WM_SETFONT, (WPARAM)DlgFont, MAKELPARAM(TRUE,0));
76 SendDlgItemMessage(IDC_TRANSHELP, WM_SETFONT, (WPARAM)DlgFont, MAKELPARAM(TRUE,0));
77 }
78
79 return Ok;
80 }
81
82 void CFileTransDlg::ChangeButton(BOOL PauseFlag)
83 {
84 Pause = PauseFlag;
85 if (Pause)
86 {
87 get_lang_msg("DLG_FILETRANS_START", ts->UIMsg, sizeof(ts->UIMsg), "&Start", ts->UILanguageFile);
88 SetDlgItemText(IDC_TRANSPAUSESTART, ts->UIMsg);
89 cv->FilePause |= fv->OpId;
90 }
91 else {
92 get_lang_msg("DLG_FILETRANS_PAUSE", ts->UIMsg, sizeof(ts->UIMsg), "Pau&se", ts->UILanguageFile);
93 SetDlgItemText(IDC_TRANSPAUSESTART, ts->UIMsg);
94 cv->FilePause &= ~fv->OpId;
95 }
96 }
97
98 void CFileTransDlg::RefreshNum()
99 {
100 char NumStr[13];
101
102 _snprintf_s(NumStr,sizeof(NumStr),_TRUNCATE,"%u",fv->ByteCount);
103 SetDlgItemText(IDC_TRANSBYTES, NumStr);
104 }
105
106 /////////////////////////////////////////////////////////////////////////////
107 // CFileTransDlg message handler
108
109 BOOL CFileTransDlg::OnInitDialog()
110 {
111 int fuLoad = LR_DEFAULTCOLOR;
112
113 SetWindowText(fv->DlgCaption);
114 SetDlgItemText(IDC_TRANSFNAME, &(fv->FullName[fv->DirLen]));
115
116 // ���O�t�@�C�����t���p�X�\��������(2004.8.6 yutaka)
117 SetDlgItemText(IDC_EDIT_FULLPATH, &(fv->FullName[0]));
118
119 // set the small icon
120 if (is_NT4()) {
121 fuLoad = LR_VGACOLOR;
122 }
123 ::PostMessage(GetSafeHwnd(),WM_SETICON,0,
124 (LPARAM)LoadImage(AfxGetInstanceHandle(),
125 MAKEINTRESOURCE(IDI_TTERM),
126 IMAGE_ICON,16,16,fuLoad));
127 return 1;
128 }
129
130 void CFileTransDlg::OnCancel( )
131 {
132 ::PostMessage(fv->HMainWin,WM_USER_FTCANCEL,fv->OpId,0);
133 }
134
135 BOOL CFileTransDlg::OnCommand(WPARAM wParam, LPARAM lParam)
136 {
137 switch (LOWORD(wParam)) {
138 case IDCANCEL:
139 ::PostMessage(fv->HMainWin,WM_USER_FTCANCEL,fv->OpId,0);
140 return TRUE;
141 case IDC_TRANSPAUSESTART:
142 ChangeButton(! Pause);
143 return TRUE;
144 case IDC_TRANSHELP:
145 ::PostMessage(fv->HMainWin,WM_USER_DLGHELP2,0,0);
146 return TRUE;
147 default:
148 return (CDialog::OnCommand(wParam,lParam));
149 }
150 }
151
152 void CFileTransDlg::PostNcDestroy()
153 {
154 delete this;
155 }
156
157 LRESULT CFileTransDlg::DefWindowProc(UINT message, WPARAM wParam, LPARAM lParam)
158 {
159 return DefDlgProc(GetSafeHwnd(),message,wParam,lParam);
160 }

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