]> git.lyx.org Git - lyx.git/blobdiff - src/paragraph_funcs.cpp
* make it compile
[lyx.git] / src / paragraph_funcs.cpp
index cad97a93c4af960c34cb17093278a9d36fc540d1..0dbacb46ace5839809db731c544c71b2844f3316 100644 (file)
 #include "paragraph_funcs.h"
 
 #include "BufferParams.h"
+#include "Changes.h"
 #include "debug.h"
+#include "InsetList.h"
 #include "Layout.h"
-#include "Text.h"
 #include "Paragraph.h"
 #include "ParagraphParameters.h"
+#include "Text.h"
+
+#include <boost/next_prior.hpp>
 
 
 namespace lyx {
 
-using std::string;
 using std::endl;
 
 
@@ -40,11 +43,9 @@ static bool moveItem(Paragraph & fromPar, pos_type fromPos,
                Inset * tmpInset = 0;
                if (fromPar.getInset(fromPos)) {
                        // the inset is not in the paragraph any more
-                       tmpInset = fromPar.insetlist.release(fromPos);
+                       tmpInset = fromPar.releaseInset(fromPos);
                }
 
-               fromPar.eraseChar(fromPos, false);
-
                if (!toPar.insetAllowed(tmpInset->lyxCode())) {
                        delete tmpInset;
                        return false;
@@ -61,7 +62,8 @@ static bool moveItem(Paragraph & fromPar, pos_type fromPos,
 
 
 void breakParagraph(BufferParams const & bparams,
-       ParagraphList & pars, pit_type par_offset, pos_type pos, int flag)
+                   ParagraphList & pars, pit_type par_offset, pos_type pos, 
+                   bool keep_layout)
 {
        // create a new paragraph, and insert into the list
        ParagraphList::iterator tmp =
@@ -77,7 +79,7 @@ void breakParagraph(BufferParams const & bparams,
        tmp->setInsetOwner(par.inInset());
 
        // layout stays the same with latex-environments
-       if (flag) {
+       if (keep_layout) {
                tmp->layout(par.layout());
                tmp->setLabelWidthString(par.params().labelWidthString());
                tmp->params().depth(par.params().depth());
@@ -91,7 +93,7 @@ void breakParagraph(BufferParams const & bparams,
 
        bool const isempty = (par.allowEmpty() && par.empty());
 
-       if (!isempty && (par.size() > pos || par.empty() || flag == 2)) {
+       if (!isempty && (par.size() > pos || par.empty())) {
                tmp->layout(par.layout());
                tmp->params().align(par.params().align());
                tmp->setLabelWidthString(par.params().labelWidthString());
@@ -143,7 +145,7 @@ void breakParagraph(BufferParams const & bparams,
        }
 
        // layout stays the same with latex-environments
-       if (flag) {
+       if (keep_layout) {
                par.layout(tmp->layout());
                par.setLabelWidthString(tmp->params().labelWidthString());
                par.params().depth(tmp->params().depth());
@@ -306,21 +308,6 @@ Font const outerFont(pit_type par_offset, ParagraphList const & pars)
 }
 
 
-/// return the number of InsetOptArg in a paragraph
-int numberOfOptArgs(Paragraph const & par)
-{
-       int num = 0;
-
-       InsetList::const_iterator it = par.insetlist.begin();
-       InsetList::const_iterator end = par.insetlist.end();
-       for (; it != end ; ++it) {
-               if (it->inset->lyxCode() == Inset::OPTARG_CODE)
-                       ++num;
-       }
-       return num;
-}
-
-
 void acceptChanges(ParagraphList & pars, BufferParams const & bparams)
 {
        pit_type pars_size = static_cast<pit_type>(pars.size());