#include "support/lstrings.h"
-using lyx::support::subst;
-using lyx::support::trim;
+
+namespace lyx {
+
+using support::subst;
+using support::trim;
using std::endl;
using std::string;
+/// Special value of toclevel for layouts that to not belong in a TOC
+const int LyXLayout::NOT_IN_TOC = -1000;
// The order of the LayoutTags enum is no more important. [asierra300396]
// Tags indexes.
free_spacing = false;
pass_thru = false;
is_environment = false;
- toclevel = 0;
+ toclevel = NOT_IN_TOC;
commanddepth = 0;
}
// Reads a layout definition from file
-bool LyXLayout::Read(LyXLex & lexrc, LyXTextClass const & tclass)
+bool LyXLayout::read(LyXLex & lexrc, LyXTextClass const & tclass)
{
// This table is sorted alphabetically [asierra 30March96]
keyword_item layoutTags[] = {
case LT_COPYSTYLE: // initialize with a known style
if (lexrc.next()) {
- string const style = lexrc.getString();
+ string const style = subst(lexrc.getString(),
+ '_', ' ');
if (tclass.hasLayout(style)) {
string const tmpname = name_;
break;
case LT_PREAMBLE:
- preamble_ = lexrc.getLongString("EndPreamble");
+ preamble_ = from_utf8(lexrc.getLongString("EndPreamble"));
break;
case LT_LABELTYPE:
case LT_LABELSTRING: // label string definition
if (lexrc.next())
- labelstring_ = trim(lexrc.getString());
+ labelstring_ = trim(lexrc.getDocString());
break;
case LT_ENDLABELSTRING: // endlabel string definition
if (lexrc.next())
- endlabelstring_ = trim(lexrc.getString());
+ endlabelstring_ = trim(lexrc.getDocString());
break;
case LT_LABELSTRING_APPENDIX: // label string appendix definition
if (lexrc.next())
- labelstring_appendix_ = trim(lexrc.getString());
+ labelstring_appendix_ = trim(lexrc.getDocString());
break;
case LT_LABELCOUNTER: // name of counter to use
if (lexrc.next())
- counter = trim(lexrc.getString());
+ counter = lyx::from_ascii(trim(lexrc.getString()));
break;
case LT_FREE_SPACING: // Allow for free spacing.
{
return depends_on_;
}
+
+
+} // namespace lyx