]> git.lyx.org Git - lyx.git/blobdiff - src/layout.C
Fix working of the spellchecker dialog with ispell when there are no
[lyx.git] / src / layout.C
index 4fd40f1107958343bae5326f750c61e2b8437445..b4fb05f7337277dbb499475ae90c16d2ad285fa4 100644 (file)
@@ -4,7 +4,7 @@
  *           LyX, The Document Processor
  *      
  *          Copyright 1995 Matthias Ettrich
- *          Copyright 1995-2000 The LyX Team.
+ *          Copyright 1995-2001 The LyX Team.
  *
  * ======================================================
  */
 #include "gettext.h"
 #include "support/LAssert.h"
 #include "support/lyxfunctional.h"
+#include "support/lstrings.h"
 
 using std::pair;
 using std::make_pair;
 using std::sort;
 using std::endl;
+using std::find_if;
+using std::remove_if;
 
 // Global variable: textclass table.
 LyXTextClassList textclasslist;
@@ -68,6 +71,7 @@ enum LayoutTags {
        //LT_FIRST_COUNTER,
        LT_FONT, 
        LT_FREE_SPACING, 
+       LT_PASS_THRU,
        //LT_HEADINGS,
        LT_ITEMSEP, 
        LT_KEEPEMPTY, 
@@ -131,6 +135,7 @@ LyXLayout::LyXLayout ()
        fill_bottom = false;
        newline_allowed = true;
        free_spacing = false;
+       pass_thru = false;
 }
 
 
@@ -172,6 +177,7 @@ bool LyXLayout::Read (LyXLex & lexrc, LyXTextClass const & tclass)
                { "parindent",                  LT_PARINDENT },
                { "parsep",                     LT_PARSEP },
                { "parskip",                    LT_PARSKIP },
+               { "passthru",                   LT_PASS_THRU },
                { "preamble",                   LT_PREAMBLE },
                { "rightmargin",                LT_RIGHTMARGIN },
                { "spacing",                    LT_SPACING },
@@ -183,10 +189,10 @@ bool LyXLayout::Read (LyXLex & lexrc, LyXTextClass const & tclass)
        bool finished = false;
        lexrc.pushTable(layoutTags, LT_INTITLE);
        // parse style section
