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

#include <IWaxStrand.h>

Inheritance diagram for IWaxStrand:
IPMUnknown

Classes

struct  CallbackWaxIteratorData
 

Public Types

enum  { kDefaultIID = IID_IWAXSTRAND }
 
enum  CheckForKeeps { kDontCheckForKeeps = 0, kCheckForKeeps = 1 }
 
enum  TreatAsOverset { kDontTreatAsOverset = 0, kTreatAsOverset = 1 }
 
enum  { kLeanRight = 0, kLeanLeft = 1 }
 

Public Member Functions

virtual void MarkInsertDamage (TextIndex at, int32 amt)=0
 
virtual void MarkDeleteDamage (TextIndex start, int32 length, bool16 paraStrandAfter=kTrue)=0
 
virtual void MarkChangeDamage (TextIndex start, int32 length, bool16 addOneToLength=kFalse)=0
 
virtual void MarkGeometryDamage (TextIndex start, int32 length, CheckForKeeps checkForKeeps=kCheckForKeeps, TreatAsOverset treatAsOverset=kDontTreatAsOverset, int32 limitLeanLeftParcelIndex=kInvalidParcelIndex)=0
 
virtual void MarkRegenDamage (TextIndex start, int32 length)=0
 
virtual void MarkContentDamage (TextIndex start, int32 length, CheckForKeeps checkForKeeps=kCheckForKeeps)=0
 
virtual IWaxIteratorNewWaxIterator (bool16 changeAware=kFalse) const =0
 
virtual const IWaxIteratorNewReadOnlyWaxIterator () const =0
 
virtual IWaxLineQueryNewWaxLine () const =0
 
virtual void ApplyLineIntoWax (IParcelList *pl, IWaxLine *waxLine, TextIndex waxLineTextIndex, int32 waxLineSpan, bool16 disableApplyInval)=0
 
virtual void NewDeferredInval ()=0
 
virtual void AddDeferredInval (TextIndex at, bool16 disableInval, bool16 forceInkCache)=0
 
virtual void EndDeferredInval ()=0
 
virtual bool16 GetTextIndexToWaxLineData (TextIndex index, bool16 leanLeft, int32 *pOffsetWithinLine=nil, int32 *pTextSpan=nil, ParcelKey *pParcelKey=nil, UID *pFrameUID=nil, PMReal *pLineHeight=nil, PMLineSeg *pSelection=nil, PMPoint *pWaxPt=nil, PMMatrix *pWaxToFrameMatrix=nil, PMMatrix *pWaxToGlyphMatrix=nil)=0
 
virtual bool16 GetTextCaretLine (IFrameList *frameList, const IControlView *layoutView, TextIndex index, bool16 leanLeft, PMLineSeg *pCaretLine, UIDRef &textFrameUIDRef, ParcelKey &parcelKey)=0
 
virtual ITextFrameColumnQueryFrameContaining (TextIndex indexHit, bool16 leanLeft, PMPoint *pLocationHit=nil, PMReal *hitLineSelectionTop=nil, PMReal *hitLineSelectionBottom=nil)=0
 
virtual void CallbackWaxIterator (TextIndex start, bool16(*callback)(void *priv, const CallbackWaxIteratorData *), void *callback_priv)=0
 
virtual IParagraphComposerQueryComposer (ITextModel *textModel, const IWaxLine *waxLine, TextIndex waxLineTextIndex)=0
 
virtual IParagraphComposerQueryComposer (ClassID composerID)=0
 Returns the ParagraphComposer for the specified class id.
 
virtual void StoryThreadCreated (TextIndex prevThreadStart, int32 prevThreadSpan, TextIndex newThreadStart, int32 newThreadSpan)=0
 
virtual void StoryThreadDeleted (TextIndex prevThreadStart, int32 prevThreadSpan, TextIndex oldThreadStart, int32 oldThreadSpan)=0
 
virtual bool16 FreezeDamage (bool16 freeze)=0
 
virtual int32 MarkPasteDamage (TextIndex pos, int32 len)=0
 
virtual ITextModelQueryTextModel ()=0
 
virtual void ConvertAnnaTableFrameWaxLines (TextIndex at, int32 lineCount)=0
 
virtual void MarkReplaceDamage (const boost::shared_ptr< ITextModel::ReplacementList > &replList)=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 owns the wax for a story. A callback interface is provided to allow the wax for a story to be iterated over.

Member Function Documentation

virtual const IWaxIterator* IWaxStrand::NewReadOnlyWaxIterator () const
pure virtual

Returns a WaxIterator. For code that will not change wax lines or Apply wax lines. e.g. code that draws. Provides optimization on IWaxLine::TextOrigin call.

Returns
- a WaxIterator
virtual IWaxIterator* IWaxStrand::NewWaxIterator (bool16 changeAware = kFalse) const
pure virtual

Returns a WaxIterator.

Parameters
changeAwareIf kTrue the iterator will not ASSERT if WaxLines change size during the life of the iterator.
Returns
- a WaxIterator