]> git.lyx.org Git - lyx.git/blob - src/mathed/math_braceinset.h
re-adjust math-extern heuristics to new super/subscript inset
[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 #ifdef __GNUG__
8 #pragma interface
9 #endif
10
11 /** Extra nesting
12     \author André Pönitz
13 */
14
15 class MathBraceInset : public MathNestInset {
16 public:
17         ///
18         MathBraceInset();
19         ///
20         MathBraceInset(MathArray const & ar);
21         ///
22         MathInset * clone() const;
23         /// we write extra braces in any case...
24         bool extraBraces() const { return true; }
25         ///
26         void metrics(MathMetricsInfo & mi) const;
27         ///
28         void draw(MathPainterInfo &, int x, int y) const;
29         ///
30         void write(WriteStream & os) const;
31         /// write normalized content
32         void normalize(NormalStream & ns) const;
33         ///
34         void maplize(MapleStream &) const;
35         ///
36         void mathematicize(MathematicaStream &) const;
37         ///
38         void octavize(OctaveStream &) const;
39         ///
40         void mathmlize(MathMLStream &) const;
41         ///
42         void infoize(std::ostream & os) const;
43
44 private:
45         /// width of brace character
46         mutable int wid_;
47 };
48
49 #endif