Give inset codes to all the math insets, so we get more information when
[lyx.git] / src / mathed / InsetMathBrace.h
blob4893db7c695a703fa8a336bbddbdc74bdb871f5d
1 // -*- C++ -*-
2 /**
3 * \file InsetMathBrace.h
4 * This file is part of LyX, the document processor.
5 * Licence details can be found in the file COPYING.
7 * \author André Pönitz
9 * Full author contact details are available in file CREDITS.
12 #ifndef MATH_BRACEINSET_H
13 #define MATH_BRACEINSET_H
15 #include "InsetMathNest.h"
18 namespace lyx {
21 /// Extra nesting
22 class InsetMathBrace : public InsetMathNest {
23 public:
24 ///
25 InsetMathBrace();
26 ///
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; }
34 ///
35 void metrics(MetricsInfo & mi, Dimension & dim) const;
36 ///
37 void draw(PainterInfo &, int x, int y) const;
38 ///
39 void write(WriteStream & os) const;
40 /// write normalized content
41 void normalize(NormalStream & ns) const;
42 ///
43 void maple(MapleStream &) const;
44 ///
45 void mathematica(MathematicaStream &) const;
46 ///
47 void octave(OctaveStream &) const;
48 ///
49 void mathmlize(MathStream &) const;
50 ///
51 void infoize(odocstream & os) const;
52 ///
53 InsetCode lyxCode() const { return MATH_BRACE_CODE; }
54 private:
55 virtual Inset * clone() const;
59 } // namespace lyx
61 #endif