7 #include "math_macrotemplate.h"
8 #include "math_macro.h"
9 #include "macro_support.h"
10 #include "support/LOstream.h"
11 #include "support/LAssert.h"
17 MathMacroTemplate::MathMacroTemplate() :
18 MathParInset(LM_ST_TEXT, "undefined", LM_OT_MACRO),
22 MathMacroTemplate::MathMacroTemplate(string const & nm, int na) :
23 MathParInset(LM_ST_TEXT, nm, LM_OT_MACRO),
28 int MathMacroTemplate::nargs() const
34 void MathMacroTemplate::WriteDef(ostream & os, bool fragile) const
36 os << "\n\\newcommand{\\" << name << "}";
39 os << "[" << na_ << "]";
45 const_cast<MathMacroTemplate *>(this)->Write(os, fragile);
50 void MathMacroTemplate::Metrics()
52 MathParInset::Metrics();
59 void MathMacroTemplate::draw(Painter & pain, int x, int y)
61 MathParInset::draw(pain, x + 2, y + 1);
65 pain.rectangle(x, y - a, w, h, LColor::blue);