// buf.removeAutosaveFile();
if (hiding)
// revert all changes
- buf.reload();
+ reloadBuffer(buf);
buf.markClean();
break;
case 2:
}
-bool GuiView::reloadBuffer()
+bool GuiView::reloadBuffer(Buffer & buf)
{
- BufferView * view = documentBufferView();
- if (view) {
- Buffer::ReadStatus status = view->buffer().reload();
- return status == Buffer::ReadSuccess;
- }
- return false;
+ Buffer::ReadStatus status = buf.reload();
+ return status == Buffer::ReadSuccess;
}
BufferList::iterator bit = theBufferList().begin();
BufferList::iterator const bend = theBufferList().end();
for (; bit != bend; ++bit) {
- if ((*bit)->fileName().exists()
- && (*bit)->isExternallyModified(Buffer::checksum_method)) {
+ Buffer * buf = *bit;
+ if (buf->fileName().exists()
+ && buf->isExternallyModified(Buffer::checksum_method)) {
docstring text = bformat(_("Document \n%1$s\n has been externally modified."
" Reload now? Any local changes will be lost."),
- from_utf8((*bit)->absFileName()));
+ from_utf8(buf->absFileName()));
int const ret = Alert::prompt(_("Reload externally changed document?"),
text, 0, 1, _("&Reload"), _("&Cancel"));
if (!ret)
- (*bit)->reload();
+ reloadBuffer(*buf);
}
}
}
break;
if (!buffer->lyxvc().inUse()) {
if (buffer->lyxvc().registrer()) {
- reloadBuffer();
+ reloadBuffer(*buffer);
dr.suppressMessageUpdate();
}
}
if (buffer->lyxvc().inUse() && !buffer->isReadonly()) {
dr.setMessage(buffer->lyxvc().checkIn());
if (!dr.message().empty())
- reloadBuffer();
+ reloadBuffer(*buffer);
}
break;
break;
if (buffer->lyxvc().inUse()) {
dr.setMessage(buffer->lyxvc().checkOut());
- reloadBuffer();
+ reloadBuffer(*buffer);
}
break;
_("Error when setting the locking property."));
} else {
dr.setMessage(res);
- reloadBuffer();
+ reloadBuffer(*buffer);
}
}
break;
case LFUN_VC_REVERT:
LASSERT(buffer, return);
buffer->lyxvc().revert();
- reloadBuffer();
+ reloadBuffer(*buffer);
dr.suppressMessageUpdate();
break;
case LFUN_VC_UNDO_LAST:
LASSERT(buffer, return);
buffer->lyxvc().undoLast();
- reloadBuffer();
+ reloadBuffer(*buffer);
dr.suppressMessageUpdate();
break;
if (contains(flag, 'I'))
buffer->markDirty();
if (contains(flag, 'R'))
- reloadBuffer();
+ reloadBuffer(*buffer);
break;
}
if (ret == 0) {
doc_buffer->markClean();
- reloadBuffer();
+ reloadBuffer(*doc_buffer);
dr.forceBufferUpdate();
}
break;