CPaneContainerManager Class

The CPaneContainerManager class manages the storage and display of the current docking layout. For more detail see the source code located in the VC\atlmfc\src\mfc folder of your Visual Studio installation.

Syntax

class CPaneContainerManager : public CObject

Members

Public Methods

Name Description
CPaneContainerManager::AddPane
CPaneContainerManager::AddPaneContainerManager
CPaneContainerManager::AddPaneContainerManagerToDockablePane
CPaneContainerManager::AddPanesToList
CPaneContainerManager::AddPaneToList
CPaneContainerManager::AddPaneToRecentPaneContainer
CPaneContainerManager::CalcRects
CPaneContainerManager::CanBeAttached
CPaneContainerManager::CheckAndRemoveNonValidPane
CPaneContainerManager::CheckForMiniFrameAndCaption
CPaneContainerManager::Create
CPaneContainerManager::DoesAllowDynInsertBefore
CPaneContainerManager::DoesContainFloatingPane
CPaneContainerManager::EnableGrippers
CPaneContainerManager::FindPaneContainer
CPaneContainerManager::FindTabbedPane
CPaneContainerManager::GetAvailableSpace
CPaneContainerManager::GetDefaultPaneDivider
CPaneContainerManager::GetDockSiteFrameWnd
CPaneContainerManager::GetFirstPane
CPaneContainerManager::GetFirstVisiblePane
CPaneContainerManager::GetMinMaxOffset
CPaneContainerManager::GetMinSize
CPaneContainerManager::GetNodeCount
CPaneContainerManager::GetPaneContainerRTC
CPaneContainerManager::GetPaneCount
CPaneContainerManager::GetTotalRefCount
CPaneContainerManager::GetVisiblePaneCount
CPaneContainerManager::GetWindowRect
CPaneContainerManager::HideAll
CPaneContainerManager::InsertPane
CPaneContainerManager::IsAutoHideMode
CPaneContainerManager::IsEmpty
CPaneContainerManager::IsRootPaneContainerVisible
CPaneContainerManager::NotifyPaneDivider
CPaneContainerManager::OnPaneDividerMove
CPaneContainerManager::OnShowPane
CPaneContainerManager::PaneFromPoint
CPaneContainerManager::ReleaseEmptyPaneContainers
CPaneContainerManager::RemoveAllPanesAndPaneDividers
CPaneContainerManager::RemoveNonValidPanes
CPaneContainerManager::RemovePaneDivider
CPaneContainerManager::RemovePaneFromPaneContainer
CPaneContainerManager::ReplacePane
CPaneContainerManager::ResizePaneContainers
CPaneContainerManager::Serialize Reads or writes this object from or to an archive. (Overrides CObject::Serialize.)
CPaneContainerManager::SetDefaultPaneDividerForPanes
CPaneContainerManager::SetPaneContainerRTC
CPaneContainerManager::SetResizeMode
CPaneContainerManager::StoreRecentDockSiteInfo

Remarks

The framework automatically creates instances of CPaneContainerManager objects and embeds them either into CPaneDivider Class objects or into CMultiPaneFrameWnd Class objects.

The CPaneContainerManager class stores a pointer to the root of a binary tree that is built from CPaneContainer objects.

Example

The following example demonstrates how to get a reference to a CPaneContainerManager object. This code snippet is part of the Set Pane Size sample.

// CMultiPaneFrameWnd* pParentMiniFrame
CPaneContainerManager &manager = pParentMiniFrame->GetPaneContainerManager();

Inheritance Hierarchy

CObject

CPaneContainerManager

Requirements

Header: afxpanecontainermanager.h

CPaneContainerManager::AddPane

virtual void AddPane(CDockablePane* pControlBarToAdd);

Parameters

[in] pControlBarToAdd

Remarks

CPaneContainerManager::AddPaneContainerManager

virtual BOOL AddPaneContainerManager(
    CPaneContainerManager& srcManager,
    BOOL bOuterEdge);

virtual BOOL AddPaneContainerManager(
    CDockablePane* pTargetControlBar,
    DWORD dwAlignment,
    CPaneContainerManager& srcManager,
    BOOL bCopy);

Parameters

[in] srcManager
[in] bOuterEdge
[in] pTargetControlBar
[in] dwAlignment
[in] bCopy

Return Value

Remarks

CPaneContainerManager::AddPaneContainerManagerToDockablePane

virtual BOOL AddPaneContainerManagerToDockablePane(
    CDockablePane* pTargetControlBar,
    CPaneContainerManager& srcManager);

Parameters

[in] pTargetControlBar
[in] srcManager

