#ifndef MATH_INSET_H
#define MATH_INSET_H
-#include "MathData.h"
-
#include "insets/Inset.h"
-#include "TexRow.h"
-
namespace lyx {
class MathematicaStream;
class MathStream;
class WriteStream;
-class InfoStream;
+class MathData;
class MathMacroTemplate;
class MathMacro;
-class MathPosFinder;
class Cursor;
class TextPainter;
class TextMetricsInfo;
class ReplaceData;
+/// Type of unique identifiers for math insets (used in TexRow)
+typedef void const * uid_type;
+
class InsetMath : public Inset {
public:
/// identifies things that can get scripts
virtual bool isScriptable() const { return false; }
- /// is the a relational operator (used for splitting equations)
- virtual bool isRelOp() const { return false; }
+ /// identifies a binary operators (used for spacing)
+ virtual bool isMathBin() const { return false; }
+ /// identifies relational operators (used for spacing and splitting equations)
+ virtual bool isMathRel() const { return false; }
+ /// identifies punctuation (used for spacing)
+ virtual bool isMathPunct() const { return false; }
/// will this get written as a single block in {..}
virtual bool extraBraces() const { return false; }