undodlg.cpp
上传用户:lj3531212
上传日期:2007-06-18
资源大小:346k
文件大小:2k
源码类别:

绘图程序

开发平台:

Visual C++

  1. // UndoDlg.cpp :  
  2. //
  3. #include "stdafx.h"
  4. #include "GraphSoft.h"
  5. #include "UndoDlg.h"
  6. #ifdef _DEBUG
  7. #define new DEBUG_NEW
  8. #undef THIS_FILE
  9. static char THIS_FILE[] = __FILE__;
  10. #endif
  11. static UINT indicators[] =
  12. {
  13. ID_SEPARATOR,           
  14. ID_SEPARATOR,
  15. ID_SEPARATOR,
  16. ID_INDICATOR_KANA,
  17. ID_INDICATOR_CAPS,
  18. ID_INDICATOR_NUM,
  19. ID_INDICATOR_SCRL,
  20. };
  21. /////////////////////////////////////////////////////////////////////////////
  22. // CUndoDlg 
  23. CUndoDlg::CUndoDlg(CWnd* pParent /*=NULL*/)
  24. : CDialog(CUndoDlg::IDD, pParent)
  25. {
  26. //{{AFX_DATA_INIT(CUndoDlg)
  27. //}}AFX_DATA_INIT
  28. m_winPos.x = 0;
  29. m_winPos.y = 0;
  30. }
  31. void CUndoDlg::DoDataExchange(CDataExchange* pDX)
  32. {
  33. CDialog::DoDataExchange(pDX);
  34. //{{AFX_DATA_MAP(CUndoDlg)
  35. DDX_Control(pDX, IDC_UNDOLIST, m_list);
  36. //}}AFX_DATA_MAP
  37. }
  38. BEGIN_MESSAGE_MAP(CUndoDlg, CDialog)
  39. //{{AFX_MSG_MAP(CUndoDlg)
  40. ON_WM_NCACTIVATE()
  41. //}}AFX_MSG_MAP
  42. END_MESSAGE_MAP()
  43. /////////////////////////////////////////////////////////////////////////////
  44. // CUndoDlg  
  45. BOOL CUndoDlg::OnNcActivate(BOOL bActive) 
  46. {
  47. if (! bActive) {
  48. PostMessage(WM_CLOSE);
  49. }
  50. return CDialog::OnNcActivate(bActive);
  51. }
  52. BOOL CUndoDlg::OnInitDialog() 
  53. {
  54. CDialog::OnInitDialog();
  55. #if 0 // 
  56. // 
  57. SetWindowPos(NULL, m_winPos.x, m_winPos.y, 0, 0, SWP_NOSIZE|SWP_NOZORDER);
  58. // 
  59. m_list.m_pParentDlg = this;
  60. m_list.SetContents();
  61. // 
  62. switch (m_list.m_nID) {
  63. case ID_EDIT_UNDO:
  64. m_statusFormatString.LoadString(IDS_EDIT_UNDO_TIMES);
  65. break;
  66. case ID_EDIT_REDO:
  67. m_statusFormatString.LoadString(IDS_EDIT_REDO_TIMES);
  68. break;
  69. }
  70. #endif
  71. return TRUE;  
  72. }
  73. void CUndoDlg::SetStatus(long nTimes)
  74. {
  75. CString text;
  76. if (nTimes > 0) {
  77. text.Format(m_statusFormatString, nTimes);
  78. }
  79. CWnd* pWnd = GetDlgItem(IDC_STATUS);
  80. pWnd->SetWindowText(text);
  81. }
  82. void CUndoDlg::OnOK() 
  83. {
  84. m_list.OnUndo();
  85. CDialog::OnOK();
  86. }