%
% automatically generated by HelpGen $Revision: 1.3 $ from
% controlbar.h at 21/Jan/02 21:14:14
%


\section{\class{cbDockPane}}\label{cbdockpane}


This class manages containment and control of control bars
along one of the four edges of the parent frame.

\wxheading{Derived from}

\helpref{wxObject}{wxobject}

\wxheading{Include files}

<wx/fl/controlbar.h>

\wxheading{Data structures}

\latexignore{\rtfignore{\wxheading{Members}}}


\membersection{cbDockPane::cbDockPane}\label{cbdockpanecbdockpane}

\func{}{cbDockPane}{\param{int }{alignment}, \param{wxFrameLayout* }{pPanel}}

Constructor, taking alignment and layout panel.


\func{}{cbDockPane}{\void}

public members Default constructor.


\membersection{cbDockPane::\destruct{cbDockPane}}\label{cbdockpanedtor}

\func{}{\destruct{cbDockPane}}{\void}

Destructor.


\membersection{cbDockPane::BarPresent}\label{cbdockpanebarpresent}

\func{bool}{BarPresent}{\param{cbBarInfo* }{pBar}}

Returns TRUE if the given bar is present in this pane.


\membersection{cbDockPane::CalcLengthRatios}\label{cbdockpanecalclengthratios}

\func{void}{CalcLengthRatios}{\param{cbRowInfo* }{pInRow}}

Calculate lengths.
Internal function called by plugins.


\membersection{cbDockPane::ContractBar}\label{cbdockpanecontractbar}

\func{void}{ContractBar}{\param{cbBarInfo* }{pBar}}

Contracts the bar.
Internal function called by plugins.


\membersection{cbDockPane::DoInsertBar}\label{cbdockpanedoinsertbar}

\func{void}{DoInsertBar}{\param{cbBarInfo* }{pBar}, \param{int }{rowNo}}

Inserts the bar at the given row number.
Internal function called by plugins.


\membersection{cbDockPane::DrawHorizHandle}\label{cbdockpanedrawhorizhandle}

\func{void}{DrawHorizHandle}{\param{wxDC\& }{dc}, \param{int }{x}, \param{int }{y}, \param{int }{width}}

Row/bar resizing related helper-method.


\membersection{cbDockPane::DrawVertHandle}\label{cbdockpanedrawverthandle}

\func{void}{DrawVertHandle}{\param{wxDC\& }{dc}, \param{int }{x}, \param{int }{y}, \param{int }{height}}

protected really (accessed only by plugins) Row/bar resizing related helper-method.


\membersection{cbDockPane::ExpandBar}\label{cbdockpaneexpandbar}

\func{void}{ExpandBar}{\param{cbBarInfo* }{pBar}}

Expands the bar.
Internal function called by plugins.


\membersection{cbDockPane::FinishDrawInArea}\label{cbdockpanefinishdrawinarea}

\func{void}{FinishDrawInArea}{\param{const wxRect\& }{area}}

Generates cbFinishDrawInAreaEvent and sends it to the layout.
Internal function called by plugins.


\membersection{cbDockPane::FrameToPane}\label{cbdockpaneframetopane}

\func{void}{FrameToPane}{\param{int* }{x}, \param{int* }{y}}

Coordinate translation between parent's frame and this pane.
Internal function called by plugins.


\func{void}{FrameToPane}{\param{wxRect* }{pRect}}

Coordinate translation between parent's frame and this pane.
Internal function called by plugins.


\membersection{cbDockPane::GetAlignment}\label{cbdockpanegetalignment}

\func{int}{GetAlignment}{\void}

Returns the alignment for this pane. The value is one of
FL\_ALIGN\_TOP, FL\_ALIGN\_BOTTOM, FL\_ALIGN\_LEFT, FL\_ALIGN\_RIGHT.


\membersection{cbDockPane::GetBarInfoByWindow}\label{cbdockpanegetbarinfobywindow}

\func{cbBarInfo*}{GetBarInfoByWindow}{\param{wxWindow* }{pBarWnd}}

