]> git.lyx.org Git - lyx.git/blob - src/mathed/math_fontinset.h
small advances with \mbox
[lyx.git] / src / mathed / math_fontinset.h
1 // -*- C++ -*-
2 #ifndef MATH_FONTINSET_H
3 #define MATH_FONTINSET_H
4
5 #include "math_nestinset.h"
6 #include "LString.h"
7 #include "lyxfont.h"
8
9 #ifdef __GNUG__
10 #pragma interface
11 #endif
12
13 /** The base character inset.
14     \author André Pönitz
15  */
16
17 class MathFontInset : public MathNestInset {
18 public:
19         ///
20         explicit MathFontInset(string const & name);
21         ///
22         MathInset * clone() const;
23         ///
24         void metrics(MathMetricsInfo & mi) const;
25         ///
26         void draw(MathPainterInfo & pi, int x, int y) const;
27         ///
28         void metricsT(TextMetricsInfo const & mi) const;
29         ///
30         void drawT(TextPainter & pi, int x, int y) const;
31         ///
32         void write(WriteStream & os) const;
33         ///
34         void normalize(NormalStream &) const;
35         /// identifies Fontinsets
36         MathFontInset const * asFontInset() const { return this; }
37         ///
38         void validate(LaTeXFeatures & features) const;
39         ///
40         void infoize(std::ostream & os) const;
41
42 private:
43         /// the font to be used on screen
44         string name_;
45 };
46 #endif