InDesign SDK  20.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
IParcelContainer::ParcelSpanData Class Reference

#include <IParcelContainer.h>

Public Member Functions

 ParcelSpanData ()
 
 ParcelSpanData (uint32 columnIndexStart)
 
 ParcelSpanData (uint32 columnIndexStart, uint32 columnIndexEnd, uint32 desiredSpan)
 
 ParcelSpanData (uint32 columnIndexStart, uint32 splitIndex, uint32 splitCount, PMReal splitInsideGutter, PMReal splitOutsideGutter)
 
 ParcelSpanData (const ParcelSpanData &other)
 
bool operator== (const ParcelSpanData &other) const
 
bool operator!= (const ParcelSpanData &other) const
 
ICompositionStyle::SpanColumnsTypeOptions GetColumnType () const
 
bool16 GetIsSingleColumn () const
 
bool16 GetSpansColumns () const
 
bool16 GetSplitsColumn () const
 
uint32 GetColumnIndexStart () const
 
uint32 GetColumnIndexEnd () const
 
uint32 GetPhysicalColumnSpan () const
 
uint32 GetDesiredColumnSpan () const
 
uint32 GetSplitIndex () const
 
uint32 GetSplitCount () const
 
PMReal GetSplitInsideGutter () const
 
PMReal GetSplitOutsideGutter () const
 

Public Attributes

ICompositionStyle::SpanColumnsTypeOptions fSpanType
 
uint32 fPColIndexStart
 
uint32 fPColIndexEnd
 
uint32 fDesiredSpan
 
uint32 fSplitIndex
 
uint32 fSplitCount
 
PMReal fSplitInsideGutter
 
PMReal fSplitOutsideGutter
 

Detailed Description

This helper class specifies the span data for a Parcel.

Constructor & Destructor Documentation

IParcelContainer::ParcelSpanData::ParcelSpanData ()

Default constructor. Does not create anything useful but needed as a placeholder. All members will be undefined.

IParcelContainer::ParcelSpanData::ParcelSpanData (uint32 columnIndexStart)
inline

Constructs a single at the specified column index

IParcelContainer::ParcelSpanData::ParcelSpanData (uint32 columnIndexStart,
uint32 columnIndexEnd,
uint32 desiredSpan 
)
inline

Constructs a span at the specified column index range

IParcelContainer::ParcelSpanData::ParcelSpanData (uint32 columnIndexStart,
uint32 splitIndex,
uint32 splitCount,
PMReal splitInsideGutter,
PMReal splitOutsideGutter 
)
inline

Constructs a split at the specified column index

IParcelContainer::ParcelSpanData::ParcelSpanData (const ParcelSpanDataother)
inline

Copy constructor

Member Function Documentation

uint32 IParcelContainer::ParcelSpanData::GetColumnIndexEnd () const
inline

Returns the index (0-n) of the column where the Parcel ends. This will be one past the last column spanned by the Parcel. For example a single column and a split would have (start,end) of (#index,#index+1), and a full straddle would be (0, #span).

uint32 IParcelContainer::ParcelSpanData::GetColumnIndexStart () const
inline

Returns the index (0-n) of the column where the Parcel starts. For splits this will be the column which is split.

uint32 IParcelContainer::ParcelSpanData::GetDesiredColumnSpan () const
inline

This is the desired column span specified by the controlling attributes. Typically this exactly the same as the physical column span but in the case of 'all' or the number of desired columns exceeds the available physical columns in the container this number will be greater.

This is an important value because it allows us to keep separate Parcels (and their content) which may have the same physical span but due to limitations of the container have different desired spans and the rule being that all content associated with one span must be fully resolved before starting the next span.

255 == 'all'

bool16 IParcelContainer::ParcelSpanData::GetIsSingleColumn () const
inline

Returns kTrue if the Parcel maps one to one with a column.

uint32 IParcelContainer::ParcelSpanData::GetPhysicalColumnSpan () const
inline

This is the actual number of physical columns this Parcel spans.

bool16 IParcelContainer::ParcelSpanData::GetSpansColumns () const
inline

Returns kTrue if the Parcel spans two or more columns

uint32 IParcelContainer::ParcelSpanData::GetSplitCount () const
inline

Returns the split count that the Parcel is associated with or zero if it is not a split. All Parcels which are part of the same split return the same number.

uint32 IParcelContainer::ParcelSpanData::GetSplitIndex () const
inline

Returns the index within the split of the Parcel or zero if it is not a split.

bool16 IParcelContainer::ParcelSpanData::GetSplitsColumn () const
inline

Returns kTrue if the Parcel shares in the split of a column

bool IParcelContainer::ParcelSpanData::operator== (const ParcelSpanDataother) const
inline

This equality operator only checks that the column type information is the same, NOT that the column indexes and effective top adjustments are the same.