#include <iosfwd>
#include <vector>
+
+namespace lyx {
+
class InsetTabular;
class LCursor;
class OutputParams;
row_type rows_arg);
/// Returns true if there is a topline, returns false if not
- bool topLine(idx_type cell, bool onlycolumn = false) const;
+ bool topLine(idx_type cell, bool wholerow = false) const;
/// Returns true if there is a topline, returns false if not
- bool bottomLine(idx_type cell, bool onlycolumn = false) const;
+ bool bottomLine(idx_type cell, bool wholerow = false) const;
/// Returns true if there is a topline, returns false if not
- bool leftLine(idx_type cell, bool onlycolumn = false) const;
+ bool leftLine(idx_type cell, bool wholecolumn = false) const;
/// Returns true if there is a topline, returns false if not
- bool rightLine(idx_type cell, bool onlycolumn = false) const;
+ bool rightLine(idx_type cell, bool wholecolumn = false) const;
///
bool topAlreadyDrawn(idx_type cell) const;
///
void setAllLines(idx_type cell, bool line);
///
- void setTopLine(idx_type cell, bool line, bool onlycolumn = false);
+ void setTopLine(idx_type cell, bool line, bool wholerow = false);
///
- void setBottomLine(idx_type cell, bool line, bool onlycolumn = false);
+ void setBottomLine(idx_type cell, bool line, bool wholerow = false);
///
- void setLeftLine(idx_type cell, bool line, bool onlycolumn = false);
+ void setLeftLine(idx_type cell, bool line, bool wholecolumn = false);
///
- void setRightLine(idx_type cell, bool line, bool onlycolumn = false);
+ void setRightLine(idx_type cell, bool line, bool wholecolumn = false);
///
void setAlignment(idx_type cell, LyXAlignment align,
bool onlycolumn = false);
///
bool setMColumnPWidth(LCursor &, idx_type, LyXLength const &);
///
- void setAlignSpecial(idx_type cell, std::string const & special,
+ void setAlignSpecial(idx_type cell, docstring const & special,
Feature what);
///
LyXAlignment getAlignment(idx_type cell,
///
LyXLength const getMColumnPWidth(idx_type cell) const;
///
- std::string const getAlignSpecial(idx_type cell, int what) const;
+ docstring const getAlignSpecial(idx_type cell, int what) const;
///
int getWidthOfCell(idx_type cell) const;
///
///
void read(Buffer const &, LyXLex &);
///
- int latex(Buffer const &, std::ostream &,
- OutputParams const &) const;
+ int latex(Buffer const &, odocstream &, OutputParams const &) const;
//
- int docbook(Buffer const & buf, std::ostream & os,
- OutputParams const &) const;
+ int docbook(Buffer const & buf, odocstream & os, OutputParams const &) const;
///
- int plaintext(Buffer const &, std::ostream &,
- OutputParams const & runparams,
- int const depth,
- bool onlydata, unsigned char delim) const;
+ void plaintext(Buffer const &, odocstream &,
+ OutputParams const & runparams, int const depth,
+ bool onlydata, unsigned char delim) const;
///
bool isMultiColumn(idx_type cell) const;
///
///
bool rotate;
///
- std::string align_special;
+ docstring align_special;
///
LyXLength p_width; // this is only set for multicolumn!!!
///
///
LyXLength p_width;
///
- std::string align_special;
+ docstring align_special;
};
///
typedef std::vector<columnstruct> column_vector;
///
// helper function for Latex returns number of newlines
///
- int TeXTopHLine(std::ostream &, row_type row) const;
+ int TeXTopHLine(odocstream &, row_type row) const;
///
- int TeXBottomHLine(std::ostream &, row_type row) const;
+ int TeXBottomHLine(odocstream &, row_type row) const;
///
- int TeXCellPreamble(std::ostream &, idx_type cell) const;
+ int TeXCellPreamble(odocstream &, idx_type cell) const;
///
- int TeXCellPostamble(std::ostream &, idx_type cell) const;
+ int TeXCellPostamble(odocstream &, idx_type cell) const;
///
- int TeXLongtableHeaderFooter(std::ostream &, Buffer const & buf,
+ int TeXLongtableHeaderFooter(odocstream &, Buffer const & buf,
OutputParams const &) const;
///
bool isValidRow(row_type const row) const;
///
- int TeXRow(std::ostream &, row_type const row, Buffer const & buf,
+ int TeXRow(odocstream &, row_type const row, Buffer const & buf,
OutputParams const &) const;
///
- // helper function for ASCII returns number of newlines
+ // helper functions for plain text
///
- int asciiTopHLine(std::ostream &, row_type row,
- std::vector<unsigned int> const &) const;
+ bool plaintextTopHLine(odocstream &, row_type row,
+ std::vector<unsigned int> const &) const;
///
- int asciiBottomHLine(std::ostream &, row_type row,
- std::vector<unsigned int> const &) const;
+ bool plaintextBottomHLine(odocstream &, row_type row,
+ std::vector<unsigned int> const &) const;
///
- int asciiPrintCell(Buffer const &, std::ostream &,
- OutputParams const &,
- idx_type cell, row_type row, col_type column,
- std::vector<unsigned int> const &,
- bool onlydata) const;
+ void plaintextPrintCell(Buffer const &, odocstream &,
+ OutputParams const &,
+ idx_type cell, row_type row, col_type column,
+ std::vector<unsigned int> const &,
+ bool onlydata) const;
/// auxiliary function for docbook
- int docbookRow(Buffer const & buf, std::ostream & os, row_type,
+ int docbookRow(Buffer const & buf, odocstream & os, row_type,
OutputParams const &) const;
private:
void fixCellNums();
};
+
+} // namespace lyx
+
#endif