3 * \file math_unknowninset.h
4 * This file is part of LyX, the document processor.
5 * Licence details can be found in the file COPYING.
9 * Full author contact details are available in file CREDITS.
12 #ifndef MATH_UNKNOWNINSET_H
13 #define MATH_UNKNOWNINSET_H
15 #include "math_diminset.h"
18 /// LaTeX names for objects that we really don't know
19 class MathUnknownInset : public MathDimInset {
22 explicit MathUnknownInset(std::string const & name,
23 bool final = true, bool black = false);
25 std::auto_ptr<InsetBase> clone() const;
27 void metrics(MetricsInfo & mi, Dimension & dim) const;
29 void draw(PainterInfo & pi, int x, int y) const;
31 void setName(std::string const & name);
33 std::string name() const;
34 /// identifies UnknownInsets
35 MathUnknownInset const * asUnknownInset() const { return this; }
36 /// identifies UnknownInsets
37 MathUnknownInset * asUnknownInset() { return this; }
40 void normalize(NormalStream &) const;
42 void maple(MapleStream &) const;
44 void mathematica(MathematicaStream &) const;
46 void mathmlize(MathMLStream &) const;
48 void octave(OctaveStream &) const;
56 /// are we finished creating the name?