Finds the bar information by corresponding window.


\membersection{cbDockPane::GetBarResizeRange}\label{cbdockpanegetbarresizerange}

\func{void}{GetBarResizeRange}{\param{cbBarInfo* }{pBar}, \param{int* }{from}, \param{int* }{till}, \param{bool }{forLeftHandle}}

Returns the bar's resize range.


\membersection{cbDockPane::GetDockingState}\label{cbdockpanegetdockingstate}

\func{int}{GetDockingState}{\void}

Returns wxCBAR\_DOCKED\_HORIZONTALLY if the alignment is top or bottom,
or wxCBAR\_DOCKED\_VERTICALLY otherwise.


\membersection{cbDockPane::GetFirstRow}\label{cbdockpanegetfirstrow}

\func{cbRowInfo*}{GetFirstRow}{\void}

Returns the first row.


\membersection{cbDockPane::GetMinimalRowHeight}\label{cbdockpanegetminimalrowheight}

\func{int}{GetMinimalRowHeight}{\param{cbRowInfo* }{pRow}}

Returns the minimal row height for the given row.
Internal function called by plugins.


\membersection{cbDockPane::GetNotFixedBarsCount}\label{cbdockpanegetnotfixedbarscount}

\func{int}{GetNotFixedBarsCount}{\param{cbRowInfo* }{pRow}}

Returns the number of bars whose size is not fixed.
Internal function called by plugins.


\membersection{cbDockPane::GetPaneHeight}\label{cbdockpanegetpaneheight}

\func{int}{GetPaneHeight}{\void}

Returns the height in the pane's coordinates.


\membersection{cbDockPane::GetRealRect}\label{cbdockpanegetrealrect}

\func{wxRect\&}{GetRealRect}{\void}

Returns the bounds of the pane, in parent coordinates.


\membersection{cbDockPane::GetRow}\label{cbdockpanegetrow}

\func{cbRowInfo*}{GetRow}{\param{int }{row}}

protected really (accessed only by plugins) Returns the row info for a row index. Internal function called by plugins.


\membersection{cbDockPane::GetRowAt}\label{cbdockpanegetrowat}

\func{int}{GetRowAt}{\param{int }{paneY}}

Returns the row at the given vertical position.
Returns -1 if the row is not present at given vertical position.
Internal function called by plugins.


\func{int}{GetRowAt}{\param{int }{upperY}, \param{int }{lowerY}}

Returns the row between the given vertical positions.
Returns -1 if the row is not present.
Internal function called by plugins.


\membersection{cbDockPane::GetRowIndex}\label{cbdockpanegetrowindex}

\func{int}{GetRowIndex}{\param{cbRowInfo* }{pRow}}

Returns the row index for the given row info.  Internal function called by plugins.


\membersection{cbDockPane::GetRowList}\label{cbdockpanegetrowlist}

\func{RowArrayT\&}{GetRowList}{\void}

Returns an array of rows. Used by updates-managers.


\membersection{cbDockPane::GetRowResizeRange}\label{cbdockpanegetrowresizerange}

\func{void}{GetRowResizeRange}{\param{cbRowInfo* }{pRow}, \param{int* }{from}, \param{int* }{till}, \param{bool }{forUpperHandle}}

Returns the row's resize range.


\membersection{cbDockPane::GetRowShapeData}\label{cbdockpanegetrowshapedata}

\func{void}{GetRowShapeData}{\param{cbRowInfo* }{pRow}, \param{wxList* }{pLst}}

Returns row shape data.
cbBarShapeData objects will be added to the given pLst.
cbBarShapeData is used for storing the original bar's positions in the row,
when the 'non-destructive-friction' option is turned on.


\membersection{cbDockPane::GetRowY}\label{cbdockpanegetrowy}

\func{int}{GetRowY}{\param{cbRowInfo* }{pRow}}

Gets the vertical position at the given row.
Internal function called by plugins.


