This plugin adds row-dragging functionality to the pane. It handles mouse movement and pane background-erasing plugin events. The behaviour and appearance resembles drag and drop positioning of the toolbar rows in Netscape Communicator 4.xx.
Derived from
Include files
<wx/fl/rowdragpl.h>
Data structures
Members
cbRowDragPlugin::cbRowDragPlugin
cbRowDragPlugin::~cbRowDragPlugin
cbRowDragPlugin::CaptureDCArea
cbRowDragPlugin::CheckPrevItemInFocus
cbRowDragPlugin::Clone
cbRowDragPlugin::CollapseRow
cbRowDragPlugin::Draw3DPattern
cbRowDragPlugin::Draw3DRect
cbRowDragPlugin::DrawCollapsedRowIcon
cbRowDragPlugin::DrawCollapsedRowsBorder
cbRowDragPlugin::DrawEmptyRow
cbRowDragPlugin::DrawOrtoRomb
cbRowDragPlugin::DrawRectShade
cbRowDragPlugin::DrawRomb
cbRowDragPlugin::DrawRombShades
cbRowDragPlugin::DrawRowDragHint
cbRowDragPlugin::DrawRowsDragHintsBorder
cbRowDragPlugin::DrawTrianDown
cbRowDragPlugin::DrawTrianRight
cbRowDragPlugin::DrawTrianUp
cbRowDragPlugin::ExpandRow
cbRowDragPlugin::FinishOnScreenDraw
cbRowDragPlugin::GetCollapsedIconsPos
cbRowDragPlugin::GetCollapsedInconRect
cbRowDragPlugin::GetCollapsedRowIconHeight
cbRowDragPlugin::GetFirstRow
cbRowDragPlugin::GetHRowsCountForPane
cbRowDragPlugin::GetRowDragHintWidth
cbRowDragPlugin::GetRowHintRect
cbRowDragPlugin::HitTestCollapsedRowIcon
cbRowDragPlugin::HitTestRowDragHint
cbRowDragPlugin::InsertDraggedRowBefore
cbRowDragPlugin::ItemIsInFocus
cbRowDragPlugin::OnDrawPaneBackground
cbRowDragPlugin::OnInitPlugin
cbRowDragPlugin::OnLButtonDown
cbRowDragPlugin::OnLButtonUp
cbRowDragPlugin::OnMouseMove
cbRowDragPlugin::PrepareForRowDrag
cbRowDragPlugin::SetMouseCapture
cbRowDragPlugin::SetPaneMargins
cbRowDragPlugin::ShowDraggedRow
cbRowDragPlugin::ShowPaneImage
cbRowDragPlugin::UnhighlightItemInFocus
cbRowDragPlugin(wxFrameLayout* pLayout, int paneMask = wxALL_PANES)
Constructor, taking paren layout frame and pane mask.
cbRowDragPlugin()
Default constructor.
~cbRowDragPlugin()
Destructor.
wxBitmap* CaptureDCArea(wxDC& dc, wxRect& area)
Helper for drag and drop.
void CheckPrevItemInFocus(cbRowInfo* pRow, int iconIdx)
Helper for drag and drop.
cbPluginBase* Clone()
Clone function, returning a new instance of this class.
void CollapseRow(cbRowInfo* pRow)
Helper for drag and drop.
void Draw3DPattern(wxRect& inRect, wxDC& dc)
Implements 'hard-coded metafile' for Netscape Navigator look.
void Draw3DRect(wxRect& inRect, wxDC& dc, wxBrush& bkBrush)
Implements 'hard-coded metafile' for Netscape Navigator look.
void DrawCollapsedRowIcon(int index, wxDC& dc, bool isHighlighted)
Draws collapsed row icon (appearance-dependent).
void DrawCollapsedRowsBorder(wxDC& dc)
Draws collapsed rows border (appearance-dependent).
void DrawEmptyRow(wxDC& dc, wxRect& rowBounds)
Draws empty row (appearance-dependent).
void DrawOrtoRomb(wxRect& inRect, wxDC& dc, wxBrush& bkBrush)
Implements 'hard-coded metafile' for Netscape Navigator look.
void DrawRectShade(wxRect& inRect, wxDC& dc, int level, wxPen& upperPen, wxPen& lowerPen)
Implements 'hard-coded metafile' for Netscape Navigator look.
void DrawRomb(wxRect& inRect, wxDC& dc, wxBrush& bkBrush)
Implements 'hard-coded metafile' for Netscape Navigator look.
void DrawRombShades(wxPoint& p1, wxPoint& p2, wxPoint& p3, wxPoint& p4, wxDC& dc)
Implements 'hard-coded metafile' for Netscape Navigator look.
void DrawRowDragHint(cbRowInfo* pRow, wxDC& dc, bool isHighlighted)
Draws row drag hint (appearance-dependent).
void DrawRowsDragHintsBorder(wxDC& dc)
Draws rows drag hints border (appearance-dependent).
void DrawTrianDown(wxRect& inRect, wxDC& dc)
Implements 'hard-coded metafile' for Netscape Navigator look.
void DrawTrianRight(wxRect& inRect, wxDC& dc)
Implements 'hard-coded metafile' for Netscape Navigator look.
void DrawTrianUp(wxRect& inRect, wxDC& dc)
Implements 'hard-coded metafile' for Netscape Navigator look.
void ExpandRow(int collapsedIconIdx)
Helper for drag and drop.
void FinishOnScreenDraw()
Helper for drag and drop.
int GetCollapsedIconsPos()
Helper for drag and drop.
void GetCollapsedInconRect(int iconIdx, wxRect& rect)
Helper for drag and drop.
int GetCollapsedRowIconHeight()
Gets the collapsed row icon height.
cbRowInfo* GetFirstRow()
Helper for drag and drop.
int GetHRowsCountForPane(cbDockPane* pPane)
Helper for drag and drop.
int GetRowDragHintWidth()
Gets the row drag hint width.
void GetRowHintRect(cbRowInfo* pRow, wxRect& rect)
Helper for drag and drop.
bool HitTestCollapsedRowIcon(int iconIdx, const wxPoint& pos)
Test for the collapsed row icon position.
bool HitTestRowDragHint(cbRowInfo* pRow, const wxPoint& pos)
Test for the row drag hint position.
void InsertDraggedRowBefore(cbRowInfo* pBeforeRow)
Helper for drag and drop.
bool ItemIsInFocus()
Helper for drag and drop.
void OnDrawPaneBackground(cbDrawPaneDecorEvent& event)
Handles pane drawing plugin events (appearance-independent logic).
void OnInitPlugin()
Called to initialize this plugin.
void OnLButtonDown(cbLeftDownEvent& event)
Handles left button down plugin events (appearance-independent logic).
void OnLButtonUp(cbLeftUpEvent& event)
Handles left button up plugin events (appearance-independent logic).
void OnMouseMove(cbMotionEvent& event)
Handles mouse move plugin events (appearance-independent logic).
void PrepareForRowDrag()
Helper for drag and drop.
void SetMouseCapture(bool captureOn)
Helper for drag and drop.
void SetPaneMargins()
Sets the pane margins.
void ShowDraggedRow(int offset)
Helper for drag and drop.
void ShowPaneImage()
Helper for drag and drop.
void UnhighlightItemInFocus()
Helper for drag and drop.