#include "support/lstrings.h"
#include "support/Package.h"
+#include "support/lassert.h"
#include <boost/bind.hpp>
#include <algorithm>
void BufferList::release(Buffer * buf)
{
- BOOST_ASSERT(buf);
+ LASSERT(buf, /**/);
BufferStorage::iterator const it =
find(bstore.begin(), bstore.end(), buf);
if (it != bstore.end()) {
Buffer * tmp = (*it);
- BOOST_ASSERT(tmp);
+ LASSERT(tmp, /**/);
bstore.erase(it);
delete tmp;
}
Buffer * BufferList::newBuffer(string const & s, bool const ronly)
{
auto_ptr<Buffer> tmpbuf;
- try { tmpbuf.reset(new Buffer(s, ronly));
+ try {
+ tmpbuf.reset(new Buffer(s, ronly));
} catch (ExceptionMessage const & message) {
if (message.type_ == ErrorException) {
Alert::error(message.title_, message.details_);
Buffer * BufferList::next(Buffer const * buf) const
{
- BOOST_ASSERT(buf);
+ LASSERT(buf, /**/);
if (bstore.empty())
return 0;
BufferStorage::const_iterator it = find(bstore.begin(),
bstore.end(), buf);
- BOOST_ASSERT(it != bstore.end());
+ LASSERT(it != bstore.end(), /**/);
++it;
if (it == bstore.end())
return bstore.front();
Buffer * BufferList::previous(Buffer const * buf) const
{
- BOOST_ASSERT(buf);
+ LASSERT(buf, /**/);
if (bstore.empty())
return 0;
BufferStorage::const_iterator it = find(bstore.begin(),
bstore.end(), buf);
- BOOST_ASSERT(it != bstore.end());
+ LASSERT(it != bstore.end(), /**/);
if (it == bstore.begin())
return bstore.back();
else
}
-void BufferList::emergencyWrite(Buffer * buf)
+docstring BufferList::emergencyWrite(Buffer * buf)
{
// Use ::assert to avoid a loop, BOOST_ASSERT ends up calling ::assert
// compare with 0 to avoid pointer/interger comparison
// ::assert(buf != 0);
if (!buf)
- return;
+ return _("No file open!");
// No need to save if the buffer has not changed.
if (buf->isClean())
- return;
+ return docstring();
string const doc = buf->isUnnamed()
? onlyFilename(buf->absFileName()) : buf->absFileName();
- lyxerr << to_utf8(
- bformat(_("LyX: Attempting to save document %1$s"), from_utf8(doc)))
- << endl;
+ docstring user_message = bformat(
+ _("LyX: Attempting to save document %1$s\n"), from_utf8(doc));
// We try to save three places:
// 1) Same place as document. Unless it is an unnamed doc.
lyxerr << " " << s << endl;
if (buf->writeFile(FileName(s))) {
buf->markClean();
- lyxerr << to_utf8(_(" Save seems successful. Phew.")) << endl;
- return;
+ user_message += _(" Save seems successful. Phew.\n");
+ return user_message;
} else {
- lyxerr << to_utf8(_(" Save failed! Trying...")) << endl;
+ user_message += _(" Save failed! Trying...\n");
}
}
lyxerr << ' ' << s << endl;
if (buf->writeFile(FileName(s))) {
buf->markClean();
- lyxerr << to_utf8(_(" Save seems successful. Phew.")) << endl;
- return;
+ user_message += _(" Save seems successful. Phew.\n");
+ return user_message;
}
- lyxerr << to_utf8(_(" Save failed! Trying...")) << endl;
+ user_message += _(" Save failed! Trying...\n");
// 3) In "/tmp" directory.
// MakeAbsPath to prepend the current
lyxerr << ' ' << s << endl;
if (buf->writeFile(FileName(s))) {
buf->markClean();
- lyxerr << to_utf8(_(" Save seems successful. Phew.")) << endl;
- return;
+ user_message += _(" Save seems successful. Phew.\n");
+ return user_message;
}
- lyxerr << to_utf8(_(" Save failed! Bummer. Document is lost.")) << endl;
+
+ user_message += _(" Save failed! Bummer. Document is lost.");
+ return user_message;
}
bool BufferList::isLoaded(Buffer const * b) const
{
- BOOST_ASSERT(b);
+ LASSERT(b, /**/);
BufferStorage::const_iterator cit =
find(bstore.begin(), bstore.end(), b);
return cit != bstore.end();