X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FCutAndPaste.cpp;h=3692dcc873fdaef55fdf95232feee7beb3b49513;hb=09df753df4c24470617c64d25eae6df2db85dfed;hp=63fa7ccdaee32b83dc3297cd3598b9cd8eed75ea;hpb=55beda376a4614ab9db56733e4a1cb42286568ae;p=lyx.git diff --git a/src/CutAndPaste.cpp b/src/CutAndPaste.cpp index 63fa7ccdae..3692dcc873 100644 --- a/src/CutAndPaste.cpp +++ b/src/CutAndPaste.cpp @@ -19,12 +19,14 @@ #include "buffer_funcs.h" #include "BufferParams.h" #include "BufferView.h" +#include "Changes.h" #include "Cursor.h" #include "debug.h" #include "ErrorList.h" #include "FuncRequest.h" #include "gettext.h" #include "InsetIterator.h" +#include "InsetList.h" #include "Language.h" #include "lfuns.h" #include "LyXFunc.h" @@ -44,6 +46,7 @@ #include "mathed/InsetMath.h" #include "mathed/MathSupport.h" +#include "support/limited_stack.h" #include "support/lstrings.h" #include "frontends/Clipboard.h" @@ -193,7 +196,7 @@ pasteSelectionHelper(Cursor & cur, ParagraphList const & parlist, // Set the inset owner of this paragraph. tmpbuf->setInsetOwner(pars[pit].inInset()); for (pos_type i = 0; i < tmpbuf->size(); ++i) { - if (tmpbuf->getChar(i) == Paragraph::META_INSET && + if (tmpbuf->isInset(i) && !pars[pit].insetAllowed(tmpbuf->getInset(i)->lyxCode())) // do not track deletion of invalid insets tmpbuf->eraseChar(i--, false); @@ -218,8 +221,8 @@ pasteSelectionHelper(Cursor & cur, ParagraphList const & parlist, ParIterator fend = par_iterator_end(in); for (; fpit != fend; ++fpit) { - InsetList::const_iterator lit = fpit->insetlist.begin(); - InsetList::const_iterator eit = fpit->insetlist.end(); + InsetList::const_iterator lit = fpit->insetList().begin(); + InsetList::const_iterator eit = fpit->insetList().end(); for (; lit != eit; ++lit) { switch (lit->inset->lyxCode()) { @@ -374,8 +377,7 @@ void copySelectionHelper(Buffer const & buf, ParagraphList & pars, // This is invalid outside of ERT, so we need to change it // to the buffer language. if (it->ownerCode() == ERT_CODE || it->ownerCode() == LISTINGS_CODE) { - it->changeLanguage(buf.params(), latex_language, - buf.getLanguage()); + it->changeLanguage(buf.params(), latex_language, buf.language()); } it->setInsetOwner(0); }