3 * \file InsetMathBrace.h
4 * This file is part of LyX, the document processor.
5 * Licence details can be found in the file COPYING.
9 * Full author contact details are available in file CREDITS.
12 #ifndef MATH_BRACEINSET_H
13 #define MATH_BRACEINSET_H
15 #include "InsetMathNest.h"
22 class InsetMathBrace : public InsetMathNest {
25 InsetMathBrace(Buffer * buf);
27 InsetMathBrace(MathData const & ar);
28 /// identifies brace insets
29 InsetMathBrace * asBraceInset() { return this; }
30 /// identifies brace insets
31 InsetMathBrace const * asBraceInset() const { return this; }
32 /// we write extra braces in any case...
33 bool extraBraces() const { return true; }
35 void metrics(MetricsInfo & mi, Dimension & dim) const;
37 void draw(PainterInfo &, int x, int y) const;
39 void write(WriteStream & os) const;
40 /// write normalized content
41 void normalize(NormalStream & ns) const;
43 void maple(MapleStream &) const;
45 void mathematica(MathematicaStream &) const;
47 void octave(OctaveStream &) const;
49 void mathmlize(MathStream &) const;
51 void htmlize(HtmlStream &) const;
53 void infoize(odocstream & os) const;
55 InsetCode lyxCode() const { return MATH_BRACE_CODE; }
57 virtual Inset * clone() const;