// -*- C++ -*-
/* This file is part of
- * ======================================================
- *
+ * ======================================================
+ *
* LyX, The Document Processor
- *
- * Copyright 1995-2000 the LyX Team.
+ *
+ * Copyright 1995-2001 the LyX Team.
*
* ====================================================== */
#pragma interface
#endif
-#include "layout.h"
+#include "support/types.h"
-class LyXParagraph;
+class Paragraph;
+class BufferParams;
///
class CutAndPaste {
public:
- ///
- CutAndPaste();
- ~CutAndPaste();
- bool cutSelection(LyXParagraph *startpar, LyXParagraph **endpar,
- int start, int & end, char tc, bool doclear=false);
- bool copySelection(LyXParagraph *startpar, LyXParagraph *endpar,
- int start, int end, char tc);
- bool pasteSelection(LyXParagraph **par, LyXParagraph **endpar,
- int & pos, char tc);
- int nrOfParagraphs() const;
- /** 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
- */
- int SwitchLayoutsBetweenClasses(LyXTextClassList::size_type class1,
- LyXTextClassList::size_type class2,
- LyXParagraph * par);
- char getBufferTextClass();
- bool checkPastePossible(LyXParagraph *, int pos);
-
-private:
- ///
- void DeleteBuffer();
- ///
- char textclass;
-
+ ///
+ static
+ bool cutSelection(Paragraph * startpar, Paragraph ** endpar,
+ int start, int & end, char tc, bool doclear = false,
+ bool realcut = true);
+ ///
+ static
+ bool copySelection(Paragraph * startpar, Paragraph * endpar,
+ int start, int end, char tc);
+ ///
+ static
+ bool pasteSelection(Paragraph ** par, Paragraph ** endpar,
+ int & pos, char tc);
+ ///
+ static
+ int nrOfParagraphs();
+ /** 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
+ */
+ static
+ int SwitchLayoutsBetweenClasses(lyx::textclass_type class1,
+ lyx::textclass_type class2,
+ Paragraph * par,
+ BufferParams const & bparams);
+ ///
+ static
+ bool checkPastePossible(Paragraph *);
};
#endif