]> git.lyx.org Git - lyx.git/blobdiff - src/insets/render_button.C
* In the process of fixing the math background color bug, this commit transfer backgr...
[lyx.git] / src / insets / render_button.C
index 6a833c744bc3aef6d07cef23f60a3c426fd84291..a20b378a90b40bfde461000483d1cd8b59705233 100644 (file)
@@ -43,7 +43,7 @@ void RenderButton::update(docstring const & text, bool editable)
 }
 
 
-void RenderButton::metrics(MetricsInfo &, Dimension & dim) const
+bool RenderButton::metrics(MetricsInfo &, Dimension & dim) const
 {
        LyXFont font(LyXFont::ALL_SANE);
        font.decSize();
@@ -56,6 +56,10 @@ void RenderButton::metrics(MetricsInfo &, Dimension & dim) const
                fm.rectText(text_, dim.wid, dim.asc, dim.des);
 
        dim.wid += 4;
+       if (dim_ == dim)
+               return false;
+       dim_ = dim;
+       return true;
 }
 
 
@@ -67,7 +71,7 @@ void RenderButton::draw(PainterInfo & pi, int x, int y) const
        font.decSize();
 
        if (editable_) {
-               pi.pain.buttonText(x + 2, y, text_, font);
+               pi.pain.buttonText(x + 2, y, text_, font, renderState());
        } else {
                pi.pain.rectText(x + 2, y, text_, font,
                                 LColor::commandbg, LColor::commandframe);