]> git.lyx.org Git - lyx.git/blobdiff - src/mathed/math_funcinset.h
enable direct input of #1...#9; some whitespace changes
[lyx.git] / src / mathed / math_funcinset.h
index e85a8cc3b74f0ae753bcc8caab02bf060589352d..98786403d30e4c979a8824f054d571c08bccd68a 100644 (file)
@@ -2,7 +2,7 @@
 #ifndef MATH_FUNCINSET_H
 #define MATH_FUNCINSET_H
 
-#include "math_inset.h"
+#include "math_diminset.h"
 #include "math_defs.h"
 
 #ifdef __GNUG__
 /**
  Functions or LaTeX names for objects that I don't know how to draw.
  */
-class MathFuncInset : public MathedInset {
+class MathFuncInset : public MathDimInset {
 public:
        ///
-       explicit
-       MathFuncInset(string const & nm,
-                     short ot = LM_OT_FUNC, short st = LM_ST_TEXT);
+       explicit MathFuncInset(string const & nm);
        ///
-       MathedInset * Clone();
+       MathInset * clone() const;
        ///
-       void draw(Painter &, int, int);
+       void metrics(MathMetricsInfo const & st) const;
        ///
-       void Write(std::ostream &, bool fragile);
+       void draw(Painter &, int x, int y) const;
        ///
-       void WriteNormal(std::ostream &);
+       string const & name() const;
+       /// identifies FuncInsets
+       MathFuncInset * asFuncInset() { return this; }
        ///
-       void Metrics();
+       void setName(string const &);
        ///
-       bool GetLimits() const;
+       bool match(MathInset * p) const;
+
+       ///
+       void normalize(NormalStream &) const;
+       ///
+       void maplize(MapleStream &) const;
+       ///
+       void mathmlize(MathMLStream &) const;
+       ///
+       void octavize(OctaveStream &) const;
+       ///
+       void write(WriteStream &) const;
 private:
        ///
-       bool lims_;
+       string name_;
+       ///
+       mutable MathMetricsInfo mi_;
 };
 #endif