case CFRAC:
case CFRACLEFT:
case CFRACRIGHT:
+ case AASTEX_CASE:
mc = MC_INNER;
break;
case NICEFRAC:
case DFRAC:
case TFRAC:
case OVER:
- case ATOP: {
+ case ATOP:
+ case AASTEX_CASE: {
int const dy = axis_height(mi.base);
Changer dummy =
// \tfrac is always in text size
(kind_ == CFRAC
|| kind_ == CFRACLEFT
|| kind_ == CFRACRIGHT
- || kind_ == DFRAC) ? mi.base.font.changeStyle(DISPLAY_STYLE) :
+ || kind_ == DFRAC
+ || kind_ == AASTEX_CASE) ? mi.base.font.changeStyle(DISPLAY_STYLE) :
// all others
mi.base.changeFrac();
Changer dummy2 = mi.base.changeEnsureMath();
case DFRAC:
case TFRAC:
case OVER:
- case ATOP: {
+ case ATOP:
+ case AASTEX_CASE: {
int const dy = axis_height(pi.base);
Changer dummy =
// \tfrac is always in text size
(kind_ == CFRAC
|| kind_ == CFRACLEFT
|| kind_ == CFRACRIGHT
- || kind_ == DFRAC) ? pi.base.font.changeStyle(DISPLAY_STYLE) :
+ || kind_ == DFRAC
+ || kind_ == AASTEX_CASE) ? pi.base.font.changeStyle(DISPLAY_STYLE) :
// all others
pi.base.changeFrac();
Dimension const dim1 = cell(1).dimension(*pi.base.bv);
}
-void InsetMathFrac::write(WriteStream & os) const
+void InsetMathFrac::write(TeXMathStream & os) const
{
MathEnsurer ensurer(os);
switch (kind_) {
case CFRACRIGHT:
os << "\\cfrac[r]{" << cell(0) << "}{" << cell(1) << '}';
break;
+ case AASTEX_CASE:
+ os << "\\case{" << cell(0) << "}{" << cell(1) << '}';
+ break;
}
}
return from_ascii("unit");
case ATOP:
return from_ascii("atop");
+ case AASTEX_CASE:
+ return from_ascii("case");
+ default:
+ return docstring();
}
- // shut up stupid compiler
- return docstring();
}
}
-void InsetMathFrac::mathmlize(MathStream & ms) const
+void InsetMathFrac::mathmlize(MathMLStream & ms) const
{
switch (kind_) {
case ATOP:
case CFRAC:
case CFRACLEFT:
case CFRACRIGHT:
+ case AASTEX_CASE:
ms << MTag("mfrac")
- << MTag("mrow") << cell(0) << ETag("mrow")
- << MTag("mrow") << cell(1) << ETag("mrow")
+ << cell(0)
+ << cell(1)
<< ETag("mfrac");
break;
case NICEFRAC:
ms << MTag("mfrac", "bevelled='true'")
- << MTag("mrow") << cell(0) << ETag("mrow")
- << MTag("mrow") << cell(1) << ETag("mrow")
+ << cell(0)
+ << cell(1)
<< ETag("mfrac");
break;
if (nargs() == 3)
ms << cell(2);
ms << MTag("mfrac", "bevelled='true'")
- << MTag("mrow") << cell(0) << ETag("mrow")
- << MTag("mrow") << cell(1) << ETag("mrow")
+ << cell(0)
+ << cell(1)
<< ETag("mfrac");
break;
case CFRAC:
case CFRACLEFT:
case CFRACRIGHT:
+ case AASTEX_CASE:
os << MTag("span", "class='frac'")
<< MTag("span", "class='numer'") << cell(0) << ETag("span")
<< MTag("span", "class='denom'") << cell(1) << ETag("span")
if (kind_ == CFRAC || kind_ == CFRACLEFT || kind_ == CFRACRIGHT
|| kind_ == DFRAC || kind_ == TFRAC)
features.require("amsmath");
+ if (kind_ == AASTEX_CASE)
+ features.require("aastex_case");
+
if (features.runparams().math_flavor == OutputParams::MathAsHTML)
// CSS adapted from eLyXer
features.addCSSSnippet(
"span.frac{display: inline-block; vertical-align: middle; text-align:center;}\n"
"span.numer{display: block;}\n"
"span.denom{display: block; border-top: thin solid #000040;}");
+
InsetMathNest::validate(features);
}
}
-void InsetMathBinom::write(WriteStream & os) const
+void InsetMathBinom::write(TeXMathStream & os) const
{
MathEnsurer ensurer(os);
switch (kind_) {
}
-void InsetMathBinom::mathmlize(MathStream & ms) const
+void InsetMathBinom::mathmlize(MathMLStream & ms) const
{
char ldelim = ' ';
char rdelim = ' ';