]> git.lyx.org Git - lyx.git/blobdiff - src/insets/RenderButton.cpp
Request buffer update rather than do it.
[lyx.git] / src / insets / RenderButton.cpp
index 7f983c5705a27ee2a162d746e5eb4592607dd32f..5320507371d844cc3d4c70f78a17571a53a65f44 100644 (file)
@@ -33,11 +33,11 @@ RenderBase * RenderButton::clone(Inset const *) const
 
 
 void RenderButton::update(docstring const & text, bool editable,
-                          bool inherit_font)
+                          bool inherit)
 {
        text_ = text;
        editable_ = editable;
-       inherit_font_ = inherit_font;
+       inherit_font_ = inherit;
 }
 
 
@@ -45,13 +45,9 @@ void RenderButton::metrics(MetricsInfo & mi, Dimension & dim) const
 {
        FontInfo font = inherit_font_ ? mi.base.font : sane_font;
        font.decSize();
-       frontend::FontMetrics const & fm =
-               theFontMetrics(font);
+       frontend::FontMetrics const & fm = theFontMetrics(font);
 
-       if (editable_)
-               fm.buttonText(text_, dim.wid, dim.asc, dim.des);
-       else
-               fm.rectText(text_, dim.wid, dim.asc, dim.des);
+       fm.buttonText(text_, Inset::TEXT_TO_INSET_OFFSET, dim.wid, dim.asc, dim.des);
 
        dim_ = dim;
 }
@@ -65,10 +61,13 @@ void RenderButton::draw(PainterInfo & pi, int x, int y) const
        font.decSize();
 
        if (editable_) {
-               pi.pain.buttonText(x, y, text_, font, renderState());
+               pi.pain.buttonText(x, y, text_, font,
+                                  renderState() ? Color_buttonhoverbg : Color_buttonbg,
+                                  Color_buttonframe, Inset::TEXT_TO_INSET_OFFSET);
        } else {
-               pi.pain.rectText(x, y, text_, font,
-                                Color_commandbg, Color_commandframe);
+               pi.pain.buttonText(x, y, text_, font,
+                                  Color_commandbg, Color_commandframe,
+                                  Inset::TEXT_TO_INSET_OFFSET);
        }
 }