NetManager.cpp
上传用户:geanq888
上传日期:2007-01-03
资源大小:316k
文件大小:13k
源码类别:

Ftp客户端

开发平台:

Visual C++

  1. // NetManager.cpp : Defines the class behaviors for the application.
  2. //
  3. #include "stdafx.h"
  4. #include "NetManager.h"
  5. #include "NetManagerDlg.h"
  6. #include "Splash.h"
  7. #include "GlobalsExtern.h"
  8. #include "AboutDlg.h"
  9. #ifdef _DEBUG
  10. #define new DEBUG_NEW
  11. #undef THIS_FILE
  12. static char THIS_FILE[] = __FILE__;
  13. #endif
  14. /////////////////////////////////////////////////////////////////////////////
  15. // CNetManagerApp
  16. BEGIN_MESSAGE_MAP(CNetManagerApp, CWinApp)
  17. //{{AFX_MSG_MAP(CNetManagerApp)
  18. ON_COMMAND(IDM_STARTALL, OnStartall)
  19. ON_COMMAND(IDM_ENDALL, OnEndall)
  20. ON_COMMAND(IDM_NETMONITOR, OnNetmonitor)
  21. ON_COMMAND(IDM_PEOPLEMONITOR, OnPeoplemonitor)
  22. ON_COMMAND(IDM_QUIT, OnQuit)
  23. ON_COMMAND(IDM_STARTING, OnStarting)
  24. ON_COMMAND(IDM_ENDING, OnEnding)
  25. ON_COMMAND(IDM_NETMONITORING, OnNetmonitoring)
  26. ON_COMMAND(IDM_PEOPLEMONITORING, OnPeoplemonitoring)
  27. ON_COMMAND(IDM_AUTOSAVE, OnAutosave)
  28. ON_COMMAND(IDM_EDITINIFILE, OnEditinifile)
  29. ON_COMMAND(IDM_FONT, OnFont)
  30. ON_COMMAND(IDM_SAVE, OnSave)
  31. ON_COMMAND(IDM_ABOUT, OnAbout)
  32. ON_COMMAND(IDM_NOTIFICATION_ICON, OnNotificationIcon)
  33. ON_COMMAND(IDM_NOTIFICATION_WIN, OnNotificationWin)
  34. ON_COMMAND(IDM_OUTPUT_HIDE, OnOutputHide)
  35. ON_COMMAND(IDM_OUTPUT_SHOW, OnOutputShow)
  36. ON_COMMAND(IDM_OUTPUT_CLEAR, OnOutputClear)
  37. ON_COMMAND(IDM_EXEIMAGES_LARGE, OnExeimagesLarge)
  38. ON_COMMAND(IDM_EXEIMAGES_SMALL, OnExeimagesSmall)
  39. ON_COMMAND(IDM_PEOPLEIMAGES_SMALL, OnPeopleimagesSmall)
  40. ON_COMMAND(IDM_PEOPLEIMAGES_LARGE, OnPeopleimagesLarge)
  41. ON_COMMAND(IDM_HISTORYFONT, OnHistoryfont)
  42. ON_COMMAND(IDM_CONTENTS, OnContents)
  43. //}}AFX_MSG_MAP
  44. ON_COMMAND(ID_HELP, CWinApp::OnHelp)
  45. END_MESSAGE_MAP()
  46. /////////////////////////////////////////////////////////////////////////////
  47. // CNetManagerApp construction
  48. CNetManagerApp::CNetManagerApp()
  49. {
  50. // TODO: add construction code here,
  51. // Place all significant initialization in InitInstance
  52. }
  53. /////////////////////////////////////////////////////////////////////////////
  54. // The one and only CNetManagerApp object
  55. CNetManagerApp theApp;
  56. /////////////////////////////////////////////////////////////////////////////
  57. // CNetManagerApp initialization
  58. BOOL CNetManagerApp::InitInstance()
  59. {
  60. if(!AfxSocketInit())
  61. {
  62. AfxMessageBox("Windows sockets initialization failed.");
  63. return FALSE;
  64. }
  65.   CMySplashWnd* pSplashWnd = new CMySplashWnd(IDB_SPLASH, 100);   // splash window
  66.   pSplashWnd->Create();
  67. // Standard initialization
  68. // If you are not using these features and wish to reduce the size
  69. //  of your final executable, you should remove from the following
  70. //  the specific initialization routines you do not need.
  71. ::CoInitialize(NULL);   // for CDropEdit!!
  72. #ifdef _AFXDLL
  73. Enable3dControls(); // Call this when using MFC in a shared DLL
  74. #else
  75. Enable3dControlsStatic(); // Call this when linking to MFC statically
  76. #endif
  77. CNetManagerDlg dlg;
  78. m_pMainWnd = &dlg;
  79.   g_pMainWnd = &dlg;
  80. int nResponse = dlg.DoModal();
  81. // Since the dialog has been closed, return FALSE so that we exit the
  82. //  application, rather than start the application's message pump.
  83. return FALSE;
  84. }
  85. /////////////////////////////////////////////////////////////////////////////
  86. int CNetManagerApp::ExitInstance() 
  87. {
  88.   ::CoUninitialize();         // for CDropEdit!!
  89. return CWinApp::ExitInstance();
  90. }
  91. /////////////////////////////////////////////////////////////////////////////
  92. void CNetManagerApp::OnStarting() 
  93. {
  94.   CMenu* pMenu = g_pMainWnd->GetMenu();
  95.   if(pMenu->GetMenuState(IDM_STARTING, MF_UNCHECKED) == MF_UNCHECKED)
  96.   {
  97.     pMenu->CheckMenuItem(IDM_STARTING, MF_CHECKED | MF_BYCOMMAND);
  98.     g_bStarting = true;
  99.   }
  100.   else
  101.   {
  102.     pMenu->CheckMenuItem(IDM_STARTING, MF_UNCHECKED | MF_BYCOMMAND);
  103.     g_bStarting = false;
  104.   }
  105. }
  106. /////////////////////////////////////////////////////////////////////////////
  107. void CNetManagerApp::OnEnding() 
  108. {
  109.   CMenu* pMenu = g_pMainWnd->GetMenu();
  110.   if(pMenu->GetMenuState(IDM_ENDING, MF_UNCHECKED) == MF_UNCHECKED)
  111.   {
  112.     pMenu->CheckMenuItem(IDM_ENDING, MF_CHECKED | MF_BYCOMMAND);
  113.     g_bEnding = true;
  114.   }
  115.   else
  116.   {
  117.     pMenu->CheckMenuItem(IDM_ENDING, MF_UNCHECKED | MF_BYCOMMAND);
  118.     g_bEnding = false;
  119.   }
  120. }
  121. /////////////////////////////////////////////////////////////////////////////
  122. void CNetManagerApp::OnNetmonitoring() 
  123. {
  124.   CMenu* pMenu = g_pMainWnd->GetMenu();
  125.   if(pMenu->GetMenuState(IDM_NETMONITORING, MF_UNCHECKED) == MF_UNCHECKED)
  126.   {
  127.     pMenu->CheckMenuItem(IDM_NETMONITORING, MF_CHECKED | MF_BYCOMMAND);
  128.     g_bNetMonitoring = true;
  129.   }
  130.   else
  131.   {
  132.     pMenu->CheckMenuItem(IDM_NETMONITORING, MF_UNCHECKED | MF_BYCOMMAND);
  133.     g_bNetMonitoring = false;
  134.   }
  135. }
  136. /////////////////////////////////////////////////////////////////////////////
  137. void CNetManagerApp::OnPeoplemonitoring() 
  138. {
  139.   CMenu* pMenu = g_pMainWnd->GetMenu();
  140.   if(pMenu->GetMenuState(IDM_PEOPLEMONITORING, MF_UNCHECKED) == MF_UNCHECKED)
  141.   {
  142.     pMenu->CheckMenuItem(IDM_PEOPLEMONITORING, MF_CHECKED | MF_BYCOMMAND);
  143.     g_bPeopleMonitoring = true;
  144.   }
  145.   else
  146.   {
  147.     pMenu->CheckMenuItem(IDM_PEOPLEMONITORING, MF_UNCHECKED | MF_BYCOMMAND);
  148.     g_bPeopleMonitoring = false;
  149.   }
  150. }
  151. /////////////////////////////////////////////////////////////////////////////
  152. void CNetManagerApp::OnAutosave() 
  153. {
  154.   CMenu* pMenu = g_pMainWnd->GetMenu();
  155.   if(pMenu->GetMenuState(IDM_AUTOSAVE, MF_UNCHECKED) == MF_UNCHECKED)
  156.   {
  157.     pMenu->CheckMenuItem(IDM_AUTOSAVE, MF_CHECKED | MF_BYCOMMAND);
  158.     g_bAutoSaveSettings = true;
  159.   }
  160.   else
  161.   {
  162.     pMenu->CheckMenuItem(IDM_AUTOSAVE, MF_UNCHECKED | MF_BYCOMMAND);
  163.     g_bAutoSaveSettings = false;
  164.   }
  165. }
  166. /////////////////////////////////////////////////////////////////////////////
  167. void CNetManagerApp::OnEditinifile() 
  168. {
  169.   if((int)ShellExecute(::GetDesktopWindow(), _T("open"), ((CNetManagerDlg*)m_pMainWnd)->m_sIniFilePath, NULL, NULL, SW_NORMAL)<33)
  170.     AfxMessageBox("Error - Opening INI File ");
  171. }
  172. /////////////////////////////////////////////////////////////////////////////
  173. void CNetManagerApp::OnFont() 
  174. {
  175.   delete ((CNetManagerDlg*)m_pMainWnd)->m_pOutputFont;
  176.   ((CNetManagerDlg*)m_pMainWnd)->m_pOutputFont = new CFont;
  177.   CFontDialog dlgFont;
  178.   if(dlgFont.DoModal() == IDOK)
  179.   {
  180.     if(((CNetManagerDlg*)m_pMainWnd)->m_pOutputFont->CreatePointFont(dlgFont.GetSize(), dlgFont.GetFaceName()))
  181.     {
  182.       ((CNetManagerDlg*)m_pMainWnd)->m_pOutput->SetFont(((CNetManagerDlg*)m_pMainWnd)->m_pOutputFont);
  183.       ((CNetManagerDlg*)m_pMainWnd)->m_nOutputFontSize = (dlgFont.GetSize()) / 10;
  184.       ((CNetManagerDlg*)m_pMainWnd)->m_sOutputFontFace = dlgFont.GetFaceName();
  185.     }
  186.     else
  187.       AfxMessageBox("Error - Setting font");
  188.   }
  189. }
  190. /////////////////////////////////////////////////////////////////////////////
  191. void CNetManagerApp::OnHistoryfont() 
  192. {
  193.   delete ((CNetManagerDlg*)m_pMainWnd)->m_pHistoryFont;
  194.   ((CNetManagerDlg*)m_pMainWnd)->m_pHistoryFont = new CFont;
  195.   CFontDialog dlgFont;
  196.   if(dlgFont.DoModal() == IDOK)
  197.   {
  198.     if(((CNetManagerDlg*)m_pMainWnd)->m_pHistoryFont->CreatePointFont(dlgFont.GetSize(), dlgFont.GetFaceName()))
  199.     {
  200.       ((CNetManagerDlg*)m_pMainWnd)->m_History.SetFont(((CNetManagerDlg*)m_pMainWnd)->m_pHistoryFont);
  201.       ((CNetManagerDlg*)m_pMainWnd)->m_nHistoryFontSize = (dlgFont.GetSize()) / 10;
  202.       ((CNetManagerDlg*)m_pMainWnd)->m_sHistoryFontFace = dlgFont.GetFaceName();
  203.     }
  204.     else
  205.       AfxMessageBox("Error - Setting font");
  206.   }
  207. }
  208. /////////////////////////////////////////////////////////////////////////////
  209. void CNetManagerApp::OnSave() 
  210. {
  211.   ((CNetManagerDlg*)m_pMainWnd)->SaveSettings();
  212. }
  213. /////////////////////////////////////////////////////////////////////////////
  214. void CNetManagerApp::OnStartall() 
  215. {
  216.   ((CNetManagerDlg*)m_pMainWnd)->OnStart();
  217. }
  218. /////////////////////////////////////////////////////////////////////////////
  219. void CNetManagerApp::OnEndall() 
  220. {
  221.   ((CNetManagerDlg*)m_pMainWnd)->OnEnd();
  222. }
  223. /////////////////////////////////////////////////////////////////////////////
  224. void CNetManagerApp::OnQuit() 
  225. {
  226.   ((CNetManagerDlg*)m_pMainWnd)->OnCancel();
  227. }
  228. /////////////////////////////////////////////////////////////////////////////
  229. void CNetManagerApp::OnAbout() 
  230. {
  231. CAboutDlg aboutDlg;
  232. aboutDlg.DoModal();
  233. }
  234. /////////////////////////////////////////////////////////////////////////////
  235. void CNetManagerApp::OnNetmonitor() 
  236. {
  237.   CMenu* pMenu = g_pMainWnd->GetMenu();
  238.   if(pMenu->GetMenuState(IDM_NETMONITOR, MF_UNCHECKED) == MF_UNCHECKED)
  239.   {
  240.     pMenu->CheckMenuItem(IDM_NETMONITOR, MF_CHECKED | MF_BYCOMMAND);
  241.     ((CNetManagerDlg*)m_pMainWnd)->m_pPageNet->m_Every.SetCheck(1);
  242.   }
  243.   else
  244.   {
  245.     pMenu->CheckMenuItem(IDM_NETMONITOR, MF_UNCHECKED | MF_BYCOMMAND);
  246.     ((CNetManagerDlg*)m_pMainWnd)->m_pPageNet->m_Every.SetCheck(0);
  247.   }
  248.   ((CNetManagerDlg*)m_pMainWnd)->m_pPageNet->OnEvery2();
  249. }
  250. /////////////////////////////////////////////////////////////////////////////
  251. void CNetManagerApp::OnPeoplemonitor() 
  252. {
  253.   CMenu* pMenu = g_pMainWnd->GetMenu();
  254.   if(pMenu->GetMenuState(IDM_PEOPLEMONITOR, MF_UNCHECKED) == MF_UNCHECKED)
  255.   {
  256.     pMenu->CheckMenuItem(IDM_PEOPLEMONITOR, MF_CHECKED | MF_BYCOMMAND);
  257.     ((CNetManagerDlg*)m_pMainWnd)->m_pPagePeople->m_Every.SetCheck(1);
  258.   }
  259.   else
  260.   {
  261.     pMenu->CheckMenuItem(IDM_PEOPLEMONITOR, MF_UNCHECKED | MF_BYCOMMAND);
  262.     ((CNetManagerDlg*)m_pMainWnd)->m_pPagePeople->m_Every.SetCheck(0);
  263.   }
  264.   ((CNetManagerDlg*)m_pMainWnd)->m_pPagePeople->OnEvery();
  265. }
  266. /////////////////////////////////////////////////////////////////////////////
  267. void CNetManagerApp::OnNotificationIcon() 
  268. {
  269.   CMenu* pMenu = g_pMainWnd->GetMenu();
  270.   pMenu->CheckMenuItem(IDM_NOTIFICATION_ICON, MF_CHECKED | MF_BYCOMMAND);
  271.   pMenu->CheckMenuItem(IDM_NOTIFICATION_WIN, MF_UNCHECKED | MF_BYCOMMAND);
  272.   g_bWinNotification = false;
  273. }
  274. /////////////////////////////////////////////////////////////////////////////
  275. void CNetManagerApp::OnNotificationWin() 
  276. {
  277.   CMenu* pMenu = g_pMainWnd->GetMenu();
  278.   pMenu->CheckMenuItem(IDM_NOTIFICATION_WIN, MF_CHECKED | MF_BYCOMMAND);
  279.   pMenu->CheckMenuItem(IDM_NOTIFICATION_ICON, MF_UNCHECKED | MF_BYCOMMAND);
  280.   g_bWinNotification = true;
  281. }
  282. /////////////////////////////////////////////////////////////////////////////
  283. void CNetManagerApp::OnOutputHide() 
  284. {
  285.   ((CNetManagerDlg*)m_pMainWnd)->HideOutput();
  286. }
  287. /////////////////////////////////////////////////////////////////////////////
  288. void CNetManagerApp::OnOutputShow() 
  289. {
  290.   ((CNetManagerDlg*)m_pMainWnd)->ShowOutput();
  291. }
  292. /////////////////////////////////////////////////////////////////////////////
  293. void CNetManagerApp::OnOutputClear() 
  294. {
  295.   ((CNetManagerDlg*)m_pMainWnd)->OnClearOutput();
  296. }
  297. /////////////////////////////////////////////////////////////////////////////
  298. void CNetManagerApp::OnExeimagesSmall() 
  299. {
  300.   CMenu* pMenu = g_pMainWnd->GetMenu();
  301.   pMenu->CheckMenuItem(IDM_EXEIMAGES_SMALL, MF_CHECKED | MF_BYCOMMAND);
  302.   pMenu->CheckMenuItem(IDM_EXEIMAGES_LARGE, MF_UNCHECKED | MF_BYCOMMAND);
  303.   g_bExeImages = false;
  304.   ((CNetManagerDlg*)m_pMainWnd)->m_pPageFiles->SetSmallImages();
  305. }
  306. /////////////////////////////////////////////////////////////////////////////
  307. void CNetManagerApp::OnExeimagesLarge() 
  308. {
  309.   CMenu* pMenu = g_pMainWnd->GetMenu();
  310.   pMenu->CheckMenuItem(IDM_EXEIMAGES_LARGE, MF_CHECKED | MF_BYCOMMAND);
  311.   pMenu->CheckMenuItem(IDM_EXEIMAGES_SMALL, MF_UNCHECKED | MF_BYCOMMAND);
  312.   g_bExeImages = true;
  313.   ((CNetManagerDlg*)m_pMainWnd)->m_pPageFiles->SetLargeImages();
  314. }
  315. /////////////////////////////////////////////////////////////////////////////
  316. void CNetManagerApp::OnPeopleimagesSmall() 
  317. {
  318.   CMenu* pMenu = g_pMainWnd->GetMenu();
  319.   pMenu->CheckMenuItem(IDM_PEOPLEIMAGES_SMALL, MF_CHECKED | MF_BYCOMMAND);
  320.   pMenu->CheckMenuItem(IDM_PEOPLEIMAGES_LARGE, MF_UNCHECKED | MF_BYCOMMAND);
  321.   g_bPeopleImages = false;
  322.   ((CNetManagerDlg*)m_pMainWnd)->m_pPagePeople->SetSmallImages();
  323. }
  324. /////////////////////////////////////////////////////////////////////////////
  325. void CNetManagerApp::OnPeopleimagesLarge() 
  326. {
  327.   CMenu* pMenu = g_pMainWnd->GetMenu();
  328.   pMenu->CheckMenuItem(IDM_PEOPLEIMAGES_LARGE, MF_CHECKED | MF_BYCOMMAND);
  329.   pMenu->CheckMenuItem(IDM_PEOPLEIMAGES_SMALL, MF_UNCHECKED | MF_BYCOMMAND);
  330.   g_bPeopleImages = true;
  331.   ((CNetManagerDlg*)m_pMainWnd)->m_pPagePeople->SetLargeImages();
  332. }
  333. /////////////////////////////////////////////////////////////////////////////
  334. void CNetManagerApp::OnContents() 
  335. {
  336.   ((CNetManagerDlg*)m_pMainWnd)->GoToHelp();
  337.   ((CNetManagerDlg*)m_pMainWnd)->ShowOutput();
  338. }
  339. /////////////////////////////////////////////////////////////////////////////