//*******************************************************************************
// COPYRIGHT NOTES
// ---------------
// This source code is a part of Tangram library.
// You may use, compile or redistribute it as part of your application
// for free. You cannot redistribute it as a part of a software development
// library without the agreement of the author. If the sources are
// distributed along with the application, you should leave the original
// copyright notes in the source code without any changes.
// This code can be used WITHOUT ANY WARRANTIES on your own risk.
//
// For the latest updates to this library, check site:
// http://www.tangramdev.com
//
// sunhui
//*******************************************************************************
#pragma once
// TangramDesignView.h : header file
//
/////////////////////////////////////////////////////////////////////////////
// CTangramDesignView view
class CTangramCntrItem;
class CTangramDoc;
class CTangramObject;
class CTangramDesignView : public CFormView
{
protected:
CTangramDesignView(); // protected constructor used by dynamic creation
DECLARE_DYNCREATE(CTangramDesignView)
// Attributes
public:
CTangramCntrItem* m_pOleItem;
CTangramDoc* m_pDoc;
CFrameWnd* m_pFrame;
int m_nRow, m_nCol;
CTangramObject* m_pTangramObject;
CTangramDoc* GetDocument();
CWnd* m_pDesignerWnd;
IWebBrowser2* m_pExternalDisp;
BOOL bObjCreated;
TangramObjType nViewType;
CWnd* pWndObj;
HWND hComWnd;
// Operations
public:
virtual void SetDesignerPage();
virtual void AddPage(long nPageIndex, CString strPageTitle, long nImageIndex);
virtual void DeleteTabPage(long nTabIndex);
virtual void DeleteContainer(int nType);
virtual void CreateTabWnd(CString strClsID, CString strCaption, CString strObjName, BOOL m_bDocking);
virtual void CreateSplitter(long nRow, long nCol, CString strTitle, long bDock);
virtual void CreateActiveItem(CString strDocID, CString strObjName,CString strCaption=_T(""),BOOL bDocking=FALSE);
int QueryProgIDType(CString strClsID);
void Navigate(LPCTSTR URL, DWORD dwFlags = 0,
LPCTSTR lpszTargetFrameName = NULL,
LPCTSTR lpszHeaders = NULL, LPVOID lpvPostData = NULL,
DWORD dwPostDataLen = 0);
BOOL LoadFromResource(UINT nRes);
BOOL CreateAxCtrl(CString strClsID=_T(""));
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CTangramDesignView)
public:
virtual void OnInitialUpdate();
virtual void OnPrepareDC(CDC* pDC, CPrintInfo* pInfo = NULL);
virtual BOOL Create(LPCTSTR lpszClassName, LPCTSTR lpszWindowName, DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID, CCreateContext* pContext = NULL);
protected:
virtual void OnDraw(CDC* pDC); // overridden to draw this view
virtual void OnActivateView(BOOL bActivate, CView* pActivateView, CView* pDeactiveView);
virtual BOOL PreCreateWindow(CREATESTRUCT& cs);
//}}AFX_VIRTUAL
// Implementation
protected:
virtual ~CTangramDesignView();
#ifdef _DEBUG
virtual void AssertValid() const;
virtual void Dump(CDumpContext& dc) const;
#endif
// Generated message map functions
protected:
//{{AFX_MSG(CTangramDesignView)
afx_msg void OnDestroy();
afx_msg void OnSize(UINT nType, int cx, int cy);
afx_msg int OnMouseActivate(CWnd* pDesktopWnd, UINT nHitTest, UINT message);
afx_msg void OnPaint();
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};