3 * \file InsetMathUnknown.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 "InsetMath.h"
17 #include "support/docstring.h"
22 /// LaTeX names for objects that we really don't know
23 class InsetMathUnknown
: public InsetMath
{
26 explicit InsetMathUnknown(docstring
const & name
,
27 docstring
const & selection
= docstring(),
28 bool final
= true, bool black
= false);
30 void metrics(MetricsInfo
& mi
, Dimension
& dim
) const;
32 void draw(PainterInfo
& pi
, int x
, int y
) const;
34 void setName(docstring
const & name
);
36 docstring
name() const;
39 docstring
const & selection() const { return selection_
; }
41 /// identifies UnknownInsets
42 InsetMathUnknown
const * asUnknownInset() const { return this; }
43 /// identifies UnknownInsets
44 InsetMathUnknown
* asUnknownInset() { return this; }
47 void normalize(NormalStream
&) const;
49 void maple(MapleStream
&) const;
51 void mathematica(MathematicaStream
&) const;
53 void mathmlize(MathStream
&) const;
55 void octave(OctaveStream
&) const;
61 int kerning(BufferView
const *) const { return kerning_
; }
63 InsetCode
lyxCode() const { return MATH_UNKNOWN_CODE
; }
67 Inset
* clone() const { return new InsetMathUnknown(*this); }
71 /// are we finished creating the name?
77 /// the selection which was replaced by this