2 #ifndef MATH_MACROTEMPLATE_H
3 #define MATH_MACROTEMPLATE_H
5 #include "math_nestinset.h"
11 /** This class contains the macro definition
12 * \author Alejandro Aguilar Sierra
14 * Full author contact details are available in file CREDITS
16 //class MathMacroTemplate : public MathInset, boost::noncopyable
18 class MathMacroTemplate : public MathNestInset {
23 MathMacroTemplate(string const & name, int nargs,
24 MathArray const & = MathArray(), MathArray const & = MathArray());
26 explicit MathMacroTemplate(std::istream & is);
28 InsetBase * clone() const;
30 void write(WriteStream & os) const;
31 /// Number of arguments
38 void draw(PainterInfo &, int x, int y) const;
40 void metrics(MetricsInfo & mi, Dimension & dim) const;
41 /// identifies macro templates
42 MathMacroTemplate * asMacroTemplate() { return this; }
43 /// identifies macro templates
44 MathMacroTemplate const * asMacroTemplate() const { return this; }