\membersection{cbDockPane::HasNotFixedBarsLeft}\label{cbdockpanehasnotfixedbarsleft}

\func{bool}{HasNotFixedBarsLeft}{\param{cbBarInfo* }{pBar}}

Returns TRUE if there are any variable-sized rows to the left of this one.
Internal function called by plugins.


\membersection{cbDockPane::HasNotFixedBarsRight}\label{cbdockpanehasnotfixedbarsright}

\func{bool}{HasNotFixedBarsRight}{\param{cbBarInfo* }{pBar}}

Returns TRUE if there are any variable-sized rows to the right of this one.
Internal function called by plugins.


\membersection{cbDockPane::HasNotFixedRowsAbove}\label{cbdockpanehasnotfixedrowsabove}

\func{bool}{HasNotFixedRowsAbove}{\param{cbRowInfo* }{pRow}}

Returns TRUE if there are any variable-sized rows above this one.
Internal function called by plugins.


\membersection{cbDockPane::HasNotFixedRowsBelow}\label{cbdockpanehasnotfixedrowsbelow}

\func{bool}{HasNotFixedRowsBelow}{\param{cbRowInfo* }{pRow}}

Returns TRUE if there are any variable-sized rows below this one.
Internal function called by plugins.


\membersection{cbDockPane::HasPoint}\label{cbdockpanehaspoint}

\func{bool}{HasPoint}{\param{const wxPoint\& }{pos}, \param{int }{x}, \param{int }{y}, \param{int }{width}, \param{int }{height}}

Returns TRUE if pos is within the given rectangle.
Internal function called by plugins.


\membersection{cbDockPane::HitTestPaneItems}\label{cbdockpanehittestpaneitems}

\func{int}{HitTestPaneItems}{\param{const wxPoint\& }{pos}, \param{cbRowInfo** }{ppRow}, \param{cbBarInfo** }{ppBar}}

Returns the result of hit-testing items in the pane.
See CB\_HITTEST\_RESULT enumerated type.
pos is the position in this pane's coordinates.


\membersection{cbDockPane::InitLinksForRow}\label{cbdockpaneinitlinksforrow}

\func{void}{InitLinksForRow}{\param{cbRowInfo* }{pRow}}

Sets up links between bars.
Internal function called by plugins.


\membersection{cbDockPane::InitLinksForRows}\label{cbdockpaneinitlinksforrows}

\func{void}{InitLinksForRows}{\void}

Sets up links between bars.
Internal function called by plugins.


\membersection{cbDockPane::InsertBar}\label{cbdockpaneinsertbar}

\func{void}{InsertBar}{\param{cbBarInfo* }{pBarInfo}}

Inserts bar and sets its position according to the preferred settings
given in pBarInfo.


\func{void}{InsertBar}{\param{cbBarInfo* }{pBar}, \param{const wxRect\& }{rect}}

Inserts the bar into this pane. rect is given in the parent frame's coordinates.


\func{void}{InsertBar}{\param{cbBarInfo* }{pBar}, \param{cbRowInfo* }{pIntoRow}}

Inserts the bar into the given row, with dimensions and position
stored in pBarInfo->mBounds. Returns the node of inserted bar.


\membersection{cbDockPane::InsertRow}\label{cbdockpaneinsertrow}

\func{void}{InsertRow}{\param{cbRowInfo* }{pRow}, \param{cbRowInfo* }{pBeforeRow}}

Inserts a row. Does not refresh the inserted row immediately.
If pBeforeRowNode is NULL, the row is appended to the end of pane's row list.


\membersection{cbDockPane::IsFixedSize}\label{cbdockpaneisfixedsize}

\func{bool}{IsFixedSize}{\param{cbBarInfo* }{pInfo}}

Returns TRUE if the bar's dimension information indicates a fixed size.
Internal function called by plugins.


\membersection{cbDockPane::IsHorizontal}\label{cbdockpaneishorizontal}

\func{bool}{IsHorizontal}{\void}

Returns TRUE if the pane is aligned to the top or bottom.


