2003-11-05 12:06:20 +00:00
|
|
|
|
/**
|
|
|
|
|
* \file output.C
|
|
|
|
|
* This file is part of LyX, the document processor.
|
|
|
|
|
* Licence details can be found in the file COPYING.
|
|
|
|
|
*
|
|
|
|
|
* \author Lars Gullik Bj<EFBFBD>nnes
|
|
|
|
|
*
|
|
|
|
|
* Full author contact details are available in file CREDITS.
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
|
|
#include <config.h>
|
|
|
|
|
|
|
|
|
|
#include "output.h"
|
|
|
|
|
|
|
|
|
|
#include "gettext.h"
|
|
|
|
|
|
|
|
|
|
#include "frontends/Alert.h"
|
|
|
|
|
|
|
|
|
|
#include "support/filetools.h"
|
|
|
|
|
|
2006-10-11 19:40:50 +00:00
|
|
|
|
using lyx::odocfstream;
|
2003-11-05 12:06:20 +00:00
|
|
|
|
using lyx::support::bformat;
|
2006-04-08 22:31:11 +00:00
|
|
|
|
using lyx::support::makeDisplayPath;
|
2003-11-05 12:06:20 +00:00
|
|
|
|
|
2006-09-11 08:54:10 +00:00
|
|
|
|
using lyx::docstring;
|
|
|
|
|
|
2003-11-05 12:06:20 +00:00
|
|
|
|
using std::ofstream;
|
|
|
|
|
using std::string;
|
|
|
|
|
|
2006-10-11 19:40:50 +00:00
|
|
|
|
namespace {
|
|
|
|
|
|
|
|
|
|
template<typename OFStream>
|
|
|
|
|
bool doOpenFileWrite(OFStream & ofs, string const & fname)
|
2003-11-05 12:06:20 +00:00
|
|
|
|
{
|
|
|
|
|
ofs.open(fname.c_str());
|
|
|
|
|
if (!ofs) {
|
2006-09-11 08:54:10 +00:00
|
|
|
|
docstring const file = makeDisplayPath(fname, 50);
|
|
|
|
|
docstring text = bformat(_("Could not open the specified "
|
|
|
|
|
"document\n%1$s."), file);
|
2006-10-07 16:47:54 +00:00
|
|
|
|
lyx::frontend::Alert::error(_("Could not open file"), text);
|
2003-11-05 12:06:20 +00:00
|
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
return true;
|
|
|
|
|
}
|
2006-10-11 19:40:50 +00:00
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
bool openFileWrite(ofstream & ofs, string const & fname)
|
|
|
|
|
{
|
|
|
|
|
return doOpenFileWrite(ofs, fname);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
bool openFileWrite(odocfstream & ofs, string const & fname)
|
|
|
|
|
{
|
|
|
|
|
return doOpenFileWrite(ofs, fname);
|
|
|
|
|
}
|