7 #include "math_macroarg.h"
8 #include "mathed/support.h"
12 MathMacroArgument::MathMacroArgument()
13 : expnd_mode_(false), number_(1)
15 SetType(LM_OT_MACRO_ARG);
19 MathMacroArgument::MathMacroArgument(int n)
20 : expnd_mode_(false), number_(n)
22 SetType(LM_OT_MACRO_ARG);
26 MathedInset * MathMacroArgument::Clone()
32 void MathMacroArgument::setNumber(int n)
38 void MathMacroArgument::setExpand(bool e)
44 bool MathMacroArgument::getExpand() const
50 void MathMacroArgument::draw(Painter & pain, int x, int baseline)
53 MathParInset::draw(pain, x, baseline);
55 std::ostringstream ost;
56 ost << '#' << number_;
57 drawStr(pain, LM_TC_TEX, size(), x, baseline, ost.str().c_str());
61 void MathMacroArgument::Metrics()
64 MathParInset::Metrics();
66 std::ostringstream ost;
67 ost << '#' << number_;
68 width = mathed_string_width(LM_TC_TEX, size(), ost.str().c_str());
69 mathed_string_height(LM_TC_TEX, size(), ost.str().c_str(),
75 void MathMacroArgument::Write(ostream & os, bool fragile)
78 MathParInset::Write(os, fragile);
80 os << '#' << number_ << ' ';