\membersection{cbDockPane::MatchesMask}\label{cbdockpanematchesmask}

\func{bool}{MatchesMask}{\param{int }{paneMask}}

Returns TRUE if the given mask matches the pane's mask.


\membersection{cbDockPane::PaintBar}\label{cbdockpanepaintbar}

\func{void}{PaintBar}{\param{cbBarInfo* }{pBar}, \param{wxDC\& }{dc}}

Calls PaintBarDecorations and PaintBarHandles.
Internal function called by plugins.


\membersection{cbDockPane::PaintBarDecorations}\label{cbdockpanepaintbardecorations}

\func{void}{PaintBarDecorations}{\param{cbBarInfo* }{pBar}, \param{wxDC\& }{dc}}

protected really (accessed only by plugins) Generates a cbDrawBarDecorEvent and sends it to the layout to paint the bar decorations.
Internal function called by plugins.


\membersection{cbDockPane::PaintBarHandles}\label{cbdockpanepaintbarhandles}

\func{void}{PaintBarHandles}{\param{cbBarInfo* }{pBar}, \param{wxDC\& }{dc}}

Generates a cbDrawBarHandlesEvent and sends it to the layout to paint the bar handles.
Internal function called by plugins.


\membersection{cbDockPane::PaintPane}\label{cbdockpanepaintpane}

\func{void}{PaintPane}{\param{wxDC\& }{dc}}

Paints the pane background, the row background and decorations,
and finally the pane decorations.
Internal function called by plugins.


\membersection{cbDockPane::PaintPaneBackground}\label{cbdockpanepaintpanebackground}

\func{void}{PaintPaneBackground}{\param{wxDC\& }{dc}}

Generates cbDrawPaneBkGroundEvent and sends it to the layout.
Internal function called by plugins.


\membersection{cbDockPane::PaintPaneDecorations}\label{cbdockpanepaintpanedecorations}

\func{void}{PaintPaneDecorations}{\param{wxDC\& }{dc}}

Generates cbDrawPaneDecorEvent and sends it to the layout.
Internal function called by plugins.


\membersection{cbDockPane::PaintRow}\label{cbdockpanepaintrow}

\func{void}{PaintRow}{\param{cbRowInfo* }{pRow}, \param{wxDC\& }{dc}}

Calls PaintRowBackground, PaintRowDecorations, PaintRowHandles.
Internal function called by plugins.


\membersection{cbDockPane::PaintRowBackground}\label{cbdockpanepaintrowbackground}

\func{void}{PaintRowBackground}{\param{cbRowInfo* }{pRow}, \param{wxDC\& }{dc}}

Generates cbDrawRowBkGroundEvent and sends it to the layout.
Internal function called by plugins.


\membersection{cbDockPane::PaintRowDecorations}\label{cbdockpanepaintrowdecorations}

\func{void}{PaintRowDecorations}{\param{cbRowInfo* }{pRow}, \param{wxDC\& }{dc}}

Calls PaintBarDecorations for each row.
Internal function called by plugins.


\membersection{cbDockPane::PaintRowHandles}\label{cbdockpanepaintrowhandles}

\func{void}{PaintRowHandles}{\param{cbRowInfo* }{pRow}, \param{wxDC\& }{dc}}

Generates cbDrawRowHandlesEvent and cbDrawRowDecorEvent and sends them to the layout.
Internal function called by plugins.


\membersection{cbDockPane::PaneToFrame}\label{cbdockpanepanetoframe}

\func{void}{PaneToFrame}{\param{wxRect* }{pRect}}

Coordinate translation between parent's frame and this pane.
Internal function called by plugins.


\func{void}{PaneToFrame}{\param{int* }{x}, \param{int* }{y}}

Coordinate translation between parent's frame and this pane.
Internal function called by plugins.


\membersection{cbDockPane::RecalcLayout}\label{cbdockpanerecalclayout}

\func{void}{RecalcLayout}{\void}

Generates events to perform layout calculations.


\membersection{cbDockPane::RecalcRowLayout}\label{cbdockpanerecalcrowlayout}

