X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FInsetList.h;h=dcaa28eabce6ee073c00367b53032406c12e51be;hb=994844cb34eb1071f3b653fc220a719cde20d00c;hp=aa99aeb4af047cab255f1475c08cea422499376d;hpb=6725b2db59fbc23f08962c187c5aac283fe9efbb;p=lyx.git diff --git a/src/InsetList.h b/src/InsetList.h index aa99aeb4af..dcaa28eabc 100644 --- a/src/InsetList.h +++ b/src/InsetList.h @@ -4,7 +4,7 @@ * This file is part of LyX, the document processor. * Licence details can be found in the file COPYING. * - * \author Lars Gullik Bjønnes + * \author Lars Gullik Bjønnes * * Full author contact details are available in file CREDITS. */ @@ -12,6 +12,8 @@ #ifndef INSET_LIST_H #define INSET_LIST_H +#include "insets/InsetCode.h" + #include "support/types.h" #include @@ -25,6 +27,16 @@ class Buffer; /// class InsetList { public: + /// + InsetList() {} + /// + InsetList(InsetList const &); + /// Partial copy constructor. + /// Copy the InsetList contents from \p beg to \p end (without end). + InsetList(InsetList const &, pos_type beg, pos_type end); + /// + void setBuffer(Buffer &); + /// class InsetTable { public: @@ -71,10 +83,20 @@ public: /// void decreasePosAfterPos(pos_type pos); - /// replicate ourselves. - /// Warning: this should be used with care, only - /// Paragraph::Pimpl should use it actually. - void clone(); + /// search for next occurence of an \c Inset type. + /// \return the position of the found inset. + /// \retval -1 if no \c Inset is found. + pos_type find( + InsetCode code, ///< Code of inset to find. + pos_type startpos = 0 ///< start position for the search. + ) const; + + /// count occurences of of an \c Inset type. + /// \return the number of found inset(s). + int count( + InsetCode code, ///< Code of inset type to count. + pos_type startpos = 0 ///< start position for the counting. + ) const; private: ///