Return Value

Remarks

CPaneContainerManager::AddPanesToList

void AddPanesToList(
    CObList* plstControlBars,
    CObList* plstSliders);

Parameters

[in] plstControlBars
[in] plstSliders

Remarks

CPaneContainerManager::AddPaneToList

void AddPaneToList(CDockablePane* pControlBarToAdd);

Parameters

[in] pControlBarToAdd

Remarks

CPaneContainerManager::AddPaneToRecentPaneContainer

virtual CDockablePane* AddPaneToRecentPaneContainer(
    CDockablePane* pBarToAdd,
    CPaneContainer* pRecentContainer);

Parameters

[in] pBarToAdd
[in] pRecentContainer

Return Value

Remarks

CPaneContainerManager::CalcRects

void CalcRects(
    CRect& rectOriginal,
    CRect& rectInserted,
    CRect& rectSlider,
    DWORD& dwSliderStyle,
    DWORD dwAlignment,
    CSize sizeMinOriginal,
    CSize sizeMinInserted);

Parameters

[in] rectOriginal
[in] rectInserted
[in] rectSlider
[in] dwSliderStyle
[in] dwAlignment
[in] sizeMinOriginal
[in] sizeMinInserted

Remarks

CPaneContainerManager::CanBeAttached

virtual BOOL CanBeAttached() const;

Return Value

Remarks

CPaneContainerManager::CheckAndRemoveNonValidPane

BOOL CheckAndRemoveNonValidPane(CWnd* pWnd);

Parameters

[in] pWnd

Return Value

Remarks

CPaneContainerManager::CheckForMiniFrameAndCaption

virtual BOOL CheckForMiniFrameAndCaption(
    CPoint point,
    CDockablePane** ppTargetControlBar);

Parameters

[in] point
[in] ppTargetControlBar

Return Value

Remarks

CPaneContainerManager::Create

virtual BOOL Create(
    CWnd* pParentWnd,
    CPaneDivider* pDefaultSlider,
    CRuntimeClass* pContainerRTC = NULL);

Parameters

[in] pParentWnd
[in] pDefaultSlider
[in] pContainerRTC

Return Value

Remarks

CPaneContainerManager::DoesAllowDynInsertBefore

virtual BOOL DoesAllowDynInsertBefore() const;

Return Value

Remarks

CPaneContainerManager::DoesContainFloatingPane

virtual BOOL DoesContainFloatingPane();

Return Value

Remarks

CPaneContainerManager::EnableGrippers

virtual void EnableGrippers(BOOL bEnable);

Parameters

[in] bEnable

Remarks

CPaneContainerManager::FindPaneContainer

virtual CPaneContainer* FindPaneContainer(
    CDockablePane* pBar,
    BOOL& bLeftBar);

Parameters

[in] pBar
[in] bLeftBar

Return Value

Remarks

CPaneContainerManager::FindTabbedPane

CDockablePane* FindTabbedPane(UINT nID);

Parameters

[in] nID

Return Value

Remarks

CPaneContainerManager::GetAvailableSpace

virtual void GetAvailableSpace(CRect& rect) const;

Parameters

[in] rect

Remarks

CPaneContainerManager::GetDefaultPaneDivider

CPaneDivider* GetDefaultPaneDivider() const;

Return Value

Remarks

CPaneContainerManager::GetDockSiteFrameWnd

virtual CWnd* GetDockSiteFrameWnd();

Return Value

Remarks

CPaneContainerManager::GetFirstPane

virtual CBasePane* GetFirstPane() const;

Return Value

Remarks

CPaneContainerManager::GetFirstVisiblePane

virtual CWnd* GetFirstVisiblePane() const;

Return Value

Remarks

CPaneContainerManager::GetMinMaxOffset

virtual void GetMinMaxOffset(
    CPaneDivider* pSlider,
    int& nMinOffset,
    int& nMaxOffset,
    int& nStep);

Parameters

[in] pSlider
[in] nMinOffset
[in] nMaxOffset
[in] nStep

Remarks

CPaneContainerManager::GetMinSize

virtual void GetMinSize(CSize& size);

Parameters

[in] size

Remarks

CPaneContainerManager::GetNodeCount

int GetNodeCount() const;

Return Value

Remarks

CPaneContainerManager::GetPaneContainerRTC

CRuntimeClass* GetPaneContainerRTC() const;

Return Value

Remarks

CPaneContainerManager::GetPaneCount

int GetPaneCount() const;

Return Value

Remarks

CPaneContainerManager::GetTotalRefCount

int GetTotalRefCount() const;

Return Value

Remarks

CPaneContainerManager::GetVisiblePaneCount

virtual int GetVisiblePaneCount() const;

Return Value

Remarks

CPaneContainerManager::GetWindowRect

virtual void GetWindowRect(CRect& rect) const;

Parameters

[in] rect

Remarks

CPaneContainerManager::HideAll

virtual void HideAll();

Remarks

CPaneContainerManager::InsertPane

virtual BOOL InsertPane(
    CDockablePane* pControlBarToInsert,
    CDockablePane* pTargetControlBar,
    DWORD dwAlignment,
    LPCRECT lpRect = NULL,
    AFX_DOCK_METHOD dockMethod = DM_UNKNOWN);

Parameters

[in] pControlBarToInsert
[in] pTargetControlBar
[in] dwAlignment
[in] lpRect
[in] dockMethod

Return Value

Remarks

CPaneContainerManager::IsAutoHideMode

BOOL IsAutoHideMode() const;

Return Value

Remarks

CPaneContainerManager::IsEmpty

BOOL IsEmpty() const;

Return Value

Remarks

CPaneContainerManager::IsRootPaneContainerVisible

virtual BOOL IsRootPaneContainerVisible() const;

Return Value

Remarks

CPaneContainerManager::NotifyPaneDivider

void NotifyPaneDivider();

Remarks

CPaneContainerManager::OnPaneDividerMove

virtual int OnPaneDividerMove(
    CPaneDivider* pSlider,
    UINT uFlags,
    int nOffset,
    HDWP& hdwp);

Parameters

[in] pSlider
[in] uFlags
[in] nOffset
[in] hdwp

Return Value

Remarks

CPaneContainerManager::OnShowPane

virtual BOOL OnShowPane(
    CDockablePane* pBar,
    BOOL bShow);

Parameters

[in] pBar
[in] bShow

Return Value

Remarks

CPaneContainerManager::PaneFromPoint

virtual CDockablePane* PaneFromPoint(
    CPoint point,
    int nSensitivity,
    BOOL bExactBar,
    BOOL& bIsTabArea,
    BOOL& bCaption);

Parameters

[in] point
[in] nSensitivity
[in] bExactBar
[in] bIsTabArea
[in] bCaption

Return Value

Remarks

CPaneContainerManager::ReleaseEmptyPaneContainers

void ReleaseEmptyPaneContainers();

Remarks

CPaneContainerManager::RemoveAllPanesAndPaneDividers

void RemoveAllPanesAndPaneDividers();

Remarks

CPaneContainerManager::RemoveNonValidPanes

void RemoveNonValidPanes();

Remarks

CPaneContainerManager::RemovePaneDivider

virtual void RemovePaneDivider(CPaneDivider* pSlider);

Parameters

[in] pSlider

Remarks

CPaneContainerManager::RemovePaneFromPaneContainer

virtual BOOL RemovePaneFromPaneContainer(CDockablePane* pControlBar);

Parameters

[in] pControlBar

Return Value

Remarks

CPaneContainerManager::ReplacePane

virtual BOOL ReplacePane(
    CDockablePane* pBarOld,
    CDockablePane* pBarNew);

Parameters

[in] pBarOld
[in] pBarNew

Return Value

Remarks

CPaneContainerManager::ResizePaneContainers

virtual void ResizePaneContainers(
    UINT nSide,
    BOOL bExpand,
    int nOffset,
    HDWP& hdwp);

virtual void ResizePaneContainers(
    CRect rect,
    HDWP& hdwp);

Parameters

[in] nSide
[in] bExpand
[in] nOffset
[in] hdwp
[in] rect

Remarks

CPaneContainerManager::Serialize

void Serialize(CArchive& ar);

Parameters

[in] ar

Remarks

CPaneContainerManager::SetDefaultPaneDividerForPanes

void SetDefaultPaneDividerForPanes(CPaneDivider* pSlider);

Parameters

[in] pSlider

Remarks

CPaneContainerManager::SetPaneContainerRTC

void SetPaneContainerRTC(CRuntimeClass* pContainerRTC);

Parameters

[in] pContainerRTC

Remarks

CPaneContainerManager::SetResizeMode

virtual void SetResizeMode(BOOL bResize);

Parameters

[in] bResize

Remarks

CPaneContainerManager::StoreRecentDockSiteInfo

virtual void StoreRecentDockSiteInfo(CDockablePane* pBar);

Parameters

[in] pBar

Remarks

See also

Hierarchy Chart
Classes
CObject Class
CPaneContainer Class
CPaneDivider Class