www.pudn.com > WORD_xoffice_src.rar > CntrItem.h


// CntrItem.h : interface of the CXOfficeCntrItem class 
// 
 
#if !defined(AFX_CNTRITEM_H__04DE9788_E920_11D3_8D22_0000E8D9FD76__INCLUDED_) 
#define AFX_CNTRITEM_H__04DE9788_E920_11D3_8D22_0000E8D9FD76__INCLUDED_ 
 
#if _MSC_VER > 1000 
#pragma once 
#endif // _MSC_VER > 1000 
 
#include  
 
class CXOfficeDoc; 
class CXOfficeView; 
 
class CXOfficeCntrItem : public COleDocObjectItem 
{ 
  DECLARE_SERIAL(CXOfficeCntrItem) 
 
// Constructors 
public: 
  CXOfficeCntrItem(CXOfficeDoc* pContainer = NULL); 
		// Note: pContainer is allowed to be NULL to enable IMPLEMENT_SERIALIZE. 
		//  IMPLEMENT_SERIALIZE requires the class have a constructor with 
		//  zero arguments.  Normally, OLE items are constructed with a 
		//  non-NULL document pointer. 
 
	CXOfficeCntrItem(CXOfficeDoc* pContainer,LPCTSTR); 
	bool         m_isCreate; 
	int          m_who;      // 0 - ?, 1 - Word, 2 - Excel 
	IDispatchPtr m_disp; 
 
	bool         CreateItem  (LPCTSTR); 
	LPDISPATCH   GetIDispatch(); 
	void         AttachDisp  (); 
	void         ActivateDisp(); 
	void         CloseDisp   (); 
	void         SetIcon     (CFrameWnd*); 
 
// Attributes 
public: 
  CXOfficeDoc* GetDocument() 
    { return (CXOfficeDoc*)COleDocObjectItem::GetDocument(); } 
  CXOfficeView* GetActiveView() 
    { return (CXOfficeView*)COleDocObjectItem::GetActiveView(); } 
 
	// ClassWizard generated virtual function overrides 
  //{{AFX_VIRTUAL(CXOfficeCntrItem) 
	public: 
	virtual void OnChange(OLE_NOTIFICATION wNotification, DWORD dwParam); 
	virtual void OnActivate(); 
	protected: 
	virtual void OnDeactivateUI(BOOL bUndoable); 
	virtual BOOL OnChangeItemPosition(const CRect& rectPos); 
	//}}AFX_VIRTUAL 
 
// Implementation 
public: 
  ~CXOfficeCntrItem(); 
#ifdef _DEBUG 
	virtual void AssertValid() const; 
	virtual void Dump(CDumpContext& dc) const; 
#endif 
	virtual void Serialize(CArchive& ar); 
}; 
 
///////////////////////////////////////////////////////////////////////////// 
 
//{{AFX_INSERT_LOCATION}} 
// Microsoft Visual C++ will insert additional declarations immediately before the previous line. 
 
#endif // !defined(AFX_CNTRITEM_H__04DE9788_E920_11D3_8D22_0000E8D9FD76__INCLUDED_)