X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FFontIterator.h;h=44ecb3790813371662cc0c4de11a9cb2a7b628fb;hb=2417d9d911dbca181c48f45d1aad26d31c9aa815;hp=87686bdee16994a5d306f0b8bf2ec6598600a315;hpb=eb651c3d6100eac2d3ec6d176234a0f9512671b9;p=lyx.git diff --git a/src/FontIterator.h b/src/FontIterator.h index 87686bdee1..44ecb37908 100644 --- a/src/FontIterator.h +++ b/src/FontIterator.h @@ -9,7 +9,7 @@ * Full author contact details are available in file CREDITS. * * - * Calling LyXText::getFont is slow. While rebreaking we scan a + * Calling Text::getFont is slow. While rebreaking we scan a * paragraph from left to right calling getFont for every char. This * simple class address this problem by hidding an optimization trick * (not mine btw -AB): the font is reused in the whole font span. The @@ -20,42 +20,41 @@ #ifndef FONTITERATOR_H #define FONTITERATOR_H -#include "lyxfont.h" +#include "Font.h" #include "support/types.h" namespace lyx { -class Buffer; -class LyXText; class Paragraph; +class TextMetrics; -class FontIterator : std::iterator +class FontIterator : std::iterator { public: /// - FontIterator(Buffer const & buffer, LyXText const & text, - Paragraph const & par, pos_type pos); + FontIterator(TextMetrics const & tm, + Paragraph const & par, pit_type pit, pos_type pos); /// - LyXFont const & operator*() const; + Font const & operator*() const; /// FontIterator & operator++(); /// - LyXFont * operator->(); + Font * operator->(); private: /// - Buffer const & buffer_; - /// - LyXText const & text_; + TextMetrics const & tm_; /// Paragraph const & par_; /// + pit_type pit_; + /// pos_type pos_; /// - LyXFont font_; + Font font_; /// pos_type endspan_; ///