X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FInsetList.cpp;h=f5f8cf27029f252c770d4db5113fe1d2dc8e51a2;hb=e14f8daca43c69d638a37d7883d398bcc68d459c;hp=56401a4ba6d37112c555174a5da44e487c482702;hpb=f1cba8ff64b369792fd49f5ddf90e8126ab476ac;p=lyx.git diff --git a/src/InsetList.cpp b/src/InsetList.cpp index 56401a4ba6..f5f8cf2702 100644 --- a/src/InsetList.cpp +++ b/src/InsetList.cpp @@ -10,18 +10,15 @@ */ #include -#include #include "InsetList.h" -#include "Buffer.h" -#include "BufferParams.h" -#include "BranchList.h" - -#include "insets/InsetBranch.h" +#include "insets/Inset.h" #include "support/debug.h" +#include + using namespace std; namespace lyx { @@ -29,9 +26,9 @@ namespace lyx { namespace { -typedef InsetList::InsetTable Table; +typedef InsetList::Element Table; -struct InsetTablePosLess +struct ElementPosLess { bool operator()(Table const & t1, Table const & t2) const { @@ -39,12 +36,11 @@ struct InsetTablePosLess } }; -} // namespace anon +} // namespace -InsetList::InsetList(InsetList const & il) +InsetList::InsetList(InsetList const & il) : list_(il.list_) { - list_ = il.list_; List::iterator it = list_.begin(); List::iterator end = list_.end(); for (; it != end; ++it) @@ -85,19 +81,28 @@ void InsetList::setBuffer(Buffer & b) } +void InsetList::resetBuffer() +{ + List::iterator it = list_.begin(); + List::iterator end = list_.end(); + for (; it != end; ++it) + it->inset->resetBuffer(); +} + + InsetList::iterator InsetList::insetIterator(pos_type pos) { - InsetTable search_elem(pos, 0); + Element search_elem(pos, 0); return lower_bound(list_.begin(), list_.end(), search_elem, - InsetTablePosLess()); + ElementPosLess()); } InsetList::const_iterator InsetList::insetIterator(pos_type pos) const { - InsetTable search_elem(pos, 0); + Element search_elem(pos, 0); return lower_bound(list_.begin(), list_.end(), search_elem, - InsetTablePosLess()); + ElementPosLess()); } @@ -109,7 +114,7 @@ void InsetList::insert(Inset * inset, pos_type pos) LYXERR0("ERROR (InsetList::insert): " << "There is an inset in position: " << pos); } else { - list_.insert(it, InsetTable(pos, inset)); + list_.insert(it, Element(pos, inset)); } }