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

#include <ITableAttrModifier.h>

Inheritance diagram for ITableAttrModifier:
IPMUnknown

Public Types

enum  { kDefaultIID = IID_ITABLEATTRMODIFIER }
 kDefaultIID
 

Public Member Functions

virtual void Scale (const PMReal &xScale, const PMReal &yScale)=0
 
Row attribute modifiers.
virtual void ApplyRowOverrides (const RowRange &rows, const AttributeBossList *these)=0
 
virtual void ClearRowOverrides (const RowRange &rows, const AttributeBossList *these)=0
 
virtual void ResizeRows (const RowRange &rows, const PMReal &newHeight)=0
 
Columns attribute modifiers.
virtual void ApplyColOverrides (const ColRange &cols, const AttributeBossList *these)=0
 
virtual void ClearColOverrides (const ColRange &cols, const AttributeBossList *these)=0
 
virtual void ResizeCols (const ColRange &cols, const PMReal &newWidth)=0
 
Cell attribute modifiers.
virtual void ApplyCellOverrides (const GridArea &cells, const AttributeBossList *these, bool16 clearRedundantOverrides=kTrue)=0
 
virtual void ClearCellOverrides (const GridArea &cells, const AttributeBossList *these)=0
 
virtual void ApplyCellStrokes (const GridArea &area, const ICellStrokeAttrData::Data &data, bool16 clearRedundantOverrides=kTrue)=0
 
virtual void ClearCellStrokes (const GridArea &area, const ICellStrokeAttrData::Data &data)=0
 
virtual int32 GetStrokesApplyTick (void) const =0
 
virtual void FreezeStrokesApplyTick (bool16 freeze)=0
 
virtual void ApplyCellStyle (const UID &cellStyle, const GridArea &areaToSet, int32 priority=-1)=0
 
Table attribute modifiers.
virtual void ApplyTableOverrides (const AttributeBossList *these)=0
 
virtual void ClearTableOverrides (const AttributeBossList *these)=0
 
virtual void ClearAllTableOverrides ()=0
 
virtual void SetTableStyle (UID tableStyle)=0
 
virtual UID GetTableStyle (void) const =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

Abstract interface to manipulate table attributes directly. In practice client code would use ITableCommands to provide for undo-able change to the table model. There should be counterparts on ITableCommands of the significant methods on this interface.

Member Function Documentation

virtual void ITableAttrModifier::ApplyCellOverrides (const GridAreacells,
const AttributeBossListthese,
bool16 clearRedundantOverrides = kTrue 
)
pure virtual

Applies overrides to cells in given area.

Parameters
cellsan area that delimits the target cells: method operates upon the cells contained wholly within this grid area
theselist of boss objects, specifying (by their ClassID) attributes to be applied to target cells
clearRedundantOverrideswhether to clear overrides in the attribute boss list that are redundant with the applied cell style.
virtual void ITableAttrModifier::ApplyCellStrokes (const GridAreaarea,
const ICellStrokeAttrData::Datadata,
bool16 clearRedundantOverrides = kTrue 
)
pure virtual

Applies strokes to cells.

Parameters
areaan area that delimits the target cells: cells contained wholly within this grid area are target for operation
dataused to specify sides and other properties of the stroke that are to be applied. For more detail consult the documentation on ITableCommands.
clearRedundantOverrideswhether to clear overrides in the attribute boss list that are redundant with the applied cell style.
virtual void ITableAttrModifier::ApplyCellStyle (const UIDcellStyle,
const GridAreaareaToSet,
int32 priority = -1 
)
pure virtual

Applies the cell style to the given GridArea. If the style priority is -1, then a new priority value will be calculated that is greater than any priority of all cells that are adjacent to areaToSet.

Parameters
cellStyle[IN] the UID of the cell style to apply, this style should live on the same database as the table
areaToSet[IN] the GridArea to apply the cell style to
priority[IN] optional, the style priority
virtual void ITableAttrModifier::ApplyColOverrides (const ColRangecols,
const AttributeBossListthese 
)
pure virtual

Applies overrides to columns from cols.start to cols.start + cols.count

Parameters
colsidentifies range of columns to apply column-attribute overrides to
thesecollection of boss objects specifying (by their ClassID) attribute-overrides to be applied
virtual void ITableAttrModifier::ApplyRowOverrides (const RowRangerows,
const AttributeBossListthese 
)
pure virtual

Applies overrides to rows from rows.start to rows.start + rows.count

Parameters
rowsidentifies range of rows to apply row-attribute overrides to
thesecollection of boss objects specifying (by their ClassID) row attribute-overrides to be applied
Precondition
rows should be a valid range within the table model
virtual void ITableAttrModifier::ApplyTableOverrides (const AttributeBossListthese)
pure virtual

Applies table attributes

Parameters
theselist of boss objects, specifying (by their ClassID) attributes to apply
virtual void ITableAttrModifier::ClearAllTableOverrides ()
pure virtual

Method to remove (releasing) all the attributes in the underlying boss list holding table-level attributes.

virtual void ITableAttrModifier::ClearCellOverrides (const GridAreacells,
const AttributeBossListthese 
)
pure virtual

Clears overrides applied to cells .

Parameters
cellsan area that delimits the target cells: method operates upon the cells contained wholly within this grid area
theselist of boss objects, specifying (by their ClassID) attributes to remove
virtual void ITableAttrModifier::ClearCellStrokes (const GridAreaarea,
const ICellStrokeAttrData::Datadata 
)
pure virtual

Clears cell strokes.

Parameters
areaan area that delimits the target cells: cells contained wholly within this grid area are target for operation
dataused to specify sides and other properties of the stroke that are to be cleared.
virtual void ITableAttrModifier::ClearColOverrides (const ColRangecols,
const AttributeBossListthese 
)
pure virtual

Clears overrides in columns from cols.start to cols.start + cols.count

Parameters
colsspecifies range of columns on which to remove column-attribute overrides
thesecollection of boss objects specifying (by their ClassID) attributes for which the override is to be cleared
virtual void ITableAttrModifier::ClearRowOverrides (const RowRangerows,
const AttributeBossListthese 
)
pure virtual

Clears overrides in to rows from rows.start to rows.start + rows.count

Parameters
rowsidentifies range of rows for which row-overrides should be removed
thesecollection of boss objects specifying (by their ClassID) row attribute-overrides to remove
Precondition
rows should be a valid range within the table model
virtual void ITableAttrModifier::ClearTableOverrides (const AttributeBossListthese)
pure virtual

Clears specified attribute-overrides

Parameters
theselist of boss objects, specifying (by their ClassID) attributes to remove overrides from
virtual void ITableAttrModifier::FreezeStrokesApplyTick (bool16 freeze)
pure virtual

For internal use only. Used by cell strokes UI apply code to ensure that multiple applies have the same draw priority. If freeze is kTrue then the stroke apply tick is incremented and frozen until it is unfrozen with a freeze value of kFalse. The frozen state is not persistent. So it is essential to hold a reference to this interface for the scope of the freeze.

virtual int32 ITableAttrModifier::GetStrokesApplyTick (void ) const
pure virtual

Used by cell strokes apply code for draw priority of stroke overrides.

virtual UID ITableAttrModifier::GetTableStyle (void ) const
pure virtual

Returns the table style of this table

virtual void ITableAttrModifier::ResizeCols (const ColRangecols,
const PMRealnewWidth 
)
pure virtual

Sets the column widths of columns from cols.start to cols.start + cols.count to newWidth

Parameters
colsspecifies range of columns for change in size
newWidthspecifies the new width setting for this column range
virtual void ITableAttrModifier::ResizeRows (const RowRangerows,
const PMRealnewHeight 
)
pure virtual

Sets the rows heights of rows from rows.start to rows.start + rows.count to newHeight

Parameters
rowsidentifies range of rows for size change
newHeightspecifies the new height and minimum height for the given rows
Precondition
rows should be a valid range within the table model
newHeight should be 0
virtual void ITableAttrModifier::Scale (const PMRealxScale,
const PMRealyScale 
)
pure virtual

Scales attributes.

virtual void ITableAttrModifier::SetTableStyle (UID tableStyle)
pure virtual

Sets this tables style.