X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FCutAndPaste.h;h=bb12c2d9dd241f142dd4f2d378267aa140af4b8a;hb=c544107e324090c6eafb4c56749da2624b9b1122;hp=e27cb4ccbe1e49f80a52933a269bd6f3281ba036;hpb=76d84c61fd406f9c0c12969e1d2b182e7039e912;p=lyx.git diff --git a/src/CutAndPaste.h b/src/CutAndPaste.h index e27cb4ccbe..bb12c2d9dd 100644 --- a/src/CutAndPaste.h +++ b/src/CutAndPaste.h @@ -1,12 +1,14 @@ // -*- C++ -*- -/* This file is part of - * ====================================================== +/* \file CutAndPaste.h + * This file is part of LyX, the document processor. + * Licence details can be found in the file COPYING. * - * LyX, The Document Processor + * \author Juergen Vigna + * \author Lars Gullik Bjønnes + * \author Alfredo Braunstein * - * Copyright 1995-2001 the LyX Team. - * - * ====================================================== */ + * Full author contact details are available in file CREDITS + */ #ifndef CUTANDPASTE_H #define CUTANDPASTE_H @@ -14,43 +16,63 @@ #include "support/types.h" #include "ParagraphList.h" +#include + class Paragraph; class BufferParams; class LyXTextClass; +class ErrorList; /// namespace CutAndPaste { + /// -std::pair -cutSelection(ParagraphList & pars, - ParagraphList::iterator startpit, - ParagraphList::iterator endpit, - int start, int end, lyx::textclass_type tc, - bool doclear = false); +std::vector +CutAndPaste::availableSelections(Buffer const & buffer); + /// -std::pair -eraseSelection(ParagraphList & pars, - ParagraphList::iterator startpit, - ParagraphList::iterator endpit, - int start, int end, bool doclear = false); +PitPosPair cutSelection(BufferParams const & params, + ParagraphList & pars, + ParagraphList::iterator startpit, + ParagraphList::iterator endpit, + int start, int end, lyx::textclass_type tc, + bool doclear = false); /// -bool copySelection(Paragraph * startpar, Paragraph * endpar, +PitPosPair eraseSelection(BufferParams const & params, + ParagraphList & pars, + ParagraphList::iterator startpit, + ParagraphList::iterator endpit, + int start, int end, bool doclear = false); +/// +bool copySelection(ParagraphList::iterator startpit, + ParagraphList::iterator endpit, int start, int end, lyx::textclass_type tc); /// -bool pasteSelection(Paragraph ** par, Paragraph ** endpar, - int & pos, lyx::textclass_type tc); +std::pair +pasteSelection(Buffer const & buffer, + ParagraphList & pars, + ParagraphList::iterator pit, int pos, + lyx::textclass_type tc, ErrorList &); + +/// +std::pair +pasteSelection(Buffer const & buffer, + ParagraphList & pars, + ParagraphList::iterator pit, int pos, + lyx::textclass_type tc, + size_t cuts_indexm, ErrorList &); /// int nrOfParagraphs(); -/** needed to switch between different classes this works +/** Needed to switch between different classes this works for a list of paragraphs beginning with the specified par - return value is the number of wrong conversions + return value is the number of wrong conversions. */ int SwitchLayoutsBetweenClasses(lyx::textclass_type c1, lyx::textclass_type c2, - Paragraph * par, - BufferParams const & bparams); + ParagraphList & par, + ErrorList &); /// bool checkPastePossible();