]> git.lyx.org Git - lyx.git/blobdiff - src/Paragraph.cpp
Harmonize naming
[lyx.git] / src / Paragraph.cpp
index c1e208f84fdabec621b7590e847e6d240301c345..fb522391fbb7e9dd108a9a6ebd22d3cd9af5074b 100644 (file)
@@ -25,7 +25,7 @@
 #include "BufferParams.h"
 #include "Changes.h"
 #include "Counters.h"
-#include "Encoding.h"
+#include "BufferEncodings.h"
 #include "InsetList.h"
 #include "Language.h"
 #include "LaTeXFeatures.h"
@@ -767,7 +767,7 @@ void Paragraph::Private::insertChar(pos_type pos, char_type c,
 
 
 bool Paragraph::insertInset(pos_type pos, Inset * inset,
-                                  Change const & change)
+                                  Font const & font, Change const & change)
 {
        LASSERT(inset, return false);
        LASSERT(pos >= 0 && pos <= size(), return false);
@@ -785,6 +785,7 @@ bool Paragraph::insertInset(pos_type pos, Inset * inset,
 
        // Some insets require run of spell checker
        requestSpellCheck(pos);
+       setFont(pos, font);
        return true;
 }
 
@@ -1301,7 +1302,7 @@ void Paragraph::Private::latexSpecialChar(otexstream & os,
                docstring nextlatex;
                bool nexttipas = false;
                string nexttipashortcut;
-               if (next != '\0' && next != META_INSET) {
+               if (next != '\0' && next != META_INSET && encoding.encodable(next)) {
                        nextlatex = encoding.latexChar(next).first;
                        if (runparams.inIPA) {
                                nexttipashortcut = Encodings::TIPAShortcut(next);
@@ -1449,7 +1450,8 @@ void Paragraph::Private::validate(LaTeXFeatures & features) const
        if (layout_->inpreamble && inset_owner_) {
                bool const is_command = layout_->latextype == LATEX_COMMAND;
                Buffer const & buf = inset_owner_->buffer();
-               BufferParams const & bp = buf.params();
+               BufferParams const & bp = features.runparams().is_child
+                       ? buf.masterBuffer()->params() : buf.params();
                Font f;
                TexRow texrow;
                // Using a string stream here circumvents the encoding
@@ -1527,7 +1529,7 @@ void Paragraph::Private::validate(LaTeXFeatures & features) const
                                break;
                        }
                }
-               Encodings::validate(text_[i], features);
+               BufferEncodings::validate(text_[i], features);
        }
 }
 
@@ -1782,16 +1784,6 @@ void Paragraph::insertChar(pos_type pos, char_type c,
 }
 
 
-bool Paragraph::insertInset(pos_type pos, Inset * inset,
-                           Font const & font, Change const & change)
-{
-       bool const success = insertInset(pos, inset, change);
-       // Set the font/language of the inset...
-       setFont(pos, font);
-       return success;
-}
-
-
 void Paragraph::resetFonts(Font const & font)
 {
        d->fontlist_.clear();
@@ -3606,7 +3598,8 @@ int Paragraph::fixBiblio(Buffer const & buffer)
                inset = new InsetBibitem(const_cast<Buffer *>(&buffer),
                                         InsetCommandParams(BIBITEM_CODE));
 
-       insertInset(0, inset, Change(track_changes ? Change::INSERTED 
+       Font font(inherit_font, buffer.params().language);
+       insertInset(0, inset, font, Change(track_changes ? Change::INSERTED 
                                                   : Change::UNCHANGED));
 
        return 1;