Add some comments about the behavior of cellInset and cellIndex.

This commit is contained in:
Richard Heck 2014-08-09 13:13:10 -04:00
parent c2fdbbe01a
commit 3a78422782

View File

@ -545,7 +545,9 @@ public:
idx_type cellAbove(idx_type cell) const; idx_type cellAbove(idx_type cell) const;
/// ///
idx_type cellBelow(idx_type cell) const; idx_type cellBelow(idx_type cell) const;
/// /// \return the index of the VISIBLE cell at row, column
/// this will be the same as the cell in the previous row,
/// e.g., if the cell is part of a multirow
idx_type cellIndex(row_type row, col_type column) const; idx_type cellIndex(row_type row, col_type column) const;
/// ///
void setUsebox(idx_type cell, BoxType); void setUsebox(idx_type cell, BoxType);
@ -585,23 +587,33 @@ public:
bool haveLTCaption(CaptionType captiontype = CAPTION_ANY) const; bool haveLTCaption(CaptionType captiontype = CAPTION_ANY) const;
/// ///
// end longtable support // end longtable support
///
//@{
/// there is a subtle difference between these two methods.
/// cellInset(r,c);
/// and
/// cellInset(cellIndex(r,c));
/// can return different things. this is because cellIndex(r,c)
/// returns the VISIBLE cell at r,c, which may be the same as the
/// cell at the previous row or column, if we're dealing with some
/// multirow or multicell.
shared_ptr<InsetTableCell> cellInset(idx_type cell) const; shared_ptr<InsetTableCell> cellInset(idx_type cell) const;
///
shared_ptr<InsetTableCell> cellInset(row_type row, shared_ptr<InsetTableCell> cellInset(row_type row,
col_type column) const; col_type column) const;
//@}
/// ///
void setCellInset(row_type row, col_type column, void setCellInset(row_type row, col_type column,
shared_ptr<InsetTableCell>) const; shared_ptr<InsetTableCell>) const;
/// Search for \param inset in the tabular, with the /// Search for \param inset in the tabular, with the
/// ///
void validate(LaTeXFeatures &) const; void validate(LaTeXFeatures &) const;
//private:
// FIXME Now that cells have an InsetTableCell as their insets, rather //private:
// than an InsetText, it'd be possible to reverse the relationship here, // FIXME Now that cells have an InsetTableCell as their insets, rather
// so that cell_vector was a vector<InsetTableCell> rather than a // than an InsetText, it'd be possible to reverse the relationship here,
// vector<CellData>, and an InsetTableCell had a CellData as a member, // so that cell_vector was a vector<InsetTableCell> rather than a
// or perhaps just had its members as members. // vector<CellData>, and an InsetTableCell had a CellData as a member,
// or perhaps just had its members as members.
/// ///
class CellData { class CellData {
public: public: