00001
00002
00003
00004
00005
00006 #include "stdafx.h"
00007 #include "FdmApp.h"
00008 #include "HFE_ProtocolPage.h"
00009 #include "HFEWnd.h"
00010
00011 extern CHFEWnd* _pwndHFE;
00012
00013 #ifdef _DEBUG
00014 #define new DEBUG_NEW
00015 #undef THIS_FILE
00016 static char THIS_FILE[] = __FILE__;
00017 #endif
00018
00019 IMPLEMENT_DYNCREATE(CHFE_ProtocolPage, CPropertyPage)
00020
00021 CHFE_ProtocolPage::CHFE_ProtocolPage() : CPropertyPage(CHFE_ProtocolPage::IDD)
00022 {
00023 m_psp.dwFlags |= PSP_USETITLE;
00024 m_psp.pszTitle = LS (L_PROTOCOL);
00025 }
00026
00027 CHFE_ProtocolPage::~CHFE_ProtocolPage()
00028 {
00029 }
00030
00031 void CHFE_ProtocolPage::DoDataExchange(CDataExchange* pDX)
00032 {
00033 CPropertyPage::DoDataExchange(pDX);
00034
00035
00036
00037 }
00038
00039 BEGIN_MESSAGE_MAP(CHFE_ProtocolPage, CPropertyPage)
00040
00041 ON_BN_CLICKED(IDC_RETREIVEADDINFO, OnRetreiveaddinfo)
00042 ON_BN_CLICKED(IDC_PASSIVEMODE, OnPassivemode)
00043 ON_WM_CONTEXTMENU()
00044 ON_COMMAND(ID_WHATISTHIS, OnWhatisthis)
00045 ON_WM_HELPINFO()
00046
00047 END_MESSAGE_MAP()
00048
00049 BOOL CHFE_ProtocolPage::OnInitDialog()
00050 {
00051 CPropertyPage::OnInitDialog();
00052
00053 CheckDlgButton (IDC_RETREIVEADDINFO, _App.RetreiveInfoWhileGettingList ());
00054 CheckDlgButton (IDC_PASSIVEMODE, _App.HFE_FtpPassiveMode ());
00055
00056 ApplyLanguage ();
00057
00058 return TRUE;
00059 }
00060
00061 BOOL CHFE_ProtocolPage::OnApply()
00062 {
00063 fsInternetFileListMgr *mgr = _pwndHFE->GetMgr ();
00064
00065 BOOL b = IsDlgButtonChecked (IDC_RETREIVEADDINFO) == BST_CHECKED;
00066 _App.RetreiveInfoWhileGettingList (b);
00067 mgr->RetreiveInfoWhileGettingList (b);
00068
00069 b = IsDlgButtonChecked (IDC_PASSIVEMODE) == BST_CHECKED;
00070 _App.HFE_FtpPassiveMode (b);
00071 mgr->FtpPassiveMode (b);
00072
00073 return CPropertyPage::OnApply();
00074 }
00075
00076 void CHFE_ProtocolPage::OnRetreiveaddinfo()
00077 {
00078 SetModified ();
00079 }
00080
00081 void CHFE_ProtocolPage::OnPassivemode()
00082 {
00083 SetModified ();
00084 }
00085
00086 void CHFE_ProtocolPage::OnContextMenu(CWnd* , CPoint point)
00087 {
00088 PrepareCHMgr (point);
00089 _CHMgr.ShowMenu ();
00090 }
00091
00092 void CHFE_ProtocolPage::OnWhatisthis()
00093 {
00094 _CHMgr.OnWT ();
00095 }
00096
00097 void CHFE_ProtocolPage::ApplyLanguage()
00098 {
00099 fsDlgLngInfo lnginfo [] = {
00100 fsDlgLngInfo (IDC_RETREIVEADDINFO, L_RETRADDINFO),
00101 fsDlgLngInfo (IDC__USINGMAY, L_USINGMAYDECREASE),
00102 fsDlgLngInfo (IDC_PASSIVEMODE, L_USEPASSIVEMODE),
00103 };
00104
00105 _LngMgr.ApplyLanguage (this, lnginfo, sizeof (lnginfo) / sizeof (fsDlgLngInfo), 0);
00106 }
00107
00108 BOOL CHFE_ProtocolPage::OnHelpInfo(HELPINFO* pHelpInfo)
00109 {
00110 RECT rc;
00111 CWnd *pItem = GetDlgItem (pHelpInfo->iCtrlId);
00112 if (pItem == NULL)
00113 return TRUE;
00114 pItem->GetWindowRect (&rc);
00115 if (PtInRect (&rc, pHelpInfo->MousePos) == FALSE)
00116 {
00117 pHelpInfo->MousePos.x = rc.left + (rc.right - rc.left) / 2;
00118 pHelpInfo->MousePos.y = rc.top + (rc.bottom - rc.top) / 2;
00119 }
00120 PrepareCHMgr (pHelpInfo->MousePos);
00121 _CHMgr.OnWT ();
00122 return TRUE;
00123 }
00124
00125 void CHFE_ProtocolPage::PrepareCHMgr(CPoint point)
00126 {
00127 fsCtrlContextHelp aCH1 [] = {
00128 fsCtrlContextHelp (IDC_RETREIVEADDINFO, LS (L_RETRADDINFOHERE)),
00129 fsCtrlContextHelp (IDC_PASSIVEMODE, LS (L_USEPASSIVEMODEHERE)),
00130 };
00131
00132 static fsCtrlContextHelp aCH [sizeof (aCH1) / sizeof (fsCtrlContextHelp)];
00133 CopyMemory (aCH, aCH1, sizeof (aCH));
00134
00135 _CHMgr.PrepareContextMenu (this, point, aCH, sizeof (aCH) / sizeof (fsCtrlContextHelp));
00136 }