www.gusucode.com > 一些VC++网络编程实例源代码-源码程序 > 一些VC++网络编程实例源代码-源码程序\code\十三章\WebDraw\WebDrawDoc.cpp
//Download by http://www.NewXing.com // WebDrawDoc.cpp : implementation of the CWebDrawDoc class // #include "stdafx.h" #include "WebDraw.h" #include "WebDrawDoc.h" #include "CntrItem.h" #include "SrvrItem.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // CWebDrawDoc IMPLEMENT_DYNCREATE(CWebDrawDoc, COleServerDoc) BEGIN_MESSAGE_MAP(CWebDrawDoc, COleServerDoc) //{{AFX_MSG_MAP(CWebDrawDoc) // NOTE - the ClassWizard will add and remove mapping macros here. // DO NOT EDIT what you see in these blocks of generated code! //}}AFX_MSG_MAP // Enable default OLE container implementation ON_UPDATE_COMMAND_UI(ID_EDIT_PASTE, COleServerDoc::OnUpdatePasteMenu) ON_UPDATE_COMMAND_UI(ID_EDIT_PASTE_LINK, COleServerDoc::OnUpdatePasteLinkMenu) ON_UPDATE_COMMAND_UI(ID_OLE_EDIT_CONVERT, COleServerDoc::OnUpdateObjectVerbMenu) ON_COMMAND(ID_OLE_EDIT_CONVERT, COleServerDoc::OnEditConvert) ON_UPDATE_COMMAND_UI(ID_OLE_EDIT_LINKS, COleServerDoc::OnUpdateEditLinksMenu) ON_COMMAND(ID_OLE_EDIT_LINKS, COleServerDoc::OnEditLinks) ON_UPDATE_COMMAND_UI_RANGE(ID_OLE_VERB_FIRST, ID_OLE_VERB_LAST, COleServerDoc::OnUpdateObjectVerbMenu) END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// // CWebDrawDoc construction/destruction CWebDrawDoc::CWebDrawDoc() { // Use OLE compound files EnableCompoundFile(); // TODO: add one-time construction code here } CWebDrawDoc::~CWebDrawDoc() { } BOOL CWebDrawDoc::OnNewDocument() { if (!COleServerDoc::OnNewDocument()) return FALSE; // TODO: add reinitialization code here // (SDI documents will reuse this document) return TRUE; } ///////////////////////////////////////////////////////////////////////////// // CWebDrawDoc server implementation COleServerItem* CWebDrawDoc::OnGetEmbeddedItem() { // OnGetEmbeddedItem is called by the framework to get the COleServerItem // that is associated with the document. It is only called when necessary. CWebDrawSrvrItem* pItem = new CWebDrawSrvrItem(this); ASSERT_VALID(pItem); return pItem; } ///////////////////////////////////////////////////////////////////////////// // CWebDrawDoc Active Document server implementation CDocObjectServer *CWebDrawDoc::GetDocObjectServer(LPOLEDOCUMENTSITE pDocSite) { return new CDocObjectServer(this, pDocSite); } ///////////////////////////////////////////////////////////////////////////// // CWebDrawDoc serialization void CWebDrawDoc::Serialize(CArchive& ar) { if (ar.IsStoring()) { // TODO: add storing code here } else { // TODO: add loading code here } // Calling the base class COleServerDoc enables serialization // of the container document's COleClientItem objects. COleServerDoc::Serialize(ar); } ///////////////////////////////////////////////////////////////////////////// // CWebDrawDoc diagnostics #ifdef _DEBUG void CWebDrawDoc::AssertValid() const { COleServerDoc::AssertValid(); } void CWebDrawDoc::Dump(CDumpContext& dc) const { COleServerDoc::Dump(dc); } #endif //_DEBUG ///////////////////////////////////////////////////////////////////////////// // CWebDrawDoc commands