SECMultiDocTemplate Class

class SECMultiDocTemplate: public CMultiDocTemplate

MDI Document Template with Docking Views enablement

Defined in: sdocmult.h

Comments

This document template class must be used to utilized Stingray Docking Views

Class Members

Construction/Initialization

SECMultiDocTemplate(UINT nIDResource, CRuntimeClass* pDocClass, CRuntimeClass* pViewClass, DWORD dwScxFlags = -1)

Constructor

SECMultiDocTemplate(UINT nIDResource, CRuntimeClass* pDocClass,CRuntimeClass* pFrameClass, CRuntimeClass* pViewClass,UINT nIDDockableResource = 0, CRuntimeClass* pDockableFrameClass = 0, CRuntimeClass* pControlBarClass = 0, DWORD dwScxFlags = -1)

Constructor

Operations

virtual CFrameWnd*  CreateNewFrame(CDocument* pDoc, CFrameWnd* pOther, BOOL bInitiallyDocked, int nDockedViewBarID = 0)

Create a new frame window, with the option of initially docked

virtual CDocument*  OpenDocumentFile( LPCTSTR lpszPathName, BOOL bMakeVisible = TRUE, BOOL bInitiallyDocked = FALSE, int nDockedViewBarID = 0)

Open a new document, with the option to create initially docked.

virtual CFrameWnd*  ToggleDocking(CFrameWnd* pFrame)

Toggle the docking state of the frame window parameter

virtual SECDockableFrame*  CreateNewDockableFrame(CDocument* pDoc, CFrameWnd* pOther,UINT nDockBarID = 0,const SECDockPos * pPos = 0, const SECDockSize * pSize = 0)

Create a dockable frame to wrap the docking view

virtual BOOL  IsDocked(const CFrameWnd* pFrame) const

Check if frame is currently docked

virtual SECDockableState  GetDockableState(const CFrameWnd* pFrame) const

Query current frame's docking state

virtual CFrameWnd*  Dock(CFrameWnd* pFrameOld)

Dock a frame

virtual CFrameWnd*  Dock(CFrameWnd* pFrameOld, UINT nDockBarID, const SECDockPos * pDockPos, const SECDockSize * pDockSize)

Dock a frame at a specific spot

virtual CFrameWnd*  Undock(CFrameWnd* pFrameOld)

Undock a frame

virtual void  ReparentAllChildren(CFrameWnd* pFrameOld, CFrameWnd* pFrameNew)

Reparent all children of the old frame to the new frame

virtual BOOL  ActivateDockableFrame(CFrameWnd* pFrameNew)

Activate the dockable frame passed in

virtual void  OnEnableSysCommandEx(CFrameWnd* pFrame, DWORD dwScxFlags)

Tailor WM_SYSCOMMANDEX commands of interest.

virtual void  EnableCaptionButton(BOOL bEnable=TRUE, BOOL bUpdate=TRUE)

Adds/Removes the SCXOPT_NO_CAPTION_BUTTON flag

virtual void  EnableRDblClick(BOOL bEnable=TRUE, BOOL bUpdate=TRUE)

Adds/Removes the SCXOPT_NO_HANDLE_RDBLCLK flag

virtual void  EnableContextMenu(BOOL bEnable, BOOL bUpdate=TRUE)

Adds/Removes the SCXOPT_NO_CONTEXTMENU flag. The context menu is displayed by right clicking in the caption.

virtual BOOL  IsCaptionButtonEnabled()

Returns TRUE if the SCXOPT_NO_CAPTION_BUTTON flag is NOT present

virtual BOOL  IsRDblClickEnabled()

Returns TRUE if the SCXOPT_NO_HANDLE_RDBLCLK flag is NOT present

virtual BOOL  IsContextMenuEnabled()

Returns TRUE if the SCXOPT_NO_CONTEXTMENU flag is NOT present

virtual void  ModifyOptions(DWORD dwRemove, DWORD dwAdd, BOOL bUpdate=TRUE)

Adds and/or removes SCXOPT flags from the template

virtual void  UpdateAllFrames()

Updates the SCXOPT flags for every frame window created using this doc template

virtual ISECVwDockFeedBack*  GetFeedbackInterface(CView* pView)

Return the docking feedback reciever interface. This can be NULL. Default does a dynamic_cast on CView* to get interface.

void  EnableReflection()

When CCtrlView derived classes are used call this method to enable notification messages to work.

DWORD  m_dwScxFlags

SCX flags passed to OnEnableSysCommandEx() for a new mdi child; default is SCXOPT_ENABLED | SCXOPT_NO_CAPTION_BUTTON

DWORD  m_dwDockableScxFlags

SCX flags passed to OnEnableSysCommandEx() for a new dockable frame; default is SCXOPT_ENABLED | SCXOPT_NO_CAPTION_BUTTON