#include "lyxrc.h"
#include "lyxtext.h"
#include "lyx_cb.h"
+#include "bufferview_funcs.h"
#include "gettext.h"
#include "LyXView.h"
#include "vc-backend.h"
#include "TextCache.h"
-extern int RunLinuxDoc(int, string const &);
+extern BufferView * current_view; // called too many times in this file...
+using std::vector;
using std::find;
+using std::endl;
//
// Class BufferStorage
}
-Buffer * BufferStorage::newBuffer(string const & s,
- LyXRC * lyxrc,
- bool ronly)
+Buffer * BufferStorage::newBuffer(string const & s, bool ronly)
{
- Buffer * tmpbuf = new Buffer(s, lyxrc, ronly);
+ Buffer * tmpbuf = new Buffer(s, ronly);
tmpbuf->params.useClassDefaults();
lyxerr.debug() << "Assigning to buffer "
<< container.size() << endl;
}
}
if (askMoreConfirmation &&
- lyxrc->exit_confirmation &&
+ lyxrc.exit_confirmation &&
!AskQuestion(_("Some documents were not saved:"),
unsaved, _("Exit anyway?"))) {
return false;
if (buf->getUser()) buf->getUser()->insetUnlock();
if (buf->paragraph && !buf->isLyxClean() && !quitting) {
- ProhibitInput();
+ ProhibitInput(buf->getUser());
switch(AskConfirmation(_("Changes in document:"),
MakeDisplayPath(buf->fileName(), 50),
_("Save document?"))){
case 1: // Yes
- if (buf->save(lyxrc->make_backup)) {
+ if (buf->save()) {
lastfiles->newFile(buf->fileName());
} else {
- AllowInput();
+ AllowInput(buf->getUser());
return false;
}
break;
case 3: // Cancel
- AllowInput();
+ AllowInput(buf->getUser());
return false;
}
- AllowInput();
+ AllowInput(buf->getUser());
}
bstore.release(buf);
Buffer * BufferList::readFile(string const & s, bool ronly)
{
- Buffer * b = bstore.newBuffer(s, lyxrc, ronly);
+ Buffer * b = bstore.newBuffer(s, ronly);
string ts = s;
string e = OnlyPath(s);
Buffer * BufferList::newFile(string const & name, string tname)
{
// get a free buffer
- Buffer * b = bstore.newBuffer(name, lyxrc);
+ Buffer * b = bstore.newBuffer(name);
// use defaults.lyx as a default template if it exists.
if (tname.empty()) {
// make sure our path is absolute
string s = MakeAbsPath(filename);
- // Is this done too early?
- // Is it LinuxDoc?
- if (IsSGMLFilename(s)) {
- FileInfo fi(s);
- if (fi.exist() && fi.readable()) {
- if (!RunLinuxDoc(-1, s)) {
- s = ChangeExtension (s, ".lyx", false);
- } else { // sgml2lyx failed
- WriteAlert(_("Error!"),
- _("Could not convert file"), s);
- return 0;
- }
- } else {
- // just change the extension and it will be
- // handled like a regular lyx file that does
- // not exist.
- s = ChangeExtension(s, ".lyx", false);
- }
- }
-
// file already open?
if (exists(s)) {
if (AskQuestion(_("Document is already open:"),
if (LyXVC::file_not_found_hook(s)) {
// Ask if the file should be checked out for
// viewing/editing, if so: load it.
- if (AskQuestion(_("Do you want to retrive file under version control?"))) {
+ if (AskQuestion(_("Do you want to retrieve file under version control?"))) {
// How can we know _how_ to do the checkout?
// With the current VC support it has to be,
// a RCS file since CVS do not have special ,v files.