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

#include <IHandleShape.h>

Inheritance diagram for IHandleShape:
IPMUnknownCHandleShapeBscShpHandleShapePathHandleShapeBscShpPathHandleShape

Public Member Functions

virtual void DrawHandleShape (GraphicsData *gd, IConcreteSelection *concreteSelection, int32 flags=0)=0
 
virtual void DrawControlPointPath (GraphicsData *gd, int32 flags=0)=0
 
virtual bool16 HitTest (GraphicsData *gd, const PMRect &r, PointSelector *handleIndex, bool16 bDragging=kFalse)=0
 
virtual bool16 HitTestControlPointPath (GraphicsData *gd, const PMRect &r)=0
 
virtual void GetControlPointPathOutlineInfo (IOutlineInfo *iOutlineInfo)=0
 
virtual PMRect GetPaintedHandleBounds (const PMMatrix &pbtoview)=0
 
virtual void Inval (GraphicsData *gd, ClassID reasonForInval=0, int32 flags=0)=0
 
virtual ITrackerQueryTracker (IControlView *layView, const PBPMPoint &where, int32 selectionMode, const PointSelector &index)=0
 
virtual ITipQueryTip (const PointSelector *handleIndex)=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

This interface is ONLY for drawing, inval and hit testing of selection handles. It is NOT a persistant interface and should have no duties other than those mentioned.

Member Function Documentation

virtual void IHandleShape::DrawControlPointPath (GraphicsDatagd,
int32 flags = 0 
)
pure virtual

Draw the path based on item's control points.

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

Implemented in CHandleShape.

virtual void IHandleShape::DrawHandleShape (GraphicsDatagd,
IConcreteSelectionconcreteSelection,
int32 flags = 0 
)
pure virtual

Draw the selection handle of item.

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

Implemented in CHandleShape.

virtual void IHandleShape::GetControlPointPathOutlineInfo (IOutlineInfoiOutlineInfo)
pure virtual

Get the path information of item's control points.

Parameters
iOutlineInfothe out parameter with the control point path.
Returns
void.

Implemented in CHandleShape, and PathHandleShape.

virtual PMRect IHandleShape::GetPaintedHandleBounds (const PMMatrixpbtoview)
pure virtual

Get the bounding box by computing it in pasteboard coords and then transforming it by pbtoview.

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

Implemented in BscShpPathHandleShape, and CHandleShape.

virtual bool16 IHandleShape::HitTest (GraphicsDatagd,
const PMRectr,
PointSelectorhandleIndex,
bool16 bDragging = kFalse 
)
pure virtual

Check if a particular handle of the item has been hit or not within the specified area.

Parameters
gdthe graphics context used for hit testing.
rthe area for checking hit test.
handleIndexthe index of selection handle.
bDraggingthe flag indicating if hit test if during dragging or not.
Returns
bool16 kTrue if it hits, otherwise kFalse.

Implemented in CHandleShape.

virtual bool16 IHandleShape::HitTestControlPointPath (GraphicsDatagd,
const PMRectr 
)
pure virtual

Check if the control point path has been hit or not.

Parameters
gdthe graphics context used for hit testing.
rthe area for checking hit test.
Returns
bool16 kTrue if it hits, otherwise kFalse.

Implemented in CHandleShape.

virtual void IHandleShape::Inval (GraphicsDatagd,
ClassID reasonForInval = 0,
int32 flags = 0 
)
pure 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.

Implemented in CHandleShape.

virtual ITip* IHandleShape::QueryTip (const PointSelectorhandleIndex)
pure virtual

Query for any tip implemented on the shape. If there is any tip on the shape then the ITip interfacePtr will be returned else nil is returned in the default implementation

Parameters
handleIndexthe index of the handle for the shape
Returns
ITip* the result tip

Implemented in CHandleShape.

virtual ITracker* IHandleShape::QueryTracker (IControlViewlayView,
const PBPMPointwhere,
int32 selectionMode,
const PointSelectorindex 
)
pure virtual

Query the tracker based on the given mouse position, hit test mode and selection handle index.

Parameters
layViewthe active layout view where mouse is on.
wherethe mouse position based on pasteboard coordinate.
selectionModethe hit test flags.
indexspecifies the index of selection handle.
Returns
ITracker* the result tracker and caller should deference it.

Implemented in CHandleShape, and PathHandleShape.