* This file is part of LyX, the document processor.
* Licence details can be found in the file COPYING.
*
- * \author André Pönitz
+ * \author André Pönitz
*
* Full author contact details are available in file CREDITS.
*/
#define MATH_MATRIXINSET_H
#include "InsetMathGrid.h"
+#include "support/strfwd.h"
namespace lyx {
-// "shortcut" for DelimInset("(",ArrayInset,")")
+// "shortcut" for DelimInset("(",ArrayInset,")") used by MathExtern
class InsetMathMatrix : public InsetMathGrid {
public:
///
- explicit InsetMathMatrix(InsetMathGrid const &);
- ///
- explicit InsetMathMatrix(std::string const & str);
+ explicit InsetMathMatrix(InsetMathGrid const &,
+ docstring const & left, docstring const & right);
/// identifies MatrixInsets
- InsetMathMatrix const * asMatrixInset() const { return this; }
+ InsetMathMatrix const * asMatrixInset() const override { return this; }
///
- void write(WriteStream & os) const;
+ void write(TeXMathStream & os) const override;
+ ///
+ void normalize(NormalStream &) const override;
+ ///
+ void maple(MapleStream &) const override;
+ ///
+ void maxima(MaximaStream &) const override;
///
- void normalize(NormalStream &) const;
+ void mathematica(MathematicaStream &) const override;
///
- void maple(MapleStream &) const;
+ void mathmlize(MathMLStream &) const override;
///
- void maxima(MaximaStream &) const;
+ void htmlize(HtmlStream &) const override;
///
- void mathematica(MathematicaStream &) const;
+ void octave(OctaveStream &) const override;
///
- void mathmlize(MathMLStream &) const;
+ InsetCode lyxCode() const override { return MATH_MATRIX_CODE; }
///
- void octave(OctaveStream &) const;
+ bool handlesMulticolumn() const override { return true; }
+
private:
- virtual std::auto_ptr<InsetBase> doClone() const;
+ Inset * clone() const override;
+ ///
+ docstring left_;
+ ///
+ docstring right_;
};