]> git.lyx.org Git - lyx.git/blobdiff - src/Paragraph.cpp
whitespace only
[lyx.git] / src / Paragraph.cpp
index 3201105b172f52603647f51e46f302bf305889eb..52714b8f118c9e98e09900eae5643ccb4d2af441 100644 (file)
@@ -921,7 +921,9 @@ void Paragraph::Private::latexSpecialChar(
                column += 17;
                break;
 
-       case '*': case '[':
+       case '*':
+       case '[':
+       case ']':
                // avoid being mistaken for optional arguments
                os << '{';
                os.put(c);
@@ -1618,7 +1620,7 @@ docstring Paragraph::expandLabel(Layout const & layout,
 
        if (fmt.empty() && layout.labeltype == LABEL_COUNTER 
            && !layout.counter.empty())
-               fmt = "\\the" + layout.counter;
+               return tclass.counters().theCounter(layout.counter);
 
        // handle 'inherited level parts' in 'fmt',
        // i.e. the stuff between '@' in   '@Section@.\arabic{subsection}'
@@ -2446,6 +2448,29 @@ docstring Paragraph::asString(pos_type beg, pos_type end, int options) const
 }
 
 
+docstring Paragraph::stringify(pos_type beg, pos_type end, int options, OutputParams & runparams) const
+{
+       odocstringstream os;
+
+       if (beg == 0 
+               && options & AS_STR_LABEL
+               && !d->params_.labelString().empty())
+               os << d->params_.labelString() << ' ';
+
+       for (pos_type i = beg; i < end; ++i) {
+               char_type const c = d->text_[i];
+               if (isPrintable(c) || c == '\t'
+                   || (c == '\n' && options & AS_STR_NEWLINES))
+                       os.put(c);
+               else if (c == META_INSET && options & AS_STR_INSETS) {
+                       getInset(i)->plaintext(os, runparams);
+               }
+       }
+
+       return os.str();
+}
+
+
 void Paragraph::setInsetOwner(Inset const * inset)
 {
        d->inset_owner_ = inset;