\func{void}{RecalcRowLayout}{\param{cbRowInfo* }{pRow}}

Generates a cbLayoutRowEvent event to recalculate row layouts.
Internal function called by plugins.


\membersection{cbDockPane::RemoveBar}\label{cbdockpaneremovebar}

\func{void}{RemoveBar}{\param{cbBarInfo* }{pBar}}

Removes the bar from this pane. Does not destroy the bar.


\membersection{cbDockPane::RemoveRow}\label{cbdockpaneremoverow}

\func{void}{RemoveRow}{\param{cbRowInfo* }{pRow}}

Removes the row from this pane. Does not destroy the row object.


\membersection{cbDockPane::ResizeBar}\label{cbdockpaneresizebar}

\func{void}{ResizeBar}{\param{cbBarInfo* }{pBar}, \param{int }{ofs}, \param{bool }{forLeftHandle}}

Row/bar resizing related helper-method.


\membersection{cbDockPane::ResizeRow}\label{cbdockpaneresizerow}

\func{void}{ResizeRow}{\param{cbRowInfo* }{pRow}, \param{int }{ofs}, \param{bool }{forUpperHandle}}

Row/bar resizing related helper-method.


\membersection{cbDockPane::SetBoundsInParent}\label{cbdockpanesetboundsinparent}

\func{void}{SetBoundsInParent}{\param{const wxRect\& }{rect}}

Set the position and dimensions of the pane in the parent frame's coordinates.


\membersection{cbDockPane::SetMargins}\label{cbdockpanesetmargins}

\func{void}{SetMargins}{\param{int }{top}, \param{int }{bottom}, \param{int }{left}, \param{int }{right}}

Sets pane's margins in frame's coordinate orientations.


\membersection{cbDockPane::SetPaneWidth}\label{cbdockpanesetpanewidth}

\func{void}{SetPaneWidth}{\param{int }{width}}

Sets pane's width in the pane's coordinates (including margins).


\membersection{cbDockPane::SetRowHeight}\label{cbdockpanesetrowheight}

\func{void}{SetRowHeight}{\param{cbRowInfo* }{pRow}, \param{int }{newHeight}}

Sets the row height for the given height. newHeight includes the height of row handles, if present.
Internal function called by plugins.


\membersection{cbDockPane::SetRowShapeData}\label{cbdockpanesetrowshapedata}

\func{void}{SetRowShapeData}{\param{cbRowInfo* }{pRowNode}, \param{wxList* }{pLst}}

Sets the shape data for the given row, using the data provided in pLst.
cbBarShapeData is used for storing the original bar's positions in the row,
when the 'non-destructive-friction' option is turned on.


\membersection{cbDockPane::SizeBar}\label{cbdockpanesizebar}

\func{void}{SizeBar}{\param{cbBarInfo* }{pBar}}

Generates a cbSizeBarWndEvent and sends it to the layout.
Internal function called by plugins.


\membersection{cbDockPane::SizePaneObjects}\label{cbdockpanesizepaneobjects}

\func{void}{SizePaneObjects}{\void}

Calls SizeRowObjects for each row.
Internal function called by plugins.


\membersection{cbDockPane::SizeRowObjects}\label{cbdockpanesizerowobjects}

\func{void}{SizeRowObjects}{\param{cbRowInfo* }{pRow}}

Calls SizeBar for each bar in the row.
Internal function called by plugins.


\membersection{cbDockPane::StartDrawInArea}\label{cbdockpanestartdrawinarea}

\func{wxDC*}{StartDrawInArea}{\param{const wxRect\& }{area}}

Generates cbStartDrawInAreaEvent and sends it to the layout.
Internal function called by plugins.


\membersection{cbDockPane::SyncRowFlags}\label{cbdockpanesyncrowflags}

\func{void}{SyncRowFlags}{\param{cbRowInfo* }{pRow}}

Sets up flags in the row information structure, so that
they match the changed state of row items correctly.
Internal function called by plugins.