-       while (!finished && lexrc.IsOK() && !error) {
+       while (!finished && lexrc.isOK() && !error) {
                int le = lexrc.lex();
                // See comment in lyxrc.C.
-               switch(le) {
+               switch (le) {
                case LyXLex::LEX_FEOF:
                        continue; 
 
@@ -196,16 +202,16 @@ bool LyXLayout::Read (LyXLex & lexrc, LyXTextClass const & tclass)
                        continue; 
                default: break;
                }
-               switch(static_cast<LayoutTags>(le)) {
+               switch (static_cast<LayoutTags>(le)) {
                case LT_END:            // end of structure
                        finished = true;
                        break;
 
                case LT_COPYSTYLE:     // initialize with a known style
                        if (lexrc.next()) {
-                               if (tclass.hasLayout(lexrc.GetString())) {
-                                       string tmpname = name_;
-                                       this->operator= (tclass.GetLayout(lexrc.GetString()));
+                               if (tclass.hasLayout(lexrc.getString())) {
+                                       string const tmpname = name_;
+                                       this->operator= (tclass.GetLayout(lexrc.getString()));
                                        name_ = tmpname;
                                } else {
                                        lexrc.printError("Cannot copy known "
@@ -216,12 +222,12 @@ bool LyXLayout::Read (LyXLex & lexrc, LyXTextClass const & tclass)
 
                case LT_OBSOLETEDBY:     // replace with a known style
                        if (lexrc.next()) {
-                               if (tclass.hasLayout(lexrc.GetString())) {
-                                       string tmpname = name_;
-                                       this->operator= (tclass.GetLayout(lexrc.GetString()));
+                               if (tclass.hasLayout(lexrc.getString())) {
+                                       string const tmpname = name_;
+                                       this->operator= (tclass.GetLayout(lexrc.getString()));
                                        name_ = tmpname;
                                        if (obsoleted_by().empty())
-                                         obsoleted_by_ = lexrc.GetString();
+                                               obsoleted_by_ = lexrc.getString();
                                } else {
                                        lexrc.printError("Cannot replace with" 
                                                         " unknown style "
@@ -239,15 +245,15 @@ bool LyXLayout::Read (LyXLex & lexrc, LyXTextClass const & tclass)
                        break;
 
                case LT_INTITLE:
-                       intitle = lexrc.next() && lexrc.GetInteger();
+                       intitle = lexrc.next() && lexrc.getInteger();
                        break;
                        
                case LT_NEED_PROTECT:
-                       needprotect = lexrc.next() && lexrc.GetInteger();
+                       needprotect = lexrc.next() && lexrc.getInteger();
                        break;
                        
                case LT_KEEPEMPTY:
-                       keepempty = lexrc.next() && lexrc.GetInteger();
+                       keepempty = lexrc.next() && lexrc.getInteger();
                        break;
 
                case LT_FONT:
@@ -264,7 +270,7 @@ bool LyXLayout::Read (LyXLex & lexrc, LyXTextClass const & tclass)
                        break;
 
                case LT_NEXTNOINDENT:   // Indent next paragraph?
-                       if (lexrc.next() && lexrc.GetInteger())
+                       if (lexrc.next() && lexrc.getInteger())
                                nextnoindent = true;
                        else
                                nextnoindent = false;
@@ -272,12 +278,12 @@ bool LyXLayout::Read (LyXLex & lexrc, LyXTextClass const & tclass)
 
                case LT_LATEXNAME:
                        if (lexrc.next())
-                               latexname_ = lexrc.GetString();
+                               latexname_ = lexrc.getString();
                        break;
                         
                case LT_LATEXPARAM:
                        if (lexrc.next())
-                               latexparam_ = lexrc.GetString();
+                               latexparam_ = lexrc.getString();
                        break;
 
                case LT_PREAMBLE:
@@ -294,73 +300,73 @@ bool LyXLayout::Read (LyXLex & lexrc, LyXTextClass const & tclass)
                        
                case LT_LEFTMARGIN:     // left margin type
                        if (lexrc.next())
-                               leftmargin = lexrc.GetString();
+                               leftmargin = lexrc.getString();
                        break;                  
 
                case LT_RIGHTMARGIN:    // right margin type
                        if (lexrc.next())
-                               rightmargin = lexrc.GetString();
+                               rightmargin = lexrc.getString();
                        break;
 
                case LT_LABELINDENT:    // label indenting flag
                        if (lexrc.next())
-                               labelindent = lexrc.GetString();
+                               labelindent = lexrc.getString();
                        break;
 
                case LT_PARINDENT:      // paragraph indent. flag
                        if (lexrc.next())
-                               parindent = lexrc.GetString();
+                               parindent = lexrc.getString();
                        break;
 
                case LT_PARSKIP:        // paragraph skip size
                        if (lexrc.next())
-                               parskip = lexrc.GetFloat();
+                               parskip = lexrc.getFloat();
                        break;
 
                case LT_ITEMSEP:        // item separation size
                        if (lexrc.next())
-                               itemsep = lexrc.GetFloat();
+                               itemsep = lexrc.getFloat();
                        break;
 
                case LT_TOPSEP:         // top separation size
                        if (lexrc.next())
-                               topsep = lexrc.GetFloat();
+                               topsep = lexrc.getFloat();
                        break;
 
                case LT_BOTTOMSEP:      // bottom separation size
                        if (lexrc.next())
-                               bottomsep = lexrc.GetFloat();
+                               bottomsep = lexrc.getFloat();
                        break;
 
                case LT_LABEL_BOTTOMSEP: // label bottom separation size
                        if (lexrc.next())
-                               labelbottomsep = lexrc.GetFloat();
+                               labelbottomsep = lexrc.getFloat();
                        break;
 
                case LT_LABELSEP:       // label separator
                        if (lexrc.next()) {
-                               labelsep = subst(lexrc.GetString(), 'x', ' ');
+                               labelsep = subst(lexrc.getString(), 'x', ' ');
                        }
                        break;
 
                case LT_PARSEP:         // par. separation size
                        if (lexrc.next())
-                               parsep = lexrc.GetFloat();
+                               parsep = lexrc.getFloat();
                        break;
 
                case LT_FILL_TOP:       // fill top flag
                        if (lexrc.next())
-                               fill_top = lexrc.GetInteger();
+                               fill_top = lexrc.getInteger();
                        break;
 
                case LT_FILL_BOTTOM:    // fill bottom flag
                        if (lexrc.next())
-                               fill_bottom = lexrc.GetInteger();
+                               fill_bottom = lexrc.getInteger();
                        break;
 
                case LT_NEWLINE:        // newlines allowed?
                        if (lexrc.next())
-                               newline_allowed = lexrc.GetInteger();
+                               newline_allowed = lexrc.getInteger();
                        break;
 
                case LT_ALIGN:          // paragraph align
@@ -372,22 +378,27 @@ bool LyXLayout::Read (LyXLex & lexrc, LyXTextClass const & tclass)
 
                case LT_LABELSTRING:    // label string definition
                        if (lexrc.next())
-                               labelstring_ = lexrc.GetString();
+                               labelstring_ = lexrc.getString();
                        break;
 
                case LT_ENDLABELSTRING: // endlabel string definition
                        if (lexrc.next())
-                               endlabelstring_ = lexrc.GetString();
+                               endlabelstring_ = lexrc.getString();
                        break;
 
                case LT_LABELSTRING_APPENDIX: // label string appendix definition
                        if (lexrc.next())
-                               labelstring_appendix_ = lexrc.GetString();
+                               labelstring_appendix_ = lexrc.getString();
                        break;
 
                case LT_FREE_SPACING:   // Allow for free spacing.
                        if (lexrc.next())
-                               free_spacing = lexrc.GetInteger();
+                               free_spacing = lexrc.getInteger();
+                       break;
+
+               case LT_PASS_THRU:      // Allow for pass thru.
+                       if (lexrc.next())
+                               pass_thru = lexrc.getInteger();
                        break;
 
                case LT_SPACING: // setspace.sty
@@ -427,7 +438,7 @@ void LyXLayout::readAlign(LyXLex & lexrc)
                return; 
        default: break;
        };
-       switch(static_cast<AlignTags>(le)) {
+       switch (static_cast<AlignTags>(le)) {
        case AT_BLOCK:
                align = LYX_ALIGN_BLOCK;
                break;
@@ -459,7 +470,7 @@ void LyXLayout::readAlignPossible(LyXLex & lexrc)
 
        lexrc.pushTable(alignTags, AT_LAYOUT);
        alignpossible = LYX_ALIGN_NONE;
-       int lineno = lexrc.GetLineNo();
+       int lineno = lexrc.getLineNo();
        do {
                int le = lexrc.lex();
                switch (le) {
@@ -485,7 +496,7 @@ void LyXLayout::readAlignPossible(LyXLex & lexrc)
                        alignpossible |= LYX_ALIGN_LAYOUT;
                        break;
                }
-       } while (lineno == lexrc.GetLineNo());
+       } while (lineno == lexrc.getLineNo());
        lexrc.popTable();
 }
 
@@ -596,19 +607,25 @@ void LyXLayout::readLabelType(LyXLex & lexrc)
        }
 }
 
-static keyword_item endlabelTypeTags[] = {
+
+namespace {
+
+keyword_item endlabelTypeTags[] = {
        { "box",        END_LABEL_BOX },
        { "filled_box", END_LABEL_FILLED_BOX },
        { "no_label",   END_LABEL_NO_LABEL },
        { "static",     END_LABEL_STATIC }
 };
 
+} // namespace anon
+
+
 void LyXLayout::readEndLabelType(LyXLex & lexrc)
 {
        pushpophelper pph(lexrc, endlabelTypeTags,
                          END_LABEL_ENUM_LAST-END_LABEL_ENUM_FIRST+1);
        int le = lexrc.lex();
-       switch(le) {
+       switch (le) {
        case LyXLex::LEX_UNDEF:
                lexrc.printError("Unknown labeltype tag `$$Token'");
                break;
@@ -639,7 +656,7 @@ void LyXLayout::readMargin(LyXLex & lexrc)
        pushpophelper pph(lexrc, marginTags, MARGIN_RIGHT_ADDRESS_BOX);
 
        int le = lexrc.lex();
-       switch(le) {
+       switch (le) {
        case LyXLex::LEX_UNDEF:
                lexrc.printError("Unknown margin type tag `$$Token'");
                return;
@@ -708,13 +725,13 @@ void LyXLayout::readSpacing(LyXLex & lexrc)
 
        pushpophelper pph(lexrc, spacingTags, ST_OTHER);
        int le = lexrc.lex();
-       switch(le) {
+       switch (le) {
        case LyXLex::LEX_UNDEF:
                lexrc.printError("Unknown spacing token `$$Token'");
                return;
        default: break;
        }
-       switch(static_cast<SpacingTags>(le)) {
+       switch (static_cast<SpacingTags>(le)) {
        case ST_SPACING_SINGLE:
                spacing.set(Spacing::Single);
                break;
@@ -726,7 +743,7 @@ void LyXLayout::readSpacing(LyXLex & lexrc)
                break;
        case ST_OTHER:
                lexrc.next();
-               spacing.set(Spacing::Other, lexrc.GetFloat());
+               spacing.set(Spacing::Other, lexrc.getFloat());
                break;
        }
 }
@@ -759,9 +776,15 @@ bool LyXTextClass::do_readStyle(LyXLex & lexrc, LyXLayout & lay)
        if (!lay.Read(lexrc, *this)) {
                // Reslove fonts
                lay.resfont = lay.font;
+#ifndef INHERIT_LANGUAGE
                lay.resfont.realize(defaultfont());
                lay.reslabelfont = lay.labelfont;
                lay.reslabelfont.realize(defaultfont());
+#else
+               lay.resfont.realize(defaultfont(), default_language);
+               lay.reslabelfont = lay.labelfont;
+               lay.reslabelfont.realize(defaultfont(), default_language);
+#endif
                return false; // no errors
        } 
        lyxerr << "Error parsing style `" << lay.name() << "'" << endl;
@@ -828,12 +851,12 @@ bool LyXTextClass::Read(string const & filename, bool merge)
        bool error = false;
 
         lexrc.setFile(filename);
-       if (!lexrc.IsOK()) error = true; 
+       if (!lexrc.isOK()) error = true; 
 
        // parsing
-       while (lexrc.IsOK() && !error) {
+       while (lexrc.isOK() && !error) {
                int le = lexrc.lex();
-               switch(le) {
+               switch (le) {
                case LyXLex::LEX_FEOF:
                        continue; 
 
@@ -843,7 +866,7 @@ bool LyXTextClass::Read(string const & filename, bool merge)
                        continue; 
                default: break;
                }
-               switch(static_cast<TextClassTags>(le)) {
+               switch (static_cast<TextClassTags>(le)) {
                case TC_OUTPUTTYPE:   // output type definition
                        readOutputType(lexrc);
                        break;
@@ -851,7 +874,7 @@ bool LyXTextClass::Read(string const & filename, bool merge)
                case TC_INPUT: // Include file
                        if (lexrc.next()) {
                                string tmp = LibFileSearch("layouts",
-                                                           lexrc.GetString(), 
+                                                           lexrc.getString(), 
                                                            "layout");
                                
                                if (Read(tmp, true)) {
@@ -864,14 +887,14 @@ bool LyXTextClass::Read(string const & filename, bool merge)
 
                case TC_STYLE:
                        if (lexrc.next()) {
-                               string name = subst(lexrc.GetString(),
+                               string name = subst(lexrc.getString(),
                                                    '_', ' ');
                                if (hasLayout(name)) {
                                        LyXLayout & lay = GetLayout(name);
                                        error = do_readStyle(lexrc, lay);
                                } else {
                                        LyXLayout lay;
-                                       lay.name(name);
+                                       lay.setName(name);
                                        if (!(error = do_readStyle(lexrc, lay)))
                                                layoutlist.push_back(lay);
                                }
@@ -884,7 +907,7 @@ bool LyXTextClass::Read(string const & filename, bool merge)
 
                case TC_NOSTYLE:
                        if (lexrc.next()) {
-                               string style = subst(lexrc.GetString(),
+                               string const style = subst(lexrc.getString(),
                                                     '_', ' ');
                                if (!delete_layout(style))
                                        lexrc.printError("Cannot delete style"
@@ -894,12 +917,12 @@ bool LyXTextClass::Read(string const & filename, bool merge)
 
                case TC_COLUMNS:
                        if (lexrc.next())
-                               columns_ = lexrc.GetInteger();
+                               columns_ = lexrc.getInteger();
                        break;
                        
                case TC_SIDES:
                        if (lexrc.next()) {
-                               switch(lexrc.GetInteger()) {
+                               switch (lexrc.getInteger()) {
                                case 1: sides_ = OneSide; break;
                                case 2: sides_ = TwoSides; break;
                                default:
@@ -914,7 +937,7 @@ bool LyXTextClass::Read(string const & filename, bool merge)
                        
                case TC_PAGESTYLE:
                        lexrc.next();
-                       pagestyle_ = strip(lexrc.GetString());
+                       pagestyle_ = strip(lexrc.getString());
                        break;
                        
                case TC_DEFAULTFONT:
@@ -922,7 +945,12 @@ bool LyXTextClass::Read(string const & filename, bool merge)
                        if (!defaultfont_.resolved()) {
                                lexrc.printError("Warning: defaultfont should "
                                                 "be fully instantiated!");
+#ifndef INHERIT_LANGUAGE
                                defaultfont_.realize(LyXFont(LyXFont::ALL_SANE));
+#else
+                               defaultfont_.realize(LyXFont(LyXFont::ALL_SANE),
+                                                    default_language);
+#endif
                        }
                        break;
 
@@ -932,12 +960,12 @@ bool LyXTextClass::Read(string const & filename, bool merge)
 
                case TC_SECNUMDEPTH:
                        lexrc.next();
-                       secnumdepth_ = lexrc.GetInteger();
+                       secnumdepth_ = lexrc.getInteger();
                        break;
 
                case TC_TOCDEPTH:
                        lexrc.next();
-                       tocdepth_ = lexrc.GetInteger();
+                       tocdepth_ = lexrc.getInteger();
                        break;
 
                        // First step to support options 
@@ -950,28 +978,28 @@ bool LyXTextClass::Read(string const & filename, bool merge)
                        break;
 
                case TC_PROVIDESAMSMATH:
-                       if (lexrc.next() && lexrc.GetInteger())
+                       if (lexrc.next() && lexrc.getInteger())
                                provides_ |= amsmath;
                        break;
 
                case TC_PROVIDESMAKEIDX:
-                       if (lexrc.next() && lexrc.GetInteger())
+                       if (lexrc.next() && lexrc.getInteger())
                                provides_ |= makeidx;
                        break;
 
                case TC_PROVIDESURL:
-                       if (lexrc.next() && lexrc.GetInteger())
+                       if (lexrc.next() && lexrc.getInteger())
                                provides_ = url;
                        break;
 
                case TC_LEFTMARGIN:     // left margin type
                        if (lexrc.next())
-                               leftmargin_ = lexrc.GetString();
+                               leftmargin_ = lexrc.getString();
                        break;                  
 
                case TC_RIGHTMARGIN:    // right margin type
                        if (lexrc.next())
-                               rightmargin_ = lexrc.GetString();
+                               rightmargin_ = lexrc.getString();
                        break;
                }
        }       
@@ -1001,7 +1029,7 @@ void LyXTextClass::readOutputType(LyXLex & lexrc)
        pushpophelper pph(lexrc, outputTypeTags, LITERATE);
 
        int le = lexrc.lex();
-       switch(le) {
+       switch (le) {
        case LyXLex::LEX_UNDEF:
                lexrc.printError("Unknown output type `$$Token'");
                return;
@@ -1051,7 +1079,7 @@ void LyXTextClass::readMaxCounter(LyXLex & lexrc)
 
        pushpophelper pph(lexrc, maxCounterTags, MC_COUNTER_ENUMIV);
        int le = lexrc.lex();
-       switch(le) {
+       switch (le) {
        case LyXLex::LEX_UNDEF:
                lexrc.printError("Unknown MaxCounter tag `$$Token'");
                return; 
@@ -1111,7 +1139,7 @@ void LyXTextClass::readClassOptions(LyXLex & lexrc)
 
        lexrc.pushTable(classOptionsTags, CO_END);
        bool getout = false;
-       while (!getout && lexrc.IsOK()) {
+       while (!getout && lexrc.isOK()) {
                int le = lexrc.lex();
                switch (le) {
                case LyXLex::LEX_UNDEF:
@@ -1122,15 +1150,15 @@ void LyXTextClass::readClassOptions(LyXLex & lexrc)
                switch (static_cast<ClassOptionsTags>(le)) {
                case CO_FONTSIZE:
                        lexrc.next();
-                       opt_fontsize_ = strip(lexrc.GetString());
+                       opt_fontsize_ = strip(lexrc.getString());
                        break;
                case CO_PAGESTYLE:
                        lexrc.next();
-                       opt_pagestyle_ = strip(lexrc.GetString()); 
+                       opt_pagestyle_ = strip(lexrc.getString()); 
                        break;
                case CO_OTHER:
                        lexrc.next();
-                       options_ = lexrc.GetString();
+                       options_ = lexrc.getString();
                        break;
                case CO_END:
                        getout = true;
@@ -1144,7 +1172,7 @@ void LyXTextClass::readClassOptions(LyXLex & lexrc)
 bool LyXTextClass::hasLayout(string const & name) const
 {
        return find_if(layoutlist.begin(), layoutlist.end(),
-                      compare_memfun(&LyXLayout::name, name))
+                      lyx::compare_memfun(&LyXLayout::name, name))
                != layoutlist.end();
 }
 
@@ -1154,8 +1182,8 @@ LyXLayout const & LyXTextClass::GetLayout (string const & name) const
        LayoutList::const_iterator cit =
                find_if(layoutlist.begin(),
                        layoutlist.end(),
-                       compare_memfun(&LyXLayout::name, name));
-       Assert(cit != layoutlist.end()); // we require the name to exist
+                       lyx::compare_memfun(&LyXLayout::name, name));
+       lyx::Assert(cit != layoutlist.end()); // we require the name to exist
        return (*cit);
 }
 
@@ -1165,8 +1193,8 @@ LyXLayout & LyXTextClass::GetLayout(string const & name)
        LayoutList::iterator it =
                find_if(layoutlist.begin(),
                        layoutlist.end(),
-                       compare_memfun(&LyXLayout::name, name));
-       Assert(it != layoutlist.end()); // we require the name to exist
+                       lyx::compare_memfun(&LyXLayout::name, name));
+       lyx::Assert(it != layoutlist.end()); // we require the name to exist
        return (*it);
 }
 
@@ -1175,7 +1203,7 @@ bool LyXTextClass::delete_layout(string const & name)
 {
        LayoutList::iterator it =
                remove_if(layoutlist.begin(), layoutlist.end(),
-                         compare_memfun(&LyXLayout::name, name));
+                         lyx::compare_memfun(&LyXLayout::name, name));
        LayoutList::iterator end = layoutlist.end();
        bool const ret = (it != end);
        layoutlist.erase(it, end);
@@ -1210,7 +1238,7 @@ LyXTextClassList::NumberOfClass(string const & textclass) const
 {
        ClassList::const_iterator cit =
                find_if(classlist.begin(), classlist.end(),
-                       compare_memfun(&LyXTextClass::name, textclass));
+                       lyx::compare_memfun(&LyXTextClass::name, textclass));
        return cit != classlist.end() ?
                make_pair(true, size_type(cit - classlist.begin())) :
                make_pair(false, size_type(0));
@@ -1235,7 +1263,7 @@ LyXTextClassList::NumberOfLayout(LyXTextClassList::size_type textclass,
                                 string const & name) const
 {
        classlist[textclass].load();
-       for(unsigned int i = 0; i < classlist[textclass].numLayouts(); ++i) {
+       for (unsigned int i = 0; i < classlist[textclass].numLayouts(); ++i) {
                if (classlist[textclass][i].name() == name)
                        return make_pair(true, i);
        }
@@ -1250,7 +1278,7 @@ string const &
 LyXTextClassList::NameOfLayout(LyXTextClassList::size_type textclass,
                               LyXTextClass::size_type layout) const
 {
-       static string dummy("dummy");
+       static string const dummy("dummy");
        classlist[textclass].load();
        if (layout < classlist[textclass].numLayouts())
                return classlist[textclass][layout].name();
@@ -1262,11 +1290,11 @@ LyXTextClassList::NameOfLayout(LyXTextClassList::size_type textclass,
 string const &
 LyXTextClassList::NameOfClass(LyXTextClassList::size_type number) const
 {
-       static string dummy("dummy");
+       static string const dummy("dummy");
        if (classlist.size() == 0) {
                return dummy;
        }
-       Assert(number < classlist.size());
+       lyx::Assert(number < classlist.size());
        return classlist[number].name();
 }
 
@@ -1275,12 +1303,12 @@ LyXTextClassList::NameOfClass(LyXTextClassList::size_type number) const
 string const &
 LyXTextClassList::LatexnameOfClass(LyXTextClassList::size_type number) const
 {
-       static string dummy("dummy");
+       static string const dummy("dummy");
        classlist[number].load();
        if (classlist.size() == 0) {
                return dummy;
        }
-       Assert(number < classlist.size());
+       lyx::Assert(number < classlist.size());
        return classlist[number].latexname();
 }
 
@@ -1289,11 +1317,11 @@ LyXTextClassList::LatexnameOfClass(LyXTextClassList::size_type number) const
 string const &
 LyXTextClassList::DescOfClass(LyXTextClassList::size_type number) const
 {
-       static string dummy("dummy");
+       static string const dummy("dummy");
        if (classlist.size() == 0) {
                return dummy;
        }
-       Assert(number < classlist.size());
+       lyx::Assert(number < classlist.size());
        return classlist[number].description();
 }
 
@@ -1355,32 +1383,32 @@ bool LyXTextClassList::Read ()
                       << real_file << endl;
        }
        
-       if (!lex.IsOK()) {
+       if (!lex.isOK()) {
                lyxerr << "LyXTextClassList::Read: unable to open "
                        "textclass file  `" << MakeDisplayPath(real_file, 1000)
                       << "'\nCheck your installation. LyX can't continue."
                       << endl;
                return false;
        }
+
        bool finished = false;
-       string fname, clname, desc;
        // Parse config-file
        lyxerr[Debug::TCLASS] << "Starting parsing of textclass.lst" << endl;
-       while (lex.IsOK() && !finished) {
+       while (lex.isOK() && !finished) {
                lyxerr[Debug::TCLASS] << "\tline by line" << endl;
                switch (lex.lex()) {
                case LyXLex::LEX_FEOF:
                        finished = true;
                        break;
                default:
-                       fname = lex.GetString();
+                       string const fname = lex.getString();
                        lyxerr[Debug::TCLASS] << "Fname: " << fname << endl;
                        if (lex.next()) {
-                               clname = lex.GetString();
+                               string const clname = lex.getString();
                                lyxerr[Debug::TCLASS]
                                        << "Clname: " << clname << endl;
                                if (lex.next()) {
-                                             desc = lex.GetString();
+                                             string const desc = lex.getString();
                                              lyxerr[Debug::TCLASS]
                                                      << "Desc: " << desc << endl;
                                              // This code is run when we have
@@ -1403,7 +1431,7 @@ bool LyXTextClassList::Read ()
                lyxerr << "LyXTextClassList::Read: no textclasses found!"
                       << endl;
                WriteAlert(_("LyX wasn't able to find any layout description!"),
-                          _("Check the contents of  the file \"textclass.lst\""),
+                          _("Check the contents of the file \"textclass.lst\""),
                           _("Sorry, has to exit :-("));
                return false;
        }