X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Fmathed%2Fmath_splitinset.C;h=83a9caf3b38e7aa6cc6ff56506c8e55fe3b83779;hb=b447408de232872fef1537fca542abc23702d572;hp=1a37210d7895f9202ba7c060347891e93993eb90;hpb=aed2b1804c474ad4927a681c708b45bee6c4a36f;p=lyx.git diff --git a/src/mathed/math_splitinset.C b/src/mathed/math_splitinset.C index 1a37210d78..83a9caf3b3 100644 --- a/src/mathed/math_splitinset.C +++ b/src/mathed/math_splitinset.C @@ -1,21 +1,47 @@ -#ifdef __GNUG__ -#pragma implementation -#endif +/** + * \file math_splitinset.C + * This file is part of LyX, the document processor. + * Licence details can be found in the file COPYING. + * + * \author André Pönitz + * + * Full author contact details are available in file CREDITS. + */ + +#include #include "math_splitinset.h" +#include "math_data.h" #include "math_mathmlstream.h" +#include "math_streamstr.h" + +using std::string; +using std::auto_ptr; -MathSplitInset::MathSplitInset(int n) - : MathGridInset(2, n) + +MathSplitInset::MathSplitInset(string const & name) + : MathGridInset(1, 1), name_(name) { setDefaults(); } -MathInset * MathSplitInset::clone() const +auto_ptr MathSplitInset::clone() const +{ + return auto_ptr(new MathSplitInset(*this)); +} + + +char MathSplitInset::defaultColAlign(col_type col) { - return new MathSplitInset(*this); + if (name_ == "split") + return 'l'; + if (name_ == "gathered") + return 'c'; + if (name_ == "aligned") + return (col & 1) ? 'l' : 'r'; + return 'l'; } @@ -23,9 +49,9 @@ void MathSplitInset::write(WriteStream & ws) const { if (ws.fragile()) ws << "\\protect"; - ws << "\\begin{split}"; + ws << "\\begin{" << name_ << '}'; MathGridInset::write(ws); if (ws.fragile()) ws << "\\protect"; - ws << "\\end{split}\n"; + ws << "\\end{" << name_ << "}\n"; }