diff --git a/src/mathed/InsetMathChar.cpp b/src/mathed/InsetMathChar.cpp index a2b9b76069..1fef2209a5 100644 --- a/src/mathed/InsetMathChar.cpp +++ b/src/mathed/InsetMathChar.cpp @@ -109,7 +109,7 @@ void InsetMathChar::metrics(MetricsInfo & mi, Dimension & dim) const if (mathfont && subst_) { // If the char has a substitute, draw the replacement symbol // instead, but only in math mode. - mathedSymbolDim(mi, dim, subst_); + mathedSymbolDim(mi.base, dim, subst_); kerning_ = mathed_char_kerning(mi.base.font, *subst_->draw.rbegin()); return; } else if (!slanted(char_) && mi.base.fontname == "mathnormal") { diff --git a/src/mathed/InsetMathSymbol.cpp b/src/mathed/InsetMathSymbol.cpp index 885aa60f01..92d2573560 100644 --- a/src/mathed/InsetMathSymbol.cpp +++ b/src/mathed/InsetMathSymbol.cpp @@ -61,7 +61,7 @@ docstring InsetMathSymbol::name() const void InsetMathSymbol::metrics(MetricsInfo & mi, Dimension & dim) const { // set dim - mathedSymbolDim(mi, dim, sym_); + mathedSymbolDim(mi.base, dim, sym_); // set kerning_ kerning_ = mathed_char_kerning(mi.base.font, *sym_->draw.rbegin()); // correct height for broken cmex and wasy font diff --git a/src/mathed/MathSupport.cpp b/src/mathed/MathSupport.cpp index 3d708406d3..16fbbcd4be 100644 --- a/src/mathed/MathSupport.cpp +++ b/src/mathed/MathSupport.cpp @@ -660,7 +660,7 @@ void mathed_draw_deco(PainterInfo & pi, int x, int y, int w, int h, } -void mathedSymbolDim(MetricsInfo & mi, Dimension & dim, latexkeys const * sym) +void mathedSymbolDim(MetricsBase & mb, Dimension & dim, latexkeys const * sym) { LASSERT((bool)sym, return); //lyxerr << "metrics: symbol: '" << sym->name @@ -670,10 +670,10 @@ void mathedSymbolDim(MetricsInfo & mi, Dimension & dim, latexkeys const * sym) bool const italic_upcase_greek = sym->inset == "cmr" && sym->extra == "mathalpha" && - mi.base.fontname == "mathit"; + mb.fontname == "mathit"; std::string const font = italic_upcase_greek ? "cmm" : sym->inset; - Changer dummy = mi.base.changeFontSet(font); - mathed_string_dim(mi.base.font, sym->draw, dim); + Changer dummy = mb.changeFontSet(font); + mathed_string_dim(mb.font, sym->draw, dim); } diff --git a/src/mathed/MathSupport.h b/src/mathed/MathSupport.h index 003631b8ae..b7e3c7c39b 100644 --- a/src/mathed/MathSupport.h +++ b/src/mathed/MathSupport.h @@ -18,6 +18,7 @@ namespace lyx { +class MetricsBase; class MetricsInfo; class PainterInfo; class FontInfo; @@ -49,7 +50,7 @@ void mathed_string_dim(FontInfo const & font, int mathed_string_width(FontInfo const &, docstring const & s); -void mathedSymbolDim(MetricsInfo & mi, Dimension & dim, latexkeys const * sym); +void mathedSymbolDim(MetricsBase & mb, Dimension & dim, latexkeys const * sym); void mathedSymbolDraw(PainterInfo & pi, int x, int y, latexkeys const * sym);