- if (bv_->text) {
- par = bv_->text->cursor.par();
- pos = bv_->text->cursor.pos();
- selstartpar = bv_->text->selection.start.par();
- selstartpos = bv_->text->selection.start.pos();
- selendpar = bv_->text->selection.end.par();
- selendpos = bv_->text->selection.end.pos();
- selection = bv_->text->selection.set();
- mark_set = bv_->text->selection.mark();
- the_locking_inset = bv_->theLockingInset();
- bv_->text->fullRebreak();
- update();
- } else {
- lyxerr << "text not available!" << endl;
- // See if we have a text in TextCache that fits
- // the new buffer_ with the correct width.
- bv_->text = textcache.findFit(buffer_, workarea().workWidth());
- if (bv_->text) {
- lyxerr << "text in cache!" << endl;
- if (lyxerr.debugging()) {
- lyxerr << "Found a LyXText that fits:" << endl;
- textcache.show(lyxerr, make_pair(buffer_, make_pair(workarea().workWidth(), bv_->text)));
- }
- // Set the owner of the newly found text
- // bv_->text->owner(bv_);
- if (lyxerr.debugging())
- textcache.show(lyxerr, "resizeCurrentBuffer");
- } else {
- lyxerr << "no text in cache!" << endl;
- bv_->text = new LyXText(bv_, 0, false, bv_->buffer()->paragraphs);
- bv_->text->init(bv_);
- }
-
- par = bv_->text->ownerParagraphs().end();
- selstartpar = bv_->text->ownerParagraphs().end();
- selendpar = bv_->text->ownerParagraphs().end();
- }