CDockingPanesRow Class
Manages a list of panes that are located in the same horizontal or vertical row (column) of a dock site.
For more detail see the source code located in the VC\atlmfc\src\mfc folder of your Visual Studio installation.
class CDockingPanesRow : public CObject
Name | Description |
---|---|
CDockingPanesRow::CDockingPanesRow |
Default constructor. |
CDockingPanesRow
objects are created internally by dock site objects.
The following example demonstrates how to get a CDockingPanesRow
object from a CMFCAutoHideBar
object.
CMFCAutoHideBar *pParentBar = new CMFCAutoHideBar();
CDockingPanesRow *pParentRow = pParentBar->GetDockSiteRow();
Header: afxDockingPanesRow.h
virtual void AddPane(
CPane* pControlBar,
AFX_DOCK_METHOD dockMethod,
LPCRECT lpRect = NULL,
BOOL bAddLast = FALSE);
[in] pControlBar
[in] dockMethod
[in] lpRect
[in] bAddLast
virtual void AddPaneFromRow(
CPane* pControlBar,
AFX_DOCK_METHOD dockMethod);
[in] pControlBar
[in] dockMethod
Arranges docking panes in a row according to the specified margin and spacing parameters.
virtual void ArrangePanes(
int nMargin,
int nSpacing);
nMargin
[in] Specifies the offset, in pixels, of the first pane from the upper-left corner of the row.
nSpacing
[in] Specifies the spacing, in pixels, between panes.
Call this method to arrange panes in the row where they will dock. After calling this method, you must call CDockingPanesRow::FixupVirtualRects(FALSE, NULL)
.
virtual CSize CalcFixedLayout(
BOOL bStretch,
BOOL bHorz);
[in] bStretch
[in] bHorz
CDockingPanesRow(
CDockSite* pParentDockBar,
int nOffset,
int nHeight);
[in] pParentDockBar
[in] nOffset
[in] nHeight
virtual BOOL Create();
void ExpandStretchedPanes();
void ExpandStretchedPanesRect();
void FixupVirtualRects(
bool bMoveBackToVirtualRect,
CPane* pBarToExclude = NULL);
[in] bMoveBackToVirtualRect
[in] pBarToExclude
virtual int GetAvailableLength(BOOL bUseVirtualRect = FALSE) const;
[in] bUseVirtualRect
virtual void GetAvailableSpace(CRect& rect);
[in] rect
void GetClientRect(CRect& rect) const;
[in] rect
CDockSite* GetDockSite() const;
int GetExtraSpace() const;
void GetGroupFromPane(
CPane* pBar,
CObList& lst);
[in] pBar
[in] lst
int GetID() const;
int GetMaxPaneSize(BOOL bSkipHiddenBars = TRUE) const;
[in] bSkipHiddenBars
int GetPaneCount() const;
const CObList& GetPaneList() const;
DWORD GetRowAlignment() const;
int GetRowHeight() const;
int GetRowOffset() const;
virtual int GetVisibleCount();
void GetWindowRect(CRect& rect) const;
[in] rect
BOOL HasPane(CBasePane* pControlBar);
[in] pControlBar
virtual BOOL IsEmpty() const;
virtual BOOL IsExclusiveRow() const;
bool IsHorizontal() const;
virtual BOOL IsVisible() const;
virtual void Move(int nOffset);
[in] nOffset
void MovePane(
CPane* pControlBar,
CPoint ptOffset,
BOOL bSwapControlBars,
HDWP& hdwp);
void MovePane(
CPane* pControlBar,
CRect rectTarget,
HDWP& hdwp);
void MovePane(
CPane* pControlBar,
int nOffset,
bool bForward,
HDWP& hdwp);
void MovePane(
CPane* pControlBar,
int nAbsolutOffset,
HDWP& hdwp);
[in] pControlBar
[in] ptOffset
[in] bSwapControlBars
[in] hdwp
[in] rectTarget
[in] nOffset
[in] bForward
[in] nAbsolutOffset
virtual void OnResizePane(CBasePane* pControlBar);
[in] pControlBar
void RedrawAll();
virtual void RemovePane(CPane* pControlBar);
[in] pControlBar
virtual BOOL ReplacePane(
CPane* pBarOld,
CPane* pBarNew);
[in] pBarOld
[in] pBarNew
virtual void RepositionPanes(
CRect& rectNewParentBarArea,
UINT nSide = (UINT)-1,
BOOL bExpand = FALSE,
int nOffset = 0);
[in] rectNewParentBarArea
[in] nSide
[in] bExpand
[in] nOffset
virtual int Resize(int nOffset);
[in] nOffset
virtual int ResizeByPaneDivider(int /*ignored*/);
[in] ignored
void ScreenToClient(CRect& rect) const;
[in] rect
void SetExtra(
int nExtraSpace,
AFX_ROW_ALIGNMENT rowExtraAlign);
[in] nExtraSpace
[in] rowExtraAlign
virtual void ShowDockSiteRow(
BOOL bShow,
BOOL bDelay);
[in] bShow
[in] bDelay
virtual BOOL ShowPane(
CPane* pControlBar,
BOOL bShow,
BOOL bDelay = FALSE);
[in] pControlBar
[in] bShow
[in] bDelay
virtual void UpdateVisibleState(BOOL bDelay);
[in] bDelay
Hierarchy Chart
Classes
CObject Class
CDockSite Class
CPane Class