X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Finsets%2Finsetfootlike.C;h=8aef1d25bdb2fb26e1323ffe8dca305ee40dbecd;hb=e28331ed63062dea10d0a21b9ec12034b4b17b9a;hp=5829adc652d294bc61a425630dc579eff4078d76;hpb=ef2290cf5e29a6bd1b5e8b83ff3b616a805a5543;p=lyx.git diff --git a/src/insets/insetfootlike.C b/src/insets/insetfootlike.C index 5829adc652..8aef1d25bd 100644 --- a/src/insets/insetfootlike.C +++ b/src/insets/insetfootlike.C @@ -11,15 +11,16 @@ #include #include "insetfootlike.h" -#include "metricsinfo.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,26 +44,41 @@ InsetFootlike::InsetFootlike(InsetFootlike const & in) } -void InsetFootlike::metrics(MetricsInfo & mi, Dimension & dim) 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 { - InsetCollapsable::metrics(mi, dim); - if (isOpen()) - dim.wid = mi.base.textwidth; - dim_ = dim; + 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, ostream & os) const +void InsetFootlike::write(Buffer const & buf, std::ostream & os) const { - os << getInsetName() << "\n"; + os << to_utf8(getInsetName()) << "\n"; InsetCollapsable::write(buf, os); } -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); } + + +} // namespace lyx