X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FInsetList.cpp;h=d69211dbd4bb6eaaa343c6326521d3a0a276d4e2;hb=2455bc258f3b62c29ec4a41cb88070ff8518e842;hp=6b8e1fae4cc75a4b7e6c2a03ee6324448e39c0ff;hpb=2bf1c09376de37a3d66b79ca5f4304f29d5b4d06;p=lyx.git diff --git a/src/InsetList.cpp b/src/InsetList.cpp index 6b8e1fae4c..d69211dbd4 100644 --- a/src/InsetList.cpp +++ b/src/InsetList.cpp @@ -10,6 +10,7 @@ */ #include +#include #include "InsetList.h" @@ -51,6 +52,21 @@ InsetList::InsetList(InsetList const & il) } +InsetList::InsetList(InsetList const & il, pos_type beg, pos_type end) +{ + InsetList::const_iterator cit = il.begin(); + InsetList::const_iterator cend = il.end(); + for (; cit != cend; ++cit) { + if (cit->pos < beg) + continue; + if (cit->pos >= end) + break; + // Add a new entry in the insetlist_. + insert(cit->inset->clone(), cit->pos - beg); + } +} + + InsetList::~InsetList() { List::iterator it = list_.begin(); @@ -60,6 +76,15 @@ InsetList::~InsetList() } +void InsetList::setBuffer(Buffer & b) +{ + List::iterator it = list_.begin(); + List::iterator end = list_.end(); + for (; it != end; ++it) + it->inset->setBuffer(b); +} + + InsetList::iterator InsetList::insetIterator(pos_type pos) { InsetTable search_elem(pos, 0);