]> git.lyx.org Git - lyx.git/blobdiff - src/insets/insetfootlike.C
The speed patch: redraw only rows that have changed
[lyx.git] / src / insets / insetfootlike.C
index cf4d1716298093f1663fe234376a93ae57fef97f..6e33522aedb1b157b66584ec6ebf707dcf0491a8 100644 (file)
@@ -13,6 +13,7 @@
 #include "insetfootlike.h"
 
 #include "buffer.h"
+#include "LColor.h"
 #include "metricsinfo.h"
 #include "paragraph.h"
 
@@ -43,13 +44,23 @@ InsetFootlike::InsetFootlike(InsetFootlike const & in)
 
 void InsetFootlike::metrics(MetricsInfo & mi, Dimension & dim) const
 {
+       LyXFont tmpfont = mi.base.font;
+       mi.base.font = LyXFont(LyXFont::ALL_SANE);
        InsetCollapsable::metrics(mi, dim);
-       if (isOpen())
-               dim.wid = mi.base.textwidth;
+       mi.base.font = tmpfont;
        dim_ = dim;
 }
 
 
+void InsetFootlike::draw(PainterInfo & pi, int x, int y) const
+{
+       LyXFont tmpfont = pi.base.font;
+       pi.base.font = LyXFont(LyXFont::ALL_SANE);
+       InsetCollapsable::draw(pi, x, y);
+       pi.base.font = tmpfont;
+}
+
+
 void InsetFootlike::write(Buffer const & buf, ostream & os) const
 {
        os << getInsetName() << "\n";
@@ -57,10 +68,10 @@ void InsetFootlike::write(Buffer const & buf, ostream & os) const
 }
 
 
-bool InsetFootlike::insetAllowed(InsetOld::Code code) const
+bool InsetFootlike::insetAllowed(InsetBase::Code code) const
 {
-       if (code == InsetOld::FOOT_CODE || code == InsetOld::MARGIN_CODE
-           || code == InsetOld::FLOAT_CODE)
+       if (code == InsetBase::FOOT_CODE || code == InsetBase::MARGIN_CODE
+           || code == InsetBase::FLOAT_CODE)
                return false;
        return InsetCollapsable::insetAllowed(code);
 }