]> git.lyx.org Git - lyx.git/blob - src/mathed/math_spaceinset.h
Jean-Marc's fix for wrong descent
[lyx.git] / src / mathed / math_spaceinset.h
1 // -*- C++ -*-
2 #ifndef MATH_SPACEINSET_H
3 #define MATH_SPACEINSET_H
4
5 #include "math_diminset.h"
6
7
8 /// Smart spaces
9 class MathSpaceInset : public MathDimInset {
10 public:
11         ///
12         explicit MathSpaceInset(int sp);
13         ///
14         explicit MathSpaceInset(string const & name);
15         ///
16         MathInset * clone() const;
17         ///
18         MathSpaceInset const * asSpaceInset() const { return this; }
19         ///
20         MathSpaceInset * asSpaceInset() { return this; }
21         ///
22         void incSpace();
23         ///
24         void metrics(MathMetricsInfo & mi) const;
25         ///
26         void draw(MathPainterInfo & pi, int x, int y) const;
27
28         ///
29         void normalize(NormalStream &) const;
30         ///
31         void validate(LaTeXFeatures & features) const;
32         ///
33         void maple(MapleStream &) const;
34         ///
35         void mathematica(MathematicaStream &) const;
36         ///
37         void octave(OctaveStream &) const;
38         ///
39         void write(WriteStream & os) const;
40 private:
41         ///
42         int space_;
43 };
44 #endif