fiveDoc.cpp
上传用户:kkzhu_0
上传日期:2007-01-05
资源大小:214k
文件大小:3k
源码类别:

棋牌游戏

开发平台:

Visual C++

  1. // fiveDoc.cpp : implementation of the CFiveDoc class
  2. //
  3. #include "stdafx.h"
  4. #ifdef _DEBUG
  5. #define new DEBUG_NEW
  6. #undef THIS_FILE
  7. static char THIS_FILE[] = __FILE__;
  8. #endif
  9. /////////////////////////////////////////////////////////////////////////////
  10. BOOL CFiveDoc::m_DocWb  = 1;
  11. BOOL CFiveDoc::m_DocXuan= 1;
  12. BOOL CFiveDoc::m_OnOff  = 1;
  13. /////////////////////////////////////////////////////////////////////////////
  14. // CFiveDoc
  15. IMPLEMENT_DYNCREATE(CFiveDoc, CDocument)
  16. BEGIN_MESSAGE_MAP(CFiveDoc, CDocument)
  17. //{{AFX_MSG_MAP(CFiveDoc)
  18. ON_UPDATE_COMMAND_UI(ID_SET_SHOWNEW, OnUpdateSetShownew)
  19. ON_COMMAND(ID_SET_SHOWNEW, OnSetShownew)
  20. //}}AFX_MSG_MAP
  21. END_MESSAGE_MAP()
  22. /////////////////////////////////////////////////////////////////////////////
  23. // CFiveDoc construction/destruction
  24. CFiveDoc::CFiveDoc()
  25. {
  26. // TODO: add one-time construction code here
  27. }
  28. CFiveDoc::~CFiveDoc()
  29. {
  30. }
  31. BOOL CFiveDoc::OnNewDocument()
  32. {
  33. if (!CDocument::OnNewDocument())
  34. return FALSE;
  35. CFive five;
  36. if( m_OnOff == 0 )
  37. {
  38. CNewDlg dlg(AfxGetMainWnd());
  39. if( dlg.DoModal() == IDCANCEL )
  40. return FALSE;
  41. // TODO: add reinitialization code here
  42. // (SDI documents will reuse this document)
  43. if( dlg.m_Wb )
  44. five.WzqInit( 'W',dlg.m_Xian );
  45. else
  46. five.WzqInit( 'B',dlg.m_Xian );
  47. m_OnOff   = dlg.m_Check;
  48. m_DocWb   = dlg.m_Wb;
  49. m_DocXuan = dlg.m_Xian;
  50. }
  51. else
  52. {
  53. if( m_DocWb )
  54. five.WzqInit( 'W',m_DocXuan );
  55. else
  56. five.WzqInit( 'B',m_DocXuan );
  57. }
  58. POSITION pos;
  59. CFiveView* p;
  60. pos = GetFirstViewPosition();
  61. p = (CFiveView*)GetNextView( pos );
  62. p -> m_Flags = TRUE;
  63. return TRUE;
  64. }
  65. /////////////////////////////////////////////////////////////////////////////
  66. // CFiveDoc serialization
  67. void CFiveDoc::Serialize(CArchive& ar)
  68. {
  69. CFive five;
  70. if (ar.IsStoring())
  71. {
  72. // TODO: add storing code here
  73. }
  74. else
  75. {
  76. // TODO: add loading code here
  77. }
  78. five.Serialize( ar );
  79. }
  80. /////////////////////////////////////////////////////////////////////////////
  81. // CFiveDoc diagnostics
  82. #ifdef _DEBUG
  83. void CFiveDoc::AssertValid() const
  84. {
  85. CDocument::AssertValid();
  86. }
  87. void CFiveDoc::Dump(CDumpContext& dc) const
  88. {
  89. CDocument::Dump(dc);
  90. }
  91. #endif //_DEBUG
  92. /////////////////////////////////////////////////////////////////////////////
  93. // CFiveDoc commands
  94. void CFiveDoc::ReportSaveLoadException(LPCTSTR lpszPathName, CException* e, BOOL bSaving, UINT nIDPDefault) 
  95. {
  96. // TODO: Add your specialized code here and/or call the base class
  97. if(e->IsKindOf( RUNTIME_CLASS( CFileException )))
  98. {
  99. if(((CFileException*)e)->m_cause==CFileException::accessDenied)
  100. {
  101.     POSITION pos;
  102.     pos = GetFirstViewPosition();
  103. CErrorDlg Dlg(GetNextView(pos));
  104. Dlg.Name = lpszPathName;
  105. Dlg.Info = "不是一个五子棋 3.0文件";
  106. Dlg.DoModal();
  107. return;
  108. }
  109. }
  110. CDocument::ReportSaveLoadException(lpszPathName, e, bSaving, nIDPDefault);
  111. }
  112. void CFiveDoc::OnUpdateSetShownew(CCmdUI* pCmdUI) 
  113. {
  114. // TODO: Add your command update UI handler code here
  115. if( m_OnOff == 0 )
  116. {
  117. pCmdUI->SetCheck(1);
  118. }
  119. else
  120. {
  121. pCmdUI->SetCheck(0);
  122. }
  123. }
  124. void CFiveDoc::OnSetShownew() 
  125. {
  126. // TODO: Add your command handler code here
  127. if( m_OnOff == 0 )
  128. m_OnOff = 1;
  129. else
  130. m_OnOff = 0;
  131. }