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 MathInset * clone() const;
19 void write(MathWriteInfo & os) const;
21 void writeNormal(std::ostream &) const;
23 void metrics(MathMetricsInfo const & st) const;
25 void draw(Painter &, int x, int y) const;
29 bool isScriptable() const;
30 /// identifies things that can get \limits or \nolimits
31 bool takesLimits() const;
34 void maplize(MapleStream &) const;
36 void mathmlize(MathMLStream &) const;
38 void octavize(OctaveStream &) const;
41 MathTextCodes code() const;
43 MathTextCodes code2() const;
46 latexkeys const * sym_;
50 mutable MathMetricsInfo mi_;