
The normal practice is to make sure that the adjacent cells, which are covered by the span, are empty. That is, cells for which no data is specified or where the value is one of the undefined values listed in the EditTable Data table below. This is because any data which exists in a cell before spanning is specified can remain visible, even though that location becomes part of a spanned cell.
| Defined Constant | Description |
|---|---|
| XintUNDEFINED_SHORT | Specifies an undefined short integer value. |
| XintUNDEFINED_INTEGER | Specifies an undefined integer value. |
| XintUNDEFINED_LONG | Specifies an undefined long integer value. |
| XintUNDEFINED_FLOAT | Specifies an undefined floating point value. |
| XintUNDEFINED_DOUBLE | Specifies an undefined double precision float point value. |
| XintUNDEFINED_STRING | Specifies an undefined character string. |
| XintUNDEFINED_POINTER | Specifies a NULL pointer. |
Also, if the XmNspanCellPointer resource is set to True, the cell pointer treats the spanned cell as a single location, and the cells that are covered by the span are inaccessible. However, if it is set to False, then the cells covered by a span can still be individually accessed and edited. Only empty row/column locations covered by a spanned cell will not interfere with the visibility of that cell.
The function XintEditTableCellSpanSetRange is used to set the cell span, as defined by the XintCellSpanFactor structure, over a given range of row/column locations. There is a corresponding function, XintEditTableCellSpanGetRange, that will retrieve the cell span factor for a particular cell.
Spanning can also occur in the horizontal and vertical annotation areas. This is done by specifying the starting row of the span range as zero (0) for the horizontal annotation and the starting column of the span range as zero (0) for the vertical annotation.