2 % automatically generated by HelpGen $Revision$ from
3 % rowdragpl.h at 21/Jan/02 21:14:19
7 \section{\class{cbRowDragPlugin
}}\label{cbrowdragplugin
}
10 This plugin adds row-dragging functionality to the pane.
11 It handles mouse movement and pane background-erasing plugin events.
12 The behaviour and appearance resembles drag and drop positioning
13 of the toolbar rows in Netscape Communicator
4.xx.
15 \wxheading{Derived from
}
17 \helpref{cbPluginBase
}{cbpluginbase
}
19 \wxheading{Include files
}
23 \wxheading{Data structures
}
25 \latexignore{\rtfignore{\wxheading{Members
}}}
28 \membersection{cbRowDragPlugin::cbRowDragPlugin
}\label{cbrowdragplugincbrowdragplugin
}
30 \func{}{cbRowDragPlugin
}{\param{wxFrameLayout*
}{pLayout
},
\param{int
}{paneMask = wxALL
\_PANES}}
32 Constructor, taking paren layout frame and pane mask.
35 \func{}{cbRowDragPlugin
}{\void}
40 \membersection{cbRowDragPlugin::
\destruct{cbRowDragPlugin
}}\label{cbrowdragplugindtor
}
42 \func{}{\destruct{cbRowDragPlugin
}}{\void}
47 \membersection{cbRowDragPlugin::CaptureDCArea
}\label{cbrowdragplugincapturedcarea
}
49 \func{wxBitmap*
}{CaptureDCArea
}{\param{wxDC\&
}{dc
},
\param{wxRect\&
}{area
}}
51 Helper for drag and drop.
54 \membersection{cbRowDragPlugin::CheckPrevItemInFocus
}\label{cbrowdragplugincheckpreviteminfocus
}
56 \func{void
}{CheckPrevItemInFocus
}{\param{cbRowInfo*
}{pRow
},
\param{int
}{iconIdx
}}
58 Helper for drag and drop.
61 \membersection{cbRowDragPlugin::Clone
}\label{cbrowdragpluginclone
}
63 \func{cbPluginBase*
}{Clone
}{\void}
65 Clone function, returning a new instance of this class.
68 \membersection{cbRowDragPlugin::CollapseRow
}\label{cbrowdragplugincollapserow
}
70 \func{void
}{CollapseRow
}{\param{cbRowInfo*
}{pRow
}}
72 Helper for drag and drop.
75 \membersection{cbRowDragPlugin::Draw3DPattern
}\label{cbrowdragplugindraw3dpattern
}
77 \func{void
}{Draw3DPattern
}{\param{wxRect\&
}{inRect
},
\param{wxDC\&
}{dc
}}
79 Implements 'hard-coded metafile' for Netscape Navigator look.
82 \membersection{cbRowDragPlugin::Draw3DRect
}\label{cbrowdragplugindraw3drect
}
84 \func{void
}{Draw3DRect
}{\param{wxRect\&
}{inRect
},
\param{wxDC\&
}{dc
},
\param{wxBrush\&
}{bkBrush
}}
86 Implements 'hard-coded metafile' for Netscape Navigator look.
89 \membersection{cbRowDragPlugin::DrawCollapsedRowIcon
}\label{cbrowdragplugindrawcollapsedrowicon
}
91 \func{void
}{DrawCollapsedRowIcon
}{\param{int
}{index
},
\param{wxDC\&
}{dc
},
\param{bool
}{isHighlighted
}}
93 Draws collapsed row icon (appearance-dependent).
96 \membersection{cbRowDragPlugin::DrawCollapsedRowsBorder
}\label{cbrowdragplugindrawcollapsedrowsborder
}
98 \func{void
}{DrawCollapsedRowsBorder
}{\param{wxDC\&
}{dc
}}
100 Draws collapsed rows border (appearance-dependent).
103 \membersection{cbRowDragPlugin::DrawEmptyRow
}\label{cbrowdragplugindrawemptyrow
}
105 \func{void
}{DrawEmptyRow
}{\param{wxDC\&
}{dc
},
\param{wxRect\&
}{rowBounds
}}
107 Draws empty row (appearance-dependent).
110 \membersection{cbRowDragPlugin::DrawOrtoRomb
}\label{cbrowdragplugindrawortoromb
}
112 \func{void
}{DrawOrtoRomb
}{\param{wxRect\&
}{inRect
},
\param{wxDC\&
}{dc
},
\param{wxBrush\&
}{bkBrush
}}
114 Implements 'hard-coded metafile' for Netscape Navigator look.
117 \membersection{cbRowDragPlugin::DrawRectShade
}\label{cbrowdragplugindrawrectshade
}
119 \func{void
}{DrawRectShade
}{\param{wxRect\&
}{inRect
},
\param{wxDC\&
}{dc
},
\param{int
}{level
},
\param{wxPen\&
}{upperPen
},
\param{wxPen\&
}{lowerPen
}}
121 Implements 'hard-coded metafile' for Netscape Navigator look.
124 \membersection{cbRowDragPlugin::DrawRomb
}\label{cbrowdragplugindrawromb
}
126 \func{void
}{DrawRomb
}{\param{wxRect\&
}{inRect
},
\param{wxDC\&
}{dc
},
\param{wxBrush\&
}{bkBrush
}}
128 Implements 'hard-coded metafile' for Netscape Navigator look.
131 \membersection{cbRowDragPlugin::DrawRombShades
}\label{cbrowdragplugindrawrombshades
}
133 \func{void
}{DrawRombShades
}{\param{wxPoint\&
}{p1
},
\param{wxPoint\&
}{p2
},
\param{wxPoint\&
}{p3
},
\param{wxPoint\&
}{p4
},
\param{wxDC\&
}{dc
}}
135 Implements 'hard-coded metafile' for Netscape Navigator look.
138 \membersection{cbRowDragPlugin::DrawRowDragHint
}\label{cbrowdragplugindrawrowdraghint
}
140 \func{void
}{DrawRowDragHint
}{\param{cbRowInfo*
}{pRow
},
\param{wxDC\&
}{dc
},
\param{bool
}{isHighlighted
}}
142 Draws row drag hint (appearance-dependent).
145 \membersection{cbRowDragPlugin::DrawRowsDragHintsBorder
}\label{cbrowdragplugindrawrowsdraghintsborder
}
147 \func{void
}{DrawRowsDragHintsBorder
}{\param{wxDC\&
}{dc
}}
149 Draws rows drag hints border (appearance-dependent).
152 \membersection{cbRowDragPlugin::DrawTrianDown
}\label{cbrowdragplugindrawtriandown
}
154 \func{void
}{DrawTrianDown
}{\param{wxRect\&
}{inRect
},
\param{wxDC\&
}{dc
}}
156 Implements 'hard-coded metafile' for Netscape Navigator look.
159 \membersection{cbRowDragPlugin::DrawTrianRight
}\label{cbrowdragplugindrawtrianright
}
161 \func{void
}{DrawTrianRight
}{\param{wxRect\&
}{inRect
},
\param{wxDC\&
}{dc
}}
163 Implements 'hard-coded metafile' for Netscape Navigator look.
166 \membersection{cbRowDragPlugin::DrawTrianUp
}\label{cbrowdragplugindrawtrianup
}
168 \func{void
}{DrawTrianUp
}{\param{wxRect\&
}{inRect
},
\param{wxDC\&
}{dc
}}
170 Implements 'hard-coded metafile' for Netscape Navigator look.
173 \membersection{cbRowDragPlugin::ExpandRow
}\label{cbrowdragpluginexpandrow
}
175 \func{void
}{ExpandRow
}{\param{int
}{collapsedIconIdx
}}
177 Helper for drag and drop.
180 \membersection{cbRowDragPlugin::FinishOnScreenDraw
}\label{cbrowdragpluginfinishonscreendraw
}
182 \func{void
}{FinishOnScreenDraw
}{\void}
184 Helper for drag and drop.
187 \membersection{cbRowDragPlugin::GetCollapsedIconsPos
}\label{cbrowdragplugingetcollapsediconspos
}
189 \func{int
}{GetCollapsedIconsPos
}{\void}
191 Helper for drag and drop.
194 \membersection{cbRowDragPlugin::GetCollapsedInconRect
}\label{cbrowdragplugingetcollapsedinconrect
}
196 \func{void
}{GetCollapsedInconRect
}{\param{int
}{iconIdx
},
\param{wxRect\&
}{rect
}}
198 Helper for drag and drop.
201 \membersection{cbRowDragPlugin::GetCollapsedRowIconHeight
}\label{cbrowdragplugingetcollapsedrowiconheight
}
203 \func{int
}{GetCollapsedRowIconHeight
}{\void}
205 Gets the collapsed row icon height.
208 \membersection{cbRowDragPlugin::GetFirstRow
}\label{cbrowdragplugingetfirstrow
}
210 \func{cbRowInfo*
}{GetFirstRow
}{\void}
212 Helper for drag and drop.
215 \membersection{cbRowDragPlugin::GetHRowsCountForPane
}\label{cbrowdragplugingethrowscountforpane
}
217 \func{int
}{GetHRowsCountForPane
}{\param{cbDockPane*
}{pPane
}}
219 Helper for drag and drop.
222 \membersection{cbRowDragPlugin::GetRowDragHintWidth
}\label{cbrowdragplugingetrowdraghintwidth
}
224 \func{int
}{GetRowDragHintWidth
}{\void}
226 Gets the row drag hint width.
229 \membersection{cbRowDragPlugin::GetRowHintRect
}\label{cbrowdragplugingetrowhintrect
}
231 \func{void
}{GetRowHintRect
}{\param{cbRowInfo*
}{pRow
},
\param{wxRect\&
}{rect
}}
233 Helper for drag and drop.
236 \membersection{cbRowDragPlugin::HitTestCollapsedRowIcon
}\label{cbrowdragpluginhittestcollapsedrowicon
}
238 \func{bool
}{HitTestCollapsedRowIcon
}{\param{int
}{iconIdx
},
\param{const wxPoint\&
}{pos
}}
240 Test for the collapsed row icon position.
243 \membersection{cbRowDragPlugin::HitTestRowDragHint
}\label{cbrowdragpluginhittestrowdraghint
}
245 \func{bool
}{HitTestRowDragHint
}{\param{cbRowInfo*
}{pRow
},
\param{const wxPoint\&
}{pos
}}
247 Test for the row drag hint position.
250 \membersection{cbRowDragPlugin::InsertDraggedRowBefore
}\label{cbrowdragplugininsertdraggedrowbefore
}
252 \func{void
}{InsertDraggedRowBefore
}{\param{cbRowInfo*
}{pBeforeRow
}}
254 Helper for drag and drop.
257 \membersection{cbRowDragPlugin::ItemIsInFocus
}\label{cbrowdragpluginitemisinfocus
}
259 \func{bool
}{ItemIsInFocus
}{\void}
261 Helper for drag and drop.
264 \membersection{cbRowDragPlugin::OnDrawPaneBackground
}\label{cbrowdragpluginondrawpanebackground
}
266 \func{void
}{OnDrawPaneBackground
}{\param{cbDrawPaneDecorEvent\&
}{event
}}
268 Handles pane drawing plugin events (appearance-independent logic).
271 \membersection{cbRowDragPlugin::OnInitPlugin
}\label{cbrowdragpluginoninitplugin
}
273 \func{void
}{OnInitPlugin
}{\void}
275 Called to initialize this plugin.
278 \membersection{cbRowDragPlugin::OnLButtonDown
}\label{cbrowdragpluginonlbuttondown
}
280 \func{void
}{OnLButtonDown
}{\param{cbLeftDownEvent\&
}{event
}}
282 Handles left button down plugin events (appearance-independent logic).
285 \membersection{cbRowDragPlugin::OnLButtonUp
}\label{cbrowdragpluginonlbuttonup
}
287 \func{void
}{OnLButtonUp
}{\param{cbLeftUpEvent\&
}{event
}}
289 Handles left button up plugin events (appearance-independent logic).
292 \membersection{cbRowDragPlugin::OnMouseMove
}\label{cbrowdragpluginonmousemove
}
294 \func{void
}{OnMouseMove
}{\param{cbMotionEvent\&
}{event
}}
296 Handles mouse move plugin events (appearance-independent logic).
299 \membersection{cbRowDragPlugin::PrepareForRowDrag
}\label{cbrowdragpluginprepareforrowdrag
}
301 \func{void
}{PrepareForRowDrag
}{\void}
303 Helper for drag and drop.
306 \membersection{cbRowDragPlugin::SetMouseCapture
}\label{cbrowdragpluginsetmousecapture
}
308 \func{void
}{SetMouseCapture
}{\param{bool
}{captureOn
}}
310 Helper for drag and drop.
313 \membersection{cbRowDragPlugin::SetPaneMargins
}\label{cbrowdragpluginsetpanemargins
}
315 \func{void
}{SetPaneMargins
}{\void}
317 Sets the pane margins.
320 \membersection{cbRowDragPlugin::ShowDraggedRow
}\label{cbrowdragpluginshowdraggedrow
}
322 \func{void
}{ShowDraggedRow
}{\param{int
}{offset
}}
324 Helper for drag and drop.
327 \membersection{cbRowDragPlugin::ShowPaneImage
}\label{cbrowdragpluginshowpaneimage
}
329 \func{void
}{ShowPaneImage
}{\void}
331 Helper for drag and drop.
334 \membersection{cbRowDragPlugin::UnhighlightItemInFocus
}\label{cbrowdragpluginunhighlightiteminfocus
}
336 \func{void
}{UnhighlightItemInFocus
}{\void}
338 Helper for drag and drop.