EditDoc.cpp
上传用户:shilei2004
上传日期:2020-07-18
资源大小:83k
文件大小:3k
源码类别:

RichEdit

开发平台:

Visual C++

  1. // EditDoc.cpp : implementation of the CEditDoc class
  2. // Download by http://www.codefans.net
  3. #include "stdafx.h"
  4. #include "Edit.h"
  5. #include "KSFileDialog.h"
  6. #include "EditDoc.h"
  7. #include "CntrItem.h"
  8. #ifdef _DEBUG
  9. #define new DEBUG_NEW
  10. #undef THIS_FILE
  11. static char THIS_FILE[] = __FILE__;
  12. #endif
  13. /////////////////////////////////////////////////////////////////////////////
  14. // CEditDoc
  15. IMPLEMENT_DYNCREATE(CEditDoc, CRichEditDoc)
  16. BEGIN_MESSAGE_MAP(CEditDoc, CRichEditDoc)
  17. //{{AFX_MSG_MAP(CEditDoc)
  18. // NOTE - the ClassWizard will add and remove mapping macros here.
  19. //    DO NOT EDIT what you see in these blocks of generated code!
  20. //}}AFX_MSG_MAP
  21. // Enable default OLE container implementation
  22. ON_UPDATE_COMMAND_UI(ID_OLE_EDIT_LINKS, CRichEditDoc::OnUpdateEditLinksMenu)
  23. ON_COMMAND(ID_OLE_EDIT_LINKS, CRichEditDoc::OnEditLinks)
  24. ON_UPDATE_COMMAND_UI_RANGE(ID_OLE_VERB_FIRST, ID_OLE_VERB_LAST, CRichEditDoc::OnUpdateObjectVerbMenu)
  25. ON_COMMAND(ID_FILE_SEND_MAIL, OnFileSendMail)
  26. ON_UPDATE_COMMAND_UI(ID_FILE_SEND_MAIL, OnUpdateFileSendMail)
  27. END_MESSAGE_MAP()
  28. /////////////////////////////////////////////////////////////////////////////
  29. // CEditDoc construction/destruction
  30. CEditDoc::CEditDoc()
  31. {
  32. // TODO: add one-time construction code here
  33. }
  34. CEditDoc::~CEditDoc()
  35. {
  36. }
  37. BOOL CEditDoc::OnNewDocument()
  38. {
  39. if (!CRichEditDoc::OnNewDocument())
  40. return FALSE;
  41. // TODO: add reinitialization code here
  42. // (SDI documents will reuse this document)
  43. return TRUE;
  44. }
  45. CRichEditCntrItem* CEditDoc::CreateClientItem(REOBJECT* preo) const
  46. {
  47. // cast away constness of this
  48. return new CEditCntrItem(preo, (CEditDoc*) this);
  49. }
  50. /////////////////////////////////////////////////////////////////////////////
  51. // CEditDoc serialization
  52. void CEditDoc::Serialize(CArchive& ar)
  53. {
  54. if (ar.IsStoring())
  55. {
  56. // TODO: add storing code here
  57. }
  58. else
  59. {
  60. // TODO: add loading code here
  61. }
  62. // Calling the base class CRichEditDoc enables serialization
  63. //  of the container document's COleClientItem objects.
  64. // TODO: set CRichEditDoc::m_bRTF = FALSE if you are serializing as text
  65. // CRichEditDoc::m_bRTF = FALSE;
  66. CRichEditDoc::Serialize(ar);
  67. }
  68. /////////////////////////////////////////////////////////////////////////////
  69. // CEditDoc diagnostics
  70. #ifdef _DEBUG
  71. void CEditDoc::AssertValid() const
  72. {
  73. CRichEditDoc::AssertValid();
  74. }
  75. void CEditDoc::Dump(CDumpContext& dc) const
  76. {
  77. CRichEditDoc::Dump(dc);
  78. }
  79. #endif //_DEBUG
  80. /////////////////////////////////////////////////////////////////////////////
  81. // CEditDoc commands
  82. BOOL CEditDoc::DoSave(LPCTSTR lpszPathName, BOOL bReplace)
  83. {
  84. CKSFileDialog dlgFile(FALSE);
  85. dlgFile.SetDocumentPointer(this);
  86. dlgFile.SetAppPointer(AfxGetApp());
  87. dlgFile.SetMyParent(AfxGetMainWnd());
  88. return dlgFile.DoSave(lpszPathName,bReplace);
  89. }