]> git.lyx.org Git - features.git/blobdiff - src/insets/InsetVSpace.cpp
Move Color::color enum to ColorCode.h
[features.git] / src / insets / InsetVSpace.cpp
index 43c3bc3d24830b20db64946bebb4f27aa02d22b2..b35a46cfc054f072e6a674dc052d6abe96f88d38 100644 (file)
@@ -18,7 +18,6 @@
 #include "DispatchResult.h"
 #include "FuncRequest.h"
 #include "gettext.h"
-#include "Color.h"
 #include "Lexer.h"
 #include "Text.h"
 #include "MetricsInfo.h"
@@ -118,7 +117,7 @@ int const arrow_size = 4;
 }
 
 
-bool InsetVSpace::metrics(MetricsInfo & mi, Dimension & dim) const
+void InsetVSpace::metrics(MetricsInfo & mi, Dimension & dim) const
 {
        int height = 3 * arrow_size;
        if (space_.length().len().value() >= 0.0)
@@ -138,18 +137,17 @@ bool InsetVSpace::metrics(MetricsInfo & mi, Dimension & dim) const
        dim.asc = height / 2 + (a - d) / 2; // align cursor with the
        dim.des = height - dim.asc;         // label text
        dim.wid = ADD_TO_VSPACE_WIDTH + 2 * arrow_size + 5 + w;
-       bool const changed = dim_ != dim;
-       dim_ = dim;
-       return changed;
+       // Cache the inset dimension. 
+       setDimCache(mi, dim);
 }
 
 
 void InsetVSpace::draw(PainterInfo & pi, int x, int y) const
 {
+       Dimension const dim = dimension(*pi.base.bv);
        x += ADD_TO_VSPACE_WIDTH;
-
-       int const start = y - dim_.asc;
-       int const end   = y + dim_.des;
+       int const start = y - dim.asc;
+       int const end   = y + dim.des;
 
        // y-values for top arrow
        int ty1, ty2;
@@ -178,7 +176,7 @@ void InsetVSpace::draw(PainterInfo & pi, int x, int y) const
        int d = 0;
 
        Font font;
-       font.setColor(Color::added_space);
+       font.setColor(Color_added_space);
        font.decSize();
        font.decSize();
        docstring const lab = label();
@@ -186,18 +184,18 @@ void InsetVSpace::draw(PainterInfo & pi, int x, int y) const
 
        pi.pain.rectText(x + 2 * arrow_size + 5,
                         start + (end - start) / 2 + (a - d) / 2,
-                        lab, font, Color::none, Color::none);
+                        lab, font, Color_none, Color_none);
 
        // top arrow
-       pi.pain.line(x, ty1, midx, ty2, Color::added_space);
-       pi.pain.line(midx, ty2, rightx, ty1, Color::added_space);
+       pi.pain.line(x, ty1, midx, ty2, Color_added_space);
+       pi.pain.line(midx, ty2, rightx, ty1, Color_added_space);
 
        // bottom arrow
-       pi.pain.line(x, by1, midx, by2, Color::added_space);
-       pi.pain.line(midx, by2, rightx, by1, Color::added_space);
+       pi.pain.line(x, by1, midx, by2, Color_added_space);
+       pi.pain.line(midx, by2, rightx, by1, Color_added_space);
 
        // joining line
-       pi.pain.line(midx, ty2, midx, by2, Color::added_space);
+       pi.pain.line(midx, ty2, midx, by2, Color_added_space);
 }