]> git.lyx.org Git - lyx.git/blobdiff - src/insets/insetfootlike.C
* src/LyXAction.C: mark goto-clear-bookmark as working without buffer
[lyx.git] / src / insets / insetfootlike.C
index 7922e022a682953004f8e4a3f9bfa2361dfee3b2..8aef1d25bdb2fb26e1323ffe8dca305ee40dbecd 100644 (file)
@@ -5,21 +5,22 @@
  *
  * \author Lars Gullik Bjønnes
  *
- * Full author contact details are available in file CREDITS
+ * Full author contact details are available in file CREDITS.
  */
 
 #include <config.h>
 
-
 #include "insetfootlike.h"
-#include "lyxfont.h"
-#include "buffer.h"
-#include "lyxtext.h"
-#include "support/LOstream.h"
 
+#include "buffer.h"
+#include "BufferView.h"
+#include "bufferparams.h"
+#include "LColor.h"
+#include "metricsinfo.h"
+#include "paragraph.h"
 
-using std::ostream;
 
+namespace lyx {
 
 InsetFootlike::InsetFootlike(BufferParams const & bp)
        : InsetCollapsable(bp)
@@ -43,17 +44,41 @@ InsetFootlike::InsetFootlike(InsetFootlike const & in)
 }
 
 
-void InsetFootlike::write(Buffer const * buf, ostream & os) const
+bool InsetFootlike::metrics(MetricsInfo & mi, Dimension & dim) const
+{
+       LyXFont tmpfont = mi.base.font;
+       mi.base.font = mi.base.bv->buffer()->params().getFont();
+       InsetCollapsable::metrics(mi, dim);
+       mi.base.font = tmpfont;
+       bool const changed = dim_ != dim;
+       dim_ = dim;
+       return changed;
+}
+
+
+void InsetFootlike::draw(PainterInfo & pi, int x, int y) const
 {
-       os << getInsetName() << "\n";
+       LyXFont tmpfont = pi.base.font;
+       pi.base.font = pi.base.bv->buffer()->params().getFont();
+       InsetCollapsable::draw(pi, x, y);
+       pi.base.font = tmpfont;
+}
+
+
+void InsetFootlike::write(Buffer const & buf, std::ostream & os) const
+{
+       os << to_utf8(getInsetName()) << "\n";
        InsetCollapsable::write(buf, os);
 }
 
 
-bool InsetFootlike::insetAllowed(Inset::Code code) const
+bool InsetFootlike::insetAllowed(InsetBase::Code code) const
 {
-       if ((code == Inset::FOOT_CODE) || (code == Inset::MARGIN_CODE)
-           || (code == Inset::FLOAT_CODE))
+       if (code == InsetBase::FOOT_CODE || code == InsetBase::MARGIN_CODE
+           || code == InsetBase::FLOAT_CODE)
                return false;
        return InsetCollapsable::insetAllowed(code);
 }
+
+
+} // namespace lyx