X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FFontIterator.C;h=ab97a6f384c5c862bc13f0a6b224f3cf7585bc97;hb=e7f4618bcce770369cf46335c2c7f0164b4b8857;hp=9de58e3e3b72dbf323cb12120c5c7ee73d1bbb2d;hpb=a92a5e20e6560ca675710b0def3703845e67737d;p=lyx.git diff --git a/src/FontIterator.C b/src/FontIterator.C index 9de58e3e3b..ab97a6f384 100644 --- a/src/FontIterator.C +++ b/src/FontIterator.C @@ -6,30 +6,34 @@ * \author Alfredo Braunstein * * Full author contact details are available in file CREDITS. - * + * */ #include -#include "lyxtext.h" - #include "FontIterator.h" + +#include "buffer.h" +#include "lyxtext.h" #include "paragraph.h" -FontIterator::FontIterator(LyXText const & text, ParagraphList::iterator pit, - lyx::pos_type pos) - : text_(text), pit_(pit), pos_(pos), - font_(text.getFont(pit, pos)), - endspan_(pit->getEndPosOfFontSpan(pos)), - bodypos_(pit->beginOfBody()) +namespace lyx { + + +FontIterator::FontIterator(Buffer const & buffer, LyXText const & text, + Paragraph const & par, pos_type pos) + : buffer_(buffer), text_(text), par_(par), pos_(pos), + font_(text.getFont(buffer, par, pos)), + endspan_(par.fontSpan(pos).last), + bodypos_(par.beginOfBody()) {} -LyXFont FontIterator::operator*() const +LyXFont const & FontIterator::operator*() const { - return font_; + return font_; } @@ -43,8 +47,11 @@ FontIterator & FontIterator::operator++() { ++pos_; if (pos_ > endspan_ || pos_ == bodypos_) { - font_ = text_.getFont(pit_, pos_); - endspan_ = pit_->getEndPosOfFontSpan(pos_); + font_ = text_.getFont(buffer_, par_, pos_); + endspan_ = par_.fontSpan(pos_).last; } return *this; } + + +} // namespace lyx