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

#include <IWaxRunIterator.h>

Public Member Functions

virtual IWaxRunGetFirstRun ()=0
 
virtual IWaxRunGetNextRun ()=0
 
virtual IWaxRunGetPrevRun ()=0
 
virtual IWaxRunPeekRun () const =0
 
virtual bool16 AdvanceToRun (const IWaxRun *waxRun)=0
 
virtual PMMatrix GetRunMatrix () const =0
 

Detailed Description

Interface for iterating through waxRuns on a waxLine - returned via IWaxLine - this object must be delete'd when finished.

This is not derived from IPMUnknown. It is allocated on the heap so the caller is responsible for deleting the object once it is no longer required.

An IWaxRunIterator is returned from IWaxLine::QueryWaxRunIterator(). Typical usage is:


K2::scoped_ptr<IWaxRunIterator> iter(waxLine->QueryWaxRunIterator());

See Also
IWaxRun

Member Function Documentation

virtual bool16 IWaxRunIterator::AdvanceToRun (const IWaxRunwaxRun)
pure virtual

Advance to the given run.

Returns
kTrue if successful
kFalse probably means waxGlyphs isn't in this waxLine.
virtual IWaxRun* IWaxRunIterator::GetFirstRun ()
pure virtual

Reset to the first run and return it, return nil at end of runs.

Note
The IWaxRun interfaces returned by these methods are only valid until the next GetxxxRun method call or the destruction of the IWaxRunIterator, whichever comes first.
IN OTHER WORDS, the returned interface is not reference counted.
virtual IWaxRun* IWaxRunIterator::GetNextRun ()
pure virtual

Advance to the next run, and return it, return nil at end of runs.

Note
that this works on characters, not glyphs. For characters that result in multiple glyphs, the group of glyphs is treated as a single glyph.
The IWaxRun interfaces returned by these methods are only valid until the next GetxxxRun method call or the destruction of the IWaxRunIterator, whichever comes first.
IN OTHER WORDS, the returned interface is not reference counted.
virtual IWaxRun* IWaxRunIterator::GetPrevRun ()
pure virtual

Backup to the previous run, and return it, returns nil at beginning of runs - expensive method.

Note
The IWaxRun interfaces returned by these methods are only valid until the next GetxxxRun method call or the destruction of the IWaxRunIterator, whichever comes first.
IN OTHER WORDS, the returned interface is not reference counted.
virtual PMMatrix IWaxRunIterator::GetRunMatrix () const
pure virtual

Return the given matrix to represent the transformation of this run relative to the line.

For instance, the XPosition value of the matrix represents the x-offset of this run from the start of the line.

virtual IWaxRun* IWaxRunIterator::PeekRun () const
pure virtual

Return current run, returns nil at end of runs or if GetFirstRun was never called.

Note
The IWaxRun interfaces returned by these methods are only valid until the next GetxxxRun method call or the destruction of the IWaxRunIterator, whichever comes first.
IN OTHER WORDS, the returned interface is not reference counted.