#ifndef MATH_SYMBOLINSET_H
#define MATH_SYMBOLINSET_H
-#include "math_inset.h"
+#include "math_diminset.h"
+#include "LString.h"
struct latexkeys;
-/// big operators
-class MathSymbolInset : public MathInset {
+// "normal" symbols that don't take limits and don't grow in displayed
+// formulae
+
+class MathSymbolInset : public MathDimInset {
public:
///
explicit MathSymbolInset(latexkeys const *);
///
void writeNormal(std::ostream &) const;
///
- void metrics(MathStyles st);
+ void metrics(MathStyles st) const;
///
- void draw(Painter &, int, int);
+ void draw(Painter &, int x, int y) const;
///
- bool isScriptable() const { return true; }
+ bool isRelOp() const;
+
private:
///
latexkeys const * sym_;
- ///
- string ssym_;
- ///
- MathTextCodes code_;
+ /// cache for the symbol's onscreen string representation
+ mutable string ssym_;
};
#endif