Simplify InsetMathGrid structs

This commit is contained in:
Yuriy Skalko 2020-12-02 14:45:14 +02:00
parent 1dd676bed1
commit efaffb897d
2 changed files with 14 additions and 49 deletions

View File

@ -78,41 +78,15 @@ static void resetGrid(InsetMathGrid & grid)
}
//////////////////////////////////////////////////////////////
InsetMathGrid::CellInfo::CellInfo()
: multi(CELL_NORMAL)
{}
//////////////////////////////////////////////////////////////
InsetMathGrid::RowInfo::RowInfo()
: descent(0), ascent(0), lines(0), skip(0),
allow_newpage(true)
{}
int InsetMathGrid::RowInfo::skipPixels(MetricsInfo const & mi) const
{
return mi.base.inPixels(crskip);
}
//////////////////////////////////////////////////////////////
InsetMathGrid::ColInfo::ColInfo()
: align('c'), width(0), offset(0), lines(0), skip(0)
{}
//////////////////////////////////////////////////////////////

View File

@ -39,54 +39,45 @@ public:
};
/// additional per-cell information
class CellInfo {
public:
///
CellInfo();
struct CellInfo {
/// multicolumn flag
Multicolumn multi;
Multicolumn multi = CELL_NORMAL;
/// special multi columns alignment
docstring align;
};
/// additional per-row information
class RowInfo {
public:
///
RowInfo();
struct RowInfo {
///
int skipPixels(MetricsInfo const & mi) const;
/// cached descent
mutable int descent;
mutable int descent = 0;
/// cached ascent
mutable int ascent;
mutable int ascent = 0;
/// cached offset for each bufferview
mutable std::map<BufferView const *, int> offset;
/// how many hlines above this row?
unsigned int lines;
unsigned int lines = 0;
/// parameter to the line break
Length crskip;
/// extra distance between lines
int skip;
int skip = 0;
/// Is a page break allowed after this row?
bool allow_newpage;
bool allow_newpage = true;
};
// additional per-row information
class ColInfo {
public:
///
ColInfo();
struct ColInfo {
/// currently possible: 'l', 'c', 'r'
char align;
char align = 'c';
/// cached width
mutable int width;
mutable int width = 0;
/// cached offset
mutable int offset;
mutable int offset = 0;
/// how many lines to the left of this column?
unsigned int lines;
unsigned int lines = 0;
/// additional amount to the right to be skipped when drawing
int skip;
int skip = 0;
/// Special alignment.
/// This does also contain align_ and lines_ if it is nonempty.
/// It needs to be in sync with align_ and lines_ because some