static bool equal(DocIterator & o, DocIterator & n) { // Explicitly check for this, so we won't call // Paragraph::getChar for the last pos. bool const o_lastpos = o.pos() == o.lastpos(); bool const n_lastpos = n.pos() == n.lastpos(); if (o_lastpos || n_lastpos) return o_lastpos && n_lastpos; Paragraph const & old_par = o.text()->getPar(o.pit()); Paragraph const & new_par = n.text()->getPar(n.pit()); char_type const c_o = old_par.getChar(o.pos()); char_type const c_n = new_par.getChar(n.pos()); if (c_o != c_n) return false; if (old_par.isInset(o.pos())) { Inset const * i_o = old_par.getInset(o.pos()); Inset const * i_n = new_par.getInset(n.pos()); if (i_o && i_n) return equal(i_o, i_n); } Font fo = old_par.getFontSettings(o.buffer()->params(), o.pos()); Font fn = new_par.getFontSettings(n.buffer()->params(), n.pos()); return fo == fn; }
void InsetPreview::preparePreview(DocIterator const & pos) const { TexRow texrow; odocstringstream str; otexstream os(str, texrow); OutputParams runparams(&pos.buffer()->params().encoding()); latex(os, runparams); docstring const snippet = str.str(); preview_->addPreview(snippet, *pos.buffer()); }
void InsetPreview::reloadPreview(DocIterator const & pos) const { preparePreview(pos); preview_->startLoading(*pos.buffer()); }
bool SpellcheckerWidget::Private::isCurrentBuffer(DocIterator const & cursor) const { return start_.buffer() == cursor.buffer(); }