These generic hook functions are called whenever a grid grob is drawn. They provide an opportunity for customising the drawing of a new class derived from grob (or gTree).
drawDetails(x, recording)
preDrawDetails(x)
postDrawDetails(x)
A grid grob.
A logical value indicating whether a grob is being added to the display list or redrawn from the display list.
None of these functions are expected to return a value.
These functions are called by the grid.draw
methods for grobs
and gTrees.
preDrawDetails
is called first during the drawing of a grob.
This is where any additional viewports should be pushed (see,
for example, grid:::preDrawDetails.frame
). Note that
the default behaviour for grobs is to push any viewports in the
vp
slot, and for gTrees is to also push and up any viewports in the
childrenvp
slot so there is typically nothing to do here.
drawDetails
is called next and is where any additional
calculations and graphical output should occur (see, for example,
grid:::drawDetails.xaxis
. Note that the default behaviour
for gTrees is to draw all grobs in the children
slot
so there is typically nothing to do here.
postDrawDetails
is called last and should reverse anything
done in preDrawDetails
(i.e., pop or up any viewports that were
pushed; again, see,
for example, grid:::postDrawDetails.frame
). Note that the
default behaviour for grobs is to pop any viewports that were pushed
so there is typically nothing to do here.
Note that preDrawDetails
and postDrawDetails
are
also called in the calculation of "grobwidth"
and
"grobheight"
units.