]> git.lyx.org Git - lyx.git/blobdiff - src/paragraph_funcs.cpp
It used to be that things like InsetFlex, InsetCaption, and the like used the default...
[lyx.git] / src / paragraph_funcs.cpp
index baf93995732c7b35a4c4281885f2a8caca4b893a..4dece7ae03eefd46603579a4b2818baacef13bf4 100644 (file)
 
 #include "BufferParams.h"
 #include "Changes.h"
-#include "debug.h"
 #include "InsetList.h"
 #include "Layout.h"
 #include "Paragraph.h"
 #include "ParagraphParameters.h"
 #include "Text.h"
+#include "TextClass.h"
+
+#include "support/debug.h"
 
 #include <boost/next_prior.hpp>
 
+using namespace std;
 
 namespace lyx {
 
-using std::endl;
-
-
 static bool moveItem(Paragraph & fromPar, pos_type fromPos,
        Paragraph & toPar, pos_type toPos, BufferParams const & params)
 {
        // Note: moveItem() does not honour change tracking!
        // Therefore, it should only be used for breaking and merging paragraphs
 
-       Paragraph::value_type const tmpChar = fromPar.getChar(fromPos);
+       char_type const tmpChar = fromPar.getChar(fromPos);
        Font const tmpFont = fromPar.getFontSettings(params, fromPos);
        Change const tmpChange = fromPar.lookupChange(fromPos);
 
-       if (tmpChar == Paragraph::META_INSET) {
+       if (fromPar.isInset(fromPos)) {
                Inset * tmpInset = 0;
                if (fromPar.getInset(fromPos)) {
                        // the inset is not in the paragraph any more
@@ -72,11 +72,14 @@ void breakParagraph(BufferParams const & bparams,
 
        Paragraph & par = pars[par_offset];
 
-       // without doing that we get a crash when typing <Return> at the
-       // end of a paragraph
-       tmp->layout(bparams.getTextClass().defaultLayout());
        // remember to set the inset_owner
        tmp->setInsetOwner(par.inInset());
+       // without doing that we get a crash when typing <Return> at the
+       // end of a paragraph
+       if (par.useEmptyLayout())
+               tmp->layout(bparams.getTextClass().emptyLayout());
+       else
+               tmp->layout(bparams.getTextClass().defaultLayout());
 
        // layout stays the same with latex-environments
        if (keep_layout) {
@@ -195,8 +198,8 @@ void mergeParagraph(BufferParams const & bparams,
        // marked as unmodified. Otherwise, its change is adopted by the first
        // character of the next paragraph.
        if (par.lookupChange(par.size()).type != Change::UNCHANGED) {
-               LYXERR(Debug::CHANGES) <<
-                  "merging par with inserted/deleted end-of-par character" << endl;
+               LYXERR(Debug::CHANGES,
+                  "merging par with inserted/deleted end-of-par character");
                par.setChange(par.size(), Change(Change::UNCHANGED));
        }
 
@@ -291,7 +294,7 @@ int getEndLabel(pit_type p, ParagraphList const & pars)
 Font const outerFont(pit_type par_offset, ParagraphList const & pars)
 {
        depth_type par_depth = pars[par_offset].getDepth();
-       Font tmpfont(Font::ALL_INHERIT);
+       FontInfo tmpfont = inherit_font;
 
        // Resolve against environment font information
        while (par_offset != pit_type(pars.size())
@@ -304,22 +307,7 @@ Font const outerFont(pit_type par_offset, ParagraphList const & pars)
                }
        }
 
-       return tmpfont;
-}
-
-
-/// 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() == OPTARG_CODE)
-                       ++num;
-       }
-       return num;
+       return Font(tmpfont);
 }