InDesign SDK  20.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
ICellAdornment Class Referenceabstract

#include <ICellAdornment.h>

Inheritance diagram for ICellAdornment:
IPMUnknown

Public Types

enum  { kDefaultIID = IID_ICELLADORNMENT }
 
enum  DrawPass { kPassBeforeCell = -1, kPassAfterCell = 1 }
 
typedef K2Vector< DrawPass > DrawPassList
 

Public Member Functions

virtual void Draw (IGraphicsPort *port, int32 shapeFlags, DrawPass pass, const ITableFrame *frame, const K2Vector< GridAddress > &cells) const =0
 
virtual void Hilite (IGraphicsPort *port, const ITableFrame *frame, const K2Vector< GridAddress > &cells) const =0
 
virtual void GetPassInfo (DrawPassList &passes) const =0
 
virtual void IterateCellAdornmentDrawOrder (const ITableFrame *frame, const K2Vector< GridAddress > &cells, const PMMatrix *xform, ICallback *callbackInfo, int32 iShapeFlags=0)=0
 
- Public Member Functions inherited from IPMUnknown
virtual IPMUnknownQueryInterface (PMIID interfaceID) const =0
 
virtual void AddRef () const =0
 
virtual void Release () const =0
 

Detailed Description

Interface that is added to ITableAdorners to change how cells draw.

Adornments can be drawn before or after cells; e.g. adornments may be drawn behind text (kPassBeforeCell), but above the fill,

Alternatively, cells can be drawn before adornments on each pass (adornment would be kPassAfterCell).

Member Function Documentation

virtual void ICellAdornment::Draw (IGraphicsPortport,
int32 shapeFlags,
DrawPass pass,
const ITableFrameframe,
const K2Vector< GridAddress > & cells 
) const
pure virtual

Method that draws the adornment. Use ITableFrame::GetCellArea to determine where you can draw. Note that you should not draw outside the cell's ink area.

Parameters
portgraphics port that's target for drawing
Precondition
port <> nil
frame <> nil
cells.size() > 0
virtual void ICellAdornment::GetPassInfo (DrawPassListpasses) const
pure virtual

Collects up all the passes the adornment wants to draw in.

Parameters
passesOUT parameter used in specifying passes that this adornment draws in
Postcondition
passes.size() >= passe.nosp@m.s@pr.nosp@m.e.siz.nosp@m.e()
virtual void ICellAdornment::Hilite (IGraphicsPortport,
const ITableFrameframe,
const K2Vector< GridAddress > & cells 
) const
pure virtual

This is called when the table shape has to hilite the cells that are part of a table selection.

Parameters
portgraphics port that's target for drawing
frametable frame in which this adornment is being drawn
cellsspecifies cells affected by this operation
Precondition
port <> nil
frame <> nil
cells.size() > 0
virtual void ICellAdornment::IterateCellAdornmentDrawOrder (const ITableFrameframe,
const K2Vector< GridAddress > & cells,
const PMMatrixxform,
ICallbackcallbackInfo,
int32 iShapeFlags = 0 
)
pure virtual

Iterate over every cell with this adornemnt and add it to the callback

Parameters
frame
cells
xform
callbackInfo
iShapeFlags