]> git.lyx.org Git - lyx.git/blobdiff - src/mathed/InsetMathChar.cpp
* dynamic macros as described in http://1stein.org/download/dynmacro.pdf
[lyx.git] / src / mathed / InsetMathChar.cpp
index 1b305ac38542477a52fe6898c3a99883c647ffae..f1e21131e10ef7e06957f7c68d61502ea8368b92 100644 (file)
@@ -56,7 +56,7 @@ Inset * InsetMathChar::clone() const
 }
 
 
-bool InsetMathChar::metrics(MetricsInfo & mi, Dimension & dim) const
+void InsetMathChar::metrics(MetricsInfo & mi, Dimension & dim) const
 {
 #if 1
        if (char_ == '=' && has_math_fonts) {
@@ -66,7 +66,7 @@ bool InsetMathChar::metrics(MetricsInfo & mi, Dimension & dim) const
                FontSetChanger dummy(mi.base, "cmm");
                dim = theFontMetrics(mi.base.font).dimension(char_);
        } else if (!slanted(char_) && mi.base.fontname == "mathnormal") {
-               ShapeChanger dummy(mi.base.font, Font::UP_SHAPE);
+               ShapeChanger dummy(mi.base.font, UP_SHAPE);
                dim = theFontMetrics(mi.base.font).dimension(char_);
        } else {
                frontend::FontMetrics const & fm = theFontMetrics(mi.base.font);
@@ -85,12 +85,8 @@ bool InsetMathChar::metrics(MetricsInfo & mi, Dimension & dim) const
                dim.wid += 2 * theFontMetrics(font_).width(' ');
        lyxerr << "InsetMathChar::metrics: " << dim << endl;
 #endif
-
-       if (dim_ == dim)
-               return false;
-
-       dim_ = dim;
-       return true;
+       // Cache the inset dimension. 
+       setDimCache(mi, dim);
 }
 
 
@@ -110,7 +106,7 @@ void InsetMathChar::draw(PainterInfo & pi, int x, int y) const
                FontSetChanger dummy(pi.base, "cmm");
                pi.draw(x, y, char_);
        } else if (!slanted(char_) && pi.base.fontname == "mathnormal") {
-               ShapeChanger dummy(pi.base.font, Font::UP_SHAPE);
+               ShapeChanger dummy(pi.base.font, UP_SHAPE);
                pi.draw(x, y, char_);
        } else {
                pi.draw(x, y, char_);