FOM Reference > Formatting > Tables > fTableResolvedCell interface
  
fTableResolvedCell interface
Objects of this class represent settings of individual table cells.
absoluteEnd attribute
PI: tbcabsend
This property can be used to control where the reference edge of the cells end indent is measured from. See also indentEnd.
Returns 0 (the default) if the end indent is relative to the cells padding.
Returns 1 if the end indent is relative to the cells margin.
absoluteEnd
Access
read-write
Returns
int
absoluteStart attribute
PI: tbcabsstart
This property can be used to control where the reference edge of the cells start indent is measured from. See also indentStart.
Returns the 0 (the default) if the start indent is relative to the cells padding.
Returns the 1 if the start indent is relative to the cells margin.
absoluteStart
Access
read-write
Returns
int
alignManual attribute
PI: tbcalignm
Returns the automatic cell alignment.
alignManual
Access
read-write
Returns
boolean
backgroundColor attribute
PI: tbcbgc
The background color for this table cell.
backgroundColor
Access
read-write
Returns
fColor
backgroundHashMode attribute
PI: tbcbghash
Returns false if backgrounds on a cell use the normal width of the cell taking into account the backgroundSpan setting. Returns true if the cell background use the hash rule width instead - see ruleHashWidth for an explanation.
backgroundHashMode
Access
read-write
Returns
boolean
backgroundSpan attribute
PI: tbcbgsgut
Returns true if background colours should span into table gutters. You can only make the cell background colours span into gutters if you have specified that cell rules span into the right or left gutters (using ruleLeftGutter and ruleRightGutter). Once you have allocated cell background colours, you can make them span into either the left or right gutters. If true, the background colours span into gutters. If false, the background colours will not span into the gutters.
backgroundSpan
Access
read-write
Returns
boolean
boxAbove attribute
PI: tbcabove
Returns the value of the property as described below: When set to an empty string, boxAbove ensures that the current cell stacks above and not below. This is the default behaviour anyway and so it will only be needed if the default cell property for the row has been set to boxBelow. (see later for full description, but basically, its the corresponding command for stacking below).
But setting boxAbove to a non-empty string allows you to modify the default vertical placing of the cell instead of it being calculated automatically. When working out how to stack cells within a boxed row, by default 3B2 examines all the other cells within the row which span the same columns that the current cell spans, and then sits the new cell above the tallest one.
Setting boxAbove to first[,last] lets you specify the range of columns that 3B2 will examine to find the highest cell and then place the current one above it. If last is not specified, it defaults to first. Note the cell itself still sits in the columns designated by formatting.tableCellStart, it just gets its height from the alternative range.
Setting boxAbove to -cellnum lets you specify an explicit cell number within the boxed row from which the current cell will sit above vertically. The cells specified within the boxed row are counted, starting at 1 until cellnum is reached and then the current cell will sit above it.
Note that setting boxAbove to a non-empty string overrides 3B2's automatic behaviour and can give odd results including forcing cells to clash into one another; particularly when using a negative cellnum. NOTE: Currently not returning anything other than 0. Value might not be getting stored anywhere.
boxAbove
Access
read-write
Returns
String
boxBelow attribute
PI: tbcbelow
Returns the value of the property as described below: Basically boxBelow is the corresponding command to boxAbove but for stacking below existing cells instead of above. When set to an empty string, boxBelow ensures that the current cell stacks below and not above any existing cells. The default behaviour is to stack above so if you want the default cell property for the whole row to be below instead, specify row.defaultCell.below = "".
But setting boxBelowto a non-empty string allows you to modify the default vertical placing of the cell instead of it being calculated automatically. When working out how to stack cells below within a boxed row, by default 3B2 examines all the other cells within the row which span the same columns that the current cell spans, and then sits the new cell below the deepest one.
Setting boxBelow to first[,last] lets you specify the range of columns that 3B2 will examine to find the deepest cell and then place the current one below it. If last is not specified, it defaults to first. Note the cell itself still sits in the columns designated by tableCellStart, it just gets its height from the alternative range.
Setting boxBelow to -cellnum lets you specify an explicit cell number within the boxed row from which the current cell will sit below vertically. The cells specified within the boxed row are counted, starting at 1 until cellnum is reached and then the current cell will sit below it.
Note that setting boxBelow to a non-empty string overrides 3B2's automatic behaviour and can give odd results including forcing cells to clash into one another; particularly when using a negative cellnum.
boxBelow
Access
read-write
Returns
String
boxGutter attribute
PI: tbcboxgut
Returns the gutter used when stacking cells in a boxed row. By default this has value 0 which means that cells touch. When you specify a value for an individual cell, it adds the space when working out how to stack the current cell in relation to existing cells in the boxed row. It does not effect subsequent cells which have their own gutter.
This applies when stacking either above or below.
It has no effect for any cells that sit on the baseline when stacking above; but does effect the first cells to stack below.
boxGutter
Access
read-write
Returns
fLength
boxLeft attribute
PI: tbcboxl
Returns the left hand edge of individual cells depending on the hash rule width of the cells that they stack above/below. This is the corresponding property to boxRight which allows you to control the right hand edge. Note, this has no effect to cells that sit on the baseline of the box row and has no effect if the cell your stacking above/below doesn't have ruleHashWidths set.
boxLeft takes 4 possible values as follows:
0
This is the default. The left hand edge of the cell is the left hand edge of the left-most column that it spans.
1
As 0, but instead of using the column edge it uses the edge of the leftmost cell that it directly stacks on.
2
The left hand edge of the cell is the left edge of the hash rule width of the left most cell.
3
As 2, but the cell is a bit wider to allow for any cell rules and padding, so that the resulting left hand edge of the text measure is the left edge of the hash rule width of the left most cell.
boxLeft
Access
read-write
Returns
int
boxRight attribute
PI: tbcboxr
Returns the right hand edge of individual cells depending on the width of the cells that they stack above/below. See boxLeft for details, which is the corresponding command for the left hand edge.
boxRight
Access
read-write
Returns
int
boxVertical attribute
PI: tbcboxv
boxVertical returns one of the 4 possible values as follows:
0
This is the default. The cells just stack above or below the box row baseline without any adjustments for the gaps above and below the cells.
1
The cells move fully into the gap above or below them, leaving the gap on the other side of them.
2
The cells move half way into the gap above or below them, thus centering themselves within their space.
4
The cells stretch to fill in the gap above or below them.
boxVertical
Access
read-write
Returns
int
boxVerticalExtra attribute
PI: tbcboxve
Returns true when cells have extra space available for boxVertical and boxVerticalPre.
boxVerticalExtra
Access
read-write
Returns
boolean
boxVerticalPre attribute
PI: tbcboxvp
Returns true when a pre-move option is specified for boxVertical; it does nothing unless boxVertical has a non-zero value of either 1 or 2 and is probably only useful for a value of 1. The pre-move option means that any cells that move either fully or half way into their corresponding gaps within a boxhead; make the space they leave behind available for other cells to move into.
N.B. Having made the space available with the pre-move, subsequent cells could stretch into this space instead by using boxVertical = 3.
boxVerticalPre
Access
read-write
Returns
boolean
columnNumber attribute
PI: tbcspan
Returns the column number the current cell is in.
columnNumber
Access
read-only
Returns
int
emptyReference attribute
PI: tbceref
Returns the reference tag you would like to be called at the occurance of an empty cell in a table if any.
emptyReference
Access
read-write
Returns
fStream
heightIncludePadding attribute
PI: tbchincpad
Returns the value of the property. When applying the specified height, should top and bottom padding be included. See fTableResolvedCell::minimumHeight
heightIncludePadding
Access
read-write
Returns
boolean
horizontalAlign attribute
PI: tbcfmth
Returns the horizontal format of this individual table cell.
horizontalAlign
Access
read-write
Returns
String
ignoreRuleWidths attribute
PI: tbcignrw
Returns false if cell rules extend into the cell and their width reduces the amount of space for content. Returns true if the width of any cell rules are ignored and they are drawn centred on the cell boundary.
ignoreRuleWidths
Access
read-write
Returns
boolean
indent attribute
PI: tbcindent
Returns the width of the cell indent.
indent
Access
read-write
Returns
fLength
indentAbsolute attribute
PI: tbcindentabs
This property can be used to control where the start edge of the cell indent is measured from.
Returns 0 (the default) if the indent is relative to the cells padding and indentstart.
Returns 1 if the indent is relative to the cell margin. This will be the start edge of the cell indent.
indentAbsolute
Access
read-write
Returns
int
indentEnd attribute
PI: tbcindentend
Returns the cell indent measured from the inside of the cell's rules after taking into account any cell padding. See also absoluteEnd .
The cell edge (left or right) this property is applied to follows fTable.progression. If fTable.progression is 0, this indent is applied to the right of the cell. If fTable.progression is 1, this indent is applied to the left of the cell.
indentEnd
Access
read-write
Returns
fLength
indentStart attribute
PI: tbcindentstart
Returns where the cell start indent is measured from the inside of the cell's rules after taking into account any cell padding. See also absoluteStart.
The cell edge (left or right) this property is applied to follows fTable.progression. If fTable.progression is 0, this indent is applied to the left of the cell. If fTable.progression is 1, this indent is applied to the right of the cell.
indentStart
Access
read-write
Returns
fLength
indentTab attribute
PI: tbcindenttab
Returns the cell indentation tab stop. This tab stop is used after the fTableResolvedCell.indent is applied.
indentTab
Access
read-write
Returns
fBlockTab
indentTab2 attribute
PI: tbcindenttab2
Returns the second cell indentation tab stop. This tab stop is used after the fTableResolvedCell.indent is applied.
indentTab2
Access
read-write
Returns
fBlockTab
keepTogether attribute
PI: tbckeeptog
Returns the value of the property. This is a column based keep and ensures that the cell is kept within the same parent column, be it either a frame column, a slim table column or a block column.
keepTogether
Access
read-write
Returns
int
minimumHeight attribute
PI: tbcminh
Returns the minimum height for this cell.
From APP 10.0 M040, fTableResolvedCell::ignoreRuleWidths and fTableResolvedCell::heightIncludePadding will be used when determining the cell height.
If fTableResolvedCell::ignoreRuleWidths is true, the minimum height will include the width of any specified rules.
If fTableResolvedCell::heightIncludePadding is true, the minimum height will include the top and bottom padding.
minimumHeight
Access
read-write
Returns
fLength
paddingBottom attribute
PI: tbcpadb
Returns the padding at the bottom of this cell
paddingBottom
Access
read-write
Returns
fLength
paddingLeft attribute
PI: tbcpadl
Returns the padding to the left of this cell.
paddingLeft
Access
read-write
Returns
fLength
paddingRight attribute
PI: tbcpadr
Returns the padding to the right of this cell
paddingRight
Access
read-write
Returns
fLength
paddingTop attribute
PI: tbcpadt
Returns the padding at the top of this cell
paddingTop
Access
read-write
Returns
fLength
paraAttributes attribute
PI: tbcpat
Returns the attributes to the reference defined by paraReference. These attributes can then modify the behaviour of your reference, by inheriting alternative properties for the table etc. This is particularly useful if your mark-up defines text properties for the table.
paraAttributes
Access
read-write
Returns
String
paraAttributesCombine attribute
PI: tbcpatc
Returns 1 when the paragraph attributes specified for the two defaults will be combined instead.
paraAttributesCombine
Access
read-write
Returns
boolean
paraReference attribute
PI: tbcpref
Returns a style reference tag to this individual table cell.
paraReference
Access
read-write
Returns
fStream
recallRelativeIndent attribute
PI: tbcrir
Returns true if it recalls the value of the relative indent from the previous row. i.e. If there is a fStyle::relativeIndent in force at the end of the cell in the previous row, then the value of the indent will be reinstated for this cell. Note that this recalls the exact value of the indent which is relative to the left hand edge of the paragraph - if the current paragraph has a different left hand edge than the previous one due to margins, cell rules etc., then the indents won't line up exactly. Using fTableColumn.columns[idx].recallRelativeIndent instead of fTableResolvedCell::recallRelativeIndent sets the default value for the column idx, which can then be over-ridden on a cell by cell basis.
recallRelativeIndent
Access
read-write
Returns
boolean
rowNumber attribute
PI: tbcspan
Returns the row number the current cell is in.
rowNumber
Access
read-only
Returns
int
ruleHashWidth attribute
PI: tbcrhash
Returns the value of the property. This allows you to specify a secondary width that the cell rules can use if they include a # flag. The second parameter is optional, and if present, the second form of the command is used. The value assigned to this property have the meanings specified in RuleHashWidths.
If a second parameter is given separated by a comma, then the hash rule width uses details from the sub-column and tab1 and tab2 specify the range of tabs whose widths you want to include. The tabs are numbered starting at 1, and so 0 always means the left hand edge.
ruleHashWidth
Access
read-write
Returns
String
ruleLeftFrameGutter attribute
PI: tbcrlfcgut
Returns the value of the property. Cell rules span left into frame gutter. This works in a similar way to ruleLeftGutter but used when the gutter in question is one of the frame-column gutters rather than the normal table-column gutters.
ruleLeftFrameGutter
Access
read-write
Returns
String
ruleLeftGutter attribute
PI: tbcrlgut
Returns the value of the property. When you have applied cell rules to your table it is possible to make the rule span into the gutter to the left of the cell.
ruleLeftGutter
Access
read-write
Returns
String
ruleRightFrameGutter attribute
PI: tbcrrfcgut
Returns the value of the property. Cell rules span right into frame gutter. This works in a similar way to ruleLeftGutter but used when the gutter in question is one of the frame-column gutters rather than the normal table-column gutters.
ruleRightFrameGutter
Access
read-write
Returns
String
ruleRightGutter attribute
PI: tbcrrgut
Returns the value of the property. When you have applied cell rules to your table it is possible to make the rule span into the gutter to the right of the cell.
ruleRightGutter
Access
read-write
Returns
String
rules attribute
PI: tbcrules
Returns the set of rules around this table cell.
rules
Access
read-only
Returns
fRules
spanColumnsNum attribute
PI: tbcspan
Returns the number of columns the current cell is to span.
spanColumnsNum
Access
read-write
Returns
int
spanRows attribute
PI: tbrspan
Returns the number of rows a table cell should span over.
spanRows
Access
read-write
Returns
int
verticalAlign attribute
PI: tbcfmtv
Returns the vertical alignment of text within this individual table cell.
verticalAlign
Access
read-write
Returns
String
widthIgnore attribute
PI: tbcignw
Returns true if 3B2 is to ignore the width of this particular cell when doing the pre-scan, allowing you to include a paragraph of text which you want to wrap. Another common use may be to specify table.defaultCell.widthIgnore = trueas the default attribute for the whole table, and then use widthIgnore = false for the headers, so that they alone control the widths of the columns.
widthIgnore
Access
read-write
Returns
boolean
widthMode attribute
PI: tbchmode
Returns the value of the property. When columns are being measured, the value of code effects how the width of this cell is taken into account. For every column 3B2 calculates a minimum and a maximum width, which is the maximum of all the cells minimum and maximum widths from that column.
widthMode
Access
read-write
Returns
String
widthOverlapMode attribute
PI: tbcwoverlap
Returns false when content is too wide for a cell it will skip into the following cell and add a warning to the format log. Returns true when content for a cell that is too wide, is allowed to overlap the cell width instead - but the warning is still issued.
widthOverlapMode
Access
read-write
Returns
boolean