]> git.lyx.org Git - lyx.git/blob - src/mathed/math_braceinset.h
Jean-Marc's fix for wrong descent
[lyx.git] / src / mathed / math_braceinset.h
1 // -*- C++ -*-
2 #ifndef MATH_BRACEINSET_H
3 #define MATH_BRACEINSET_H
4
5 #include "math_nestinset.h"
6
7
8 /** Extra nesting
9  *  \author André Pönitz
10  *
11  * Full author contact details are available in file CREDITS
12 */
13
14 class MathBraceInset : public MathNestInset {
15 public:
16         ///
17         MathBraceInset();
18         ///
19         MathBraceInset(MathArray const & ar);
20         ///
21         MathInset * clone() const;
22         /// we write extra braces in any case...
23         bool extraBraces() const { return true; }
24         ///
25         void metrics(MathMetricsInfo & mi) const;
26         ///
27         void draw(MathPainterInfo &, int x, int y) const;
28         ///
29         void write(WriteStream & os) const;
30         /// write normalized content
31         void normalize(NormalStream & ns) const;
32         ///
33         void maple(MapleStream &) const;
34         ///
35         void mathematica(MathematicaStream &) const;
36         ///
37         void octave(OctaveStream &) const;
38         ///
39         void mathmlize(MathMLStream &) const;
40         ///
41         void infoize(std::ostream & os) const;
42
43 private:
44         /// width of brace character
45         mutable int wid_;
46 };
47
48 #endif