DocumentClass const & tc = buf.params().documentClass();
- int const thistoclevel = start->layout().toclevel;
+ int const thistoclevel = buf.text().getTocLevel(distance(bgn, start));
int toclevel;
// Move out (down) from this section header
// Seek the one (on same level) below
for (; finish != end; ++finish) {
- toclevel = finish->layout().toclevel;
+ toclevel = buf.text().getTocLevel(distance(bgn, finish));
if (toclevel != Layout::NOT_IN_TOC && toclevel <= thistoclevel)
break;
}
// Search previous same-level header above
do {
--dest;
- toclevel = dest->layout().toclevel;
+ toclevel = buf.text().getTocLevel(distance(bgn, dest));
} while(dest != bgn
&& (toclevel == Layout::NOT_IN_TOC
|| toclevel > thistoclevel));
ParagraphList::iterator dest = boost::next(finish, 1);
// Go further down to find header to insert in front of:
for (; dest != end; ++dest) {
- toclevel = dest->layout().toclevel;
+ toclevel = buf.text().getTocLevel(distance(bgn, dest));
if (toclevel != Layout::NOT_IN_TOC
&& toclevel <= thistoclevel)
break;
pit_type const len = distance(start, finish);
buf.undo().recordUndo(cur, ATOMIC_UNDO, pit, pit + len - 1);
for (; start != finish; ++start) {
- toclevel = start->layout().toclevel;
+ toclevel = buf.text().getTocLevel(distance(bgn, start));
if (toclevel == Layout::NOT_IN_TOC)
continue;
DocumentClass::const_iterator lit = tc.begin();
pit_type const len = distance(start, finish);
buf.undo().recordUndo(cur, ATOMIC_UNDO, pit, pit + len - 1);
for (; start != finish; ++start) {
- toclevel = start->layout().toclevel;
+ toclevel = buf.text().getTocLevel(distance(bgn, start));
if (toclevel == Layout::NOT_IN_TOC)
continue;
DocumentClass::const_iterator lit = tc.begin();
ParagraphList::iterator finish = start;
ParagraphList::iterator end = pars.end();
- int const thistoclevel = start->layout().toclevel;
+ int const thistoclevel = buf.text().getTocLevel(distance(bgn, start));
if (thistoclevel == Layout::NOT_IN_TOC)
break;
// Seek the one (on same level) below
for (; finish != end; ++finish, ++cur.pit()) {
- int const toclevel = finish->layout().toclevel;
+ int const toclevel = buf.text().getTocLevel(distance(bgn, finish));
if (toclevel != Layout::NOT_IN_TOC && toclevel <= thistoclevel)
break;
}
case LFUN_OUTLINE_OUT:
// FIXME: LyX is not ready for outlining within inset.
enable = isMainText()
- && cur.paragraph().layout().toclevel != Layout::NOT_IN_TOC;
+ && cur.buffer()->text().getTocLevel(cur.pit()) != Layout::NOT_IN_TOC;
break;
case LFUN_NEWLINE_INSERT: