-FracChanger::FracChanger(MetricsBase & mb)
- : StyleChanger(mb, smallerFracStyle(mb.style))
-{}
-
-
-
-ArrayChanger::ArrayChanger(MetricsBase & mb)
- : StyleChanger(mb, mb.style == LM_ST_DISPLAY ? LM_ST_TEXT : mb.style)
-{}
-
-
-
-ShapeChanger::ShapeChanger(LyXFont & font, LyXFont::FONT_SHAPE shape)
- : Changer<LyXFont, LyXFont::FONT_SHAPE>(font)
-{
- save_ = orig_.shape();
- orig_.setShape(shape);
-}
-
-
-ShapeChanger::~ShapeChanger()
-{
- orig_.setShape(save_);
-}
-
-
-
-StyleChanger::StyleChanger(MetricsBase & mb, Styles style)
- : Changer<MetricsBase>(mb)
-{
- static const int diff[4][4] =
- { { 0, 0, -3, -5 },
- { 0, 0, -3, -5 },
- { 3, 3, 0, -2 },
- { 5, 5, 2, 0 } };
- save_ = mb;
- int t = diff[mb.style][style];
- if (t > 0)
- while (t--)
- mb.font.incSize();
- else
- while (t++)
- mb.font.decSize();
- mb.style = style;
-}
-
-
-StyleChanger::~StyleChanger()
-{
- orig_ = save_;
-}
-
-
-
-FontSetChanger::FontSetChanger(MetricsBase & mb, char const * name)
- : Changer<MetricsBase>(mb)
-{
- save_ = mb;
- LyXFont::FONT_SIZE oldsize = save_.font.size();
- mb.fontname = name;
- mb.font = LyXFont();
- augmentFont(mb.font, from_ascii(name));
- mb.font.setSize(oldsize);
-}
-
-
-FontSetChanger::FontSetChanger(MetricsBase & mb, docstring const & name)
- : Changer<MetricsBase>(mb)
-{
- save_ = mb;
- LyXFont::FONT_SIZE oldsize = save_.font.size();
- mb.fontname = to_utf8(name);
- mb.font = LyXFont();
- augmentFont(mb.font, name);
- mb.font.setSize(oldsize);
-}
-
-
-FontSetChanger::~FontSetChanger()