]> git.lyx.org Git - lyx.git/blobdiff - src/BufferView_pimpl.C
move some selection related stuff over to textcursor.C
[lyx.git] / src / BufferView_pimpl.C
index 13cf1d1b980052dd6efeca5c164f9dd9854681d5..59c7df3c5a7f42f13d868b0832d22c2ece3ea5df 100644 (file)
@@ -182,10 +182,11 @@ bool BufferView::Pimpl::loadLyXFile(string const & filename, bool tolastfiles)
                int const ret = Alert::prompt(_("Create new document?"),
                         text, 0, 1, _("&Create"), _("Cancel"));
 
-               if (ret == 0) {
-                       bufferlist.close(buffer_, false);
-                       buffer(newFile(s, string(), true));
-               }
+               if (ret == 0)
+                       b = newFile(s, string(), true);
+               else
+                       return false;
+
        } 
 
        buffer(b);
@@ -257,7 +258,7 @@ void BufferView::Pimpl::buffer(Buffer * b)
                }
 
                // FIXME: needed when ?
-               bv_->text->top_y(screen().topCursorVisible(bv_->text->cursor, bv_->text->top_y()));
+               bv_->text->top_y(screen().topCursorVisible(bv_->text));
 
                // Buffer-dependent dialogs should be updated or
                // hidden. This should go here because some dialogs (eg ToC)
@@ -408,7 +409,7 @@ int BufferView::Pimpl::resizeCurrentBuffer()
                bv_->theLockingInset(the_locking_inset);
        }
 
-       bv_->text->top_y(screen().topCursorVisible(bv_->text->cursor, bv_->text->top_y()));
+       bv_->text->top_y(screen().topCursorVisible(bv_->text));
 
        switchKeyMap();
        owner_->busy(false);
@@ -616,7 +617,7 @@ void BufferView::Pimpl::update(LyXText * text, BufferView::UpdateCodes f)
                text->selection.cursor = text->cursor;
        }
 
-       text->fullRebreak();
+       text->partialRebreak();
 
        if (text->inset_owner) {
                text->inset_owner->setUpdateStatus(bv_, InsetText::NONE);
@@ -635,7 +636,7 @@ void BufferView::Pimpl::update(BufferView::UpdateCodes f)
                text->selection.cursor = text->cursor;
        }
 
-       text->fullRebreak();
+       text->partialRebreak();
 
        if (text->inset_owner) {
                text->inset_owner->setUpdateStatus(bv_, InsetText::NONE);