using support::subst;
using support::addName;
-extern FontInfo lyxRead(Lexer &);
+extern FontInfo lyxRead(Lexer &, FontInfo const & fi = sane_font);
namespace {
IL_BGCOLOR,
IL_DECORATION,
IL_FREESPACING,
+ IL_FORCELTR,
IL_LABELFONT,
IL_LABELSTRING,
IL_LATEXNAME,
{ "decoration", IL_DECORATION },
{ "end", IL_END },
{ "font", IL_FONT },
+ { "forceltr", IL_FORCELTR },
{ "freespacing", IL_FREESPACING },
{ "keepempty", IL_KEEPEMPTY },
{ "labelfont", IL_LABELFONT },
string decoration;
string latexname;
string latexparam;
- FontInfo font(defaultfont());
- FontInfo labelfont(defaultfont());
+ FontInfo font = inherit_font;
+ FontInfo labelfont = inherit_font;
ColorCode bgcolor(Color_background);
string preamble;
- bool multipar(false);
- bool passthru(false);
- bool needprotect(false);
- bool keepempty(false);
- bool freespacing(false);
+ bool multipar = false;
+ bool passthru = false;
+ bool needprotect = false;
+ bool keepempty = false;
+ bool freespacing = false;
+ bool forceltr = false;
bool getout = false;
while (!getout && lexrc.isOK()) {
latexparam = subst(lexrc.getString(), """, "\"");
break;
case IL_LABELFONT:
- labelfont = lyxRead(lexrc);
- labelfont.realize(defaultfont());
+ labelfont = lyxRead(lexrc, inherit_font);
+ break;
+ case IL_FORCELTR:
+ lexrc.next();
+ forceltr = lexrc.getBool();
break;
case IL_MULTIPAR:
lexrc.next();
needprotect = lexrc.getBool();
break;
case IL_FONT:
- font = lyxRead(lexrc);
- font.realize(defaultfont());
+ font = lyxRead(lexrc, inherit_font);
// So: define font before labelfont
labelfont = font;
break;
il.passthru = passthru;
il.needprotect = needprotect;
il.freespacing = freespacing;
+ il.forceltr = forceltr;
il.keepempty = keepempty;
il.font = font;
il.labelfont = labelfont;