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

Ftp客户端

开发平台:

Visual C++

  1. #include "StdAfx.h"
  2. #include "Globals.h"
  3. #include "resource.h" // main symbols
  4. /////////////////////////////////////////////////////////////////////////////
  5. void g_WriteToOutput(BOOL bTerminate, LPCTSTR lpText)
  6. {
  7.   CString sText = lpText;
  8.   if(bTerminate)
  9.     sText += "rn";
  10.   ((CTabCtrl*)AfxGetMainWnd()->GetDlgItem(IDC_TABCTRL_OUTPUT))->SetCurSel(1);
  11.   g_Output->ShowWindow(SW_SHOWNA);
  12.   g_History->ShowWindow(SW_HIDE);
  13.   g_Output->SetSel(0, -1);
  14.   g_Output->SetSel(-1, -1);
  15.   g_Output->ReplaceSel(sText);
  16.   g_AnimateWait->Play(0, 0, 0);
  17. }
  18. /////////////////////////////////////////////////////////////////////////////
  19. void g_WriteToHistory(BOOL bTerminate, LPCTSTR lpText)
  20. {
  21.   CTime Time = CTime::GetCurrentTime();;
  22.   CString sText = lpText;
  23.   int nLength = strlen(lpText);
  24.   if(*(lpText + nLength - 2) == 'r' && *(lpText + nLength - 1) == 'n')
  25.     sText = sText.Left(sText.GetLength() - 2);    
  26.   sText += Time.Format(" - %A, %B %d, %Y, %H:%M:%S");
  27.   if(bTerminate)
  28.     sText += "rn";
  29.   ((CTabCtrl*)AfxGetMainWnd()->GetDlgItem(IDC_TABCTRL_OUTPUT))->SetCurSel(0);
  30.   g_History->ShowWindow(SW_SHOWNA);
  31.   g_Output->ShowWindow(SW_HIDE);
  32.   g_History->SetSel(0, -1);
  33.   g_History->SetSel(-1, -1);
  34.   g_History->ReplaceSel(sText);
  35.   g_AnimateWait->Play(0, 0, 0);
  36. }
  37. /////////////////////////////////////////////////////////////////////////////
  38. CString g_MakeWindowsTextLines(CString sInputText)
  39. {
  40.   int nInLen = sInputText.GetLength();
  41.   char* psInput = sInputText.GetBuffer(nInLen);
  42.   char* psOutputBuffer = new char[nInLen + 5000];
  43.   char* psOutputText = psOutputBuffer;
  44.   for(int i = 0; i < nInLen; i++)
  45.   {
  46.     *psOutputBuffer++ = *psInput++;
  47.     if(*psInput == 'n')
  48.     {
  49.       if(*(psInput - 1) != 'r')
  50.       {
  51.         *psOutputBuffer++ = 'r';
  52.         *psOutputBuffer = 'n';
  53.       }
  54.     }
  55.   }
  56.   *psOutputBuffer++ = '';
  57.   sInputText.ReleaseBuffer();
  58.   CString sOutput = psOutputText;
  59.   delete psOutputText;
  60.   return sOutput;
  61. }
  62. /////////////////////////////////////////////////////////////////////////////