InDesign SDK  20.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
CShape Class Reference
Inheritance diagram for CShape:
IShapeIPMUnknownCPathShapeCGraphicFrameShapeBscShpShapeCdlChartShape

Public Member Functions

 CShape (IPMUnknown *boss)
 
virtual void ProcessDrawShape (GraphicsData *gd, int32 flags)
 
virtual PMRect GetPaintedBBox (const PMMatrix &theMatrix, const Transform::CoordinateSpace &coordinateSpace)
 
virtual PMRect GetPrintedBBox (const PMMatrix &theMatrix, const Transform::CoordinateSpace &coordinateSpace, bool32 includeAdornments=kTrue)
 
virtual void IterateShapeDrawOrder_ (const PMMatrix *xform, ICallback *callbackInfo, int32 flags)
 
virtual void Inval (GraphicsData *gd, ClassID reasonForInval, int32 flags)
 
- Public Member Functions inherited from IShape
void IterateShapeDrawOrder (ICallback *callbackInfo, int32 flags=0)
 
- Public Member Functions inherited from IPMUnknown
virtual IPMUnknownQueryInterface (PMIID interfaceID) const =0
 
virtual void AddRef () const =0
 
virtual void Release () const =0
 

Protected Member Functions

virtual void DrawShape (GraphicsData *gd, int32 flags)
 
virtual void DrawHierarchy (GraphicsData *gd, int32 flags)
 
virtual void IterateDrawOrderHierarchy (const PMMatrix *xform, ICallback *callbackInfo, int32 flags)
 
virtual bool16 IsDynamic (int32 flags)
 
virtual bool16 IsPatientUser (int32 flags)
 
virtual bool16 IsPrinting (int32 flags)
 
virtual bool16 ShapeDisabled (GraphicsData *gd, int32 flags)
 
virtual void DrawPageItemAdornments (GraphicsData *, int32, IAdornmentShape::AdornmentDrawOrder)
 
virtual void UnionPageItemAdornmentPaintedBBox (PMRect &, const PMMatrix &innertoview)
 
virtual void UnionPrintingPageItemAdornmentPaintedBBox (PMRect &, const PMMatrix &innertoview)
 
virtual void InvalPageItemAdornments (IAdornmentShape::AdornmentDrawOrder, GraphicsData *gd, ClassID reasonForInval, int32 flags)
 
bool16 IsCacheValid () const
 

Protected Attributes

IDataBasefDB
 
IPageItemCachefPageItemCache
 
IHierarchyfHierarchy
 
IGeometryfGeometry
 
IHandleShapefHandleShape
 
IHandleShapefPathHandleShape
 
IPageItemAdornmentListfAdornmentList
 

Additional Inherited Members

- Public Types inherited from IShape
enum  { kDefaultIID = IID_ISHAPE }
 
enum  {
  kNoFlags = 0, kDrawingClippedOutImageData = 1, kUseXOR = 2, kDrawResizeDynamic = 4,
  kDrawRotateDynamic = 8, kDrawScaleDynamic = 16, kDrawMoveDynamic = 32, kDrawCreateDynamic = 64,
  kPatientUser = 128, kDynamicPause = 256, kPrinting = 512, kDoBroadcast = 1024,
  kDrawFrameEdge = 2048, kPreviewMode = 4096
}
 
enum  {
  kSelect = 1, kDirectSelect = 2, kGroupSelect = 4, kOverrideMasterPageItemNoSelect = 8,
  kOverrideMasterPageItem = kOverrideMasterPageItemNoSelect + kSelect, kHitTest = 16, kSolidSelect = 32, kOnlyPath = 64,
  kHitTestLockedLayers = 128, kHitTextOnPath = 256, kOverrideThreadedMasterPageItems = 512
}
 
enum  {
  kIsAMasterPageItem = 1, kSkipChildren = 2, kSkipHiddenLayers = 4, kSkipLockedLayers = 8,
  kSkipHiddenAndLockedLayers = kSkipHiddenLayers + kSkipLockedLayers, kSkipGuideLayers = 16, kSkipMasterPageItems = 32, kSkipNonGuideLayers = 64,
  kIncludeHiddenFormStates = 128, kSkipNonPrintingLayers = 256, kIteratePrinting = 512, kIncludeTOPPageItems = 1024,
  kSkipFormStates = 2048, kPDFExportMode = 4096
}
 
enum  { kPathSelection = 1 }
 

Member Function Documentation

virtual PMRect CShape::GetPaintedBBox (const PMMatrixtheMatrix,
const Transform::CoordinateSpacecoordinateSpace 
)
virtual

Get the painted bounds. The bounds must include all painted area but does not need to be pixel perfect. Compute the bounds in pasteboard coords and then transform by theMatrix.

Parameters
theMatrixthe matrix to transform the bounds based on pasteboard coordinates.
Returns
PMRect the bounds for painting(redrawing).

Implements IShape.

Reimplemented in CGraphicFrameShape, and CPathShape.

virtual PMRect CShape::GetPrintedBBox (const PMMatrixtheMatrix,
const Transform::CoordinateSpacecoordinateSpace,
bool32 includeAdornments = kTrue 
)
virtual

Get the bounds around what will actually print. This includes the stroke bounds plus whatever adornments are set to print. Compute the bounds in pasteboard coords and then transform by theMatrix.

Parameters
theMatrixthe matrix to transform the bounds based on pasteboard coordinates.
includeAdornments[IN] Whether or not printing adornments are included in the resulting bounding box
Returns
PMRect the bounds for printing.

Implements IShape.

Reimplemented in CGraphicFrameShape.

virtual void CShape::Inval (GraphicsDatagd,
ClassID reasonForInval,
int32 flags 
)
virtual

Invalidate the appropriate region of the object in the graphics context.

Parameters
gdthe graphics context used for invalidation.
reasonForInvalthe ClassID defined for inval reason for handling different inval cases.
flagsdefault as kNoFlags and serves as a drawing flag.
Returns
void.

Implements IShape.

virtual void CShape::IterateShapeDrawOrder_ (const PMMatrixxform,
ICallbackcallbackInfo,
int32 flags 
)
virtual

Call callbackInfo->callback for each item in this shape's hierarchy.

Parameters
xformthe matrix to transform coordinates.
callbackInfo
flagsdefault as kNoFlags and serves as a drawing flag.
Returns
void.

Implements IShape.

virtual void CShape::ProcessDrawShape (GraphicsDatagd,
int32 flags 
)
virtual

Draw the shape of item. In general, don't call draw or HitTest directly. Use IDrawMgr instead.

Parameters
gdthe graphics context used for drawing.
flagsdefault as kNoFlags and serves as a drawing flag.
Returns
void.

Implements IShape.