--- /dev/null
+#include "math_funcliminset.h"
+#include "mathed/math_parser.h"
+#include "support/LOstream.h"
+
+
+using std::ostream;
+
+MathFuncLimInset::MathFuncLimInset(const latexkeys * l)
+ : sym_(l)
+{}
+
+
+MathInset * MathFuncLimInset::clone() const
+{
+ return new MathFuncLimInset(*this);
+}
+
+
+void MathFuncLimInset::write(ostream & os, bool /* fragile */) const
+{
+ os << '\\' << sym_->name << ' ';
+}
+
+
+void MathFuncLimInset::writeNormal(ostream & os) const
+{
+ os << "[" << sym_->name << "] ";
+}
+
+
+void MathFuncLimInset::metrics(MathStyles st) const
+{
+ size(st);
+ mathed_string_dim(LM_TC_TEXTRM, size(), sym_->name, ascent_, descent_, width_);
+}
+
+
+void MathFuncLimInset::draw(Painter & pain, int x, int y) const
+{
+ xo(x);
+ yo(y);
+ drawStr(pain, LM_TC_TEXTRM, size_, x, y, sym_->name);
+}
--- /dev/null
+// -*- C++ -*-
+#ifndef MATH_FUNCLIMINSET_H
+#define MATH_FUNCLIMINSET_H
+
+#include "math_diminset.h"
+
+struct latexkeys;
+
+// "normal" symbols that don't take limits and don't grow in displayed
+// formulae
+
+class MathFuncLimInset : public MathDimInset {
+public:
+ ///
+ explicit MathFuncLimInset(latexkeys const *);
+ ///
+ MathInset * clone() const;
+ ///
+ void write(std::ostream &, bool fragile) const;
+ ///
+ void writeNormal(std::ostream &) const;
+ ///
+ void metrics(MathStyles st) const;
+ ///
+ void draw(Painter &, int x, int y) const;
+ ///
+ bool isScriptable() const { return true; }
+
+private:
+ ///
+ latexkeys const * sym_;
+};
+#endif