2 #ifndef MATH_SYMBOLINSET_H
3 #define MATH_SYMBOLINSET_H
5 #include "math_diminset.h"
9 // "normal" symbols that don't take limits and don't grow in displayed
12 class MathSymbolInset : public MathDimInset {
15 explicit MathSymbolInset(latexkeys const *);
17 explicit MathSymbolInset(char const *);
19 MathInset * clone() const;
21 void write(WriteStream & os) const;
23 void normalize(NormalStream &) const;
25 void metrics(MathMetricsInfo const & st) const;
27 void draw(Painter &, int x, int y) const;
31 bool isScriptable() const;
32 /// identifies things that can get \limits or \nolimits
33 bool takesLimits() const;
36 void maplize(MapleStream &) const;
38 void mathmlize(MathMLStream &) const;
40 void octavize(OctaveStream &) const;
43 MathTextCodes code() const;
45 MathTextCodes code2() const;
48 latexkeys const * sym_;
52 mutable MathMetricsInfo mi_;