]> git.lyx.org Git - lyx.git/blobdiff - src/bufferlist.C
try pre2 again
[lyx.git] / src / bufferlist.C
index fe8dba7576d3b02e4482e89349db3e56d4060c7d..3f4477636478f3fe8f20590692be00d5112c1ee7 100644 (file)
@@ -47,6 +47,8 @@ using std::find_if;
 using std::for_each;
 using std::mem_fun;
 
+extern BufferView * current_view;
+
 //
 // Class BufferStorage
 //
@@ -70,8 +72,8 @@ Buffer * BufferStorage::newBuffer(string const & s, bool ronly)
 {
        Buffer * tmpbuf = new Buffer(s, ronly);
        tmpbuf->params.useClassDefaults();
-       lyxerr.debug() << "Assigning to buffer "
-                      << container.size() << endl;
+       lyxerr[Debug::INFO] << "Assigning to buffer "
+                           << container.size() << endl;
        container.push_back(tmpbuf);
        return tmpbuf;
 }
@@ -92,9 +94,6 @@ bool BufferList::empty() const
 }
 
 
-extern bool MenuWrite(Buffer *);
-extern bool MenuWriteAs(Buffer *);
-
 bool BufferList::QwriteAll()
 {
         bool askMoreConfirmation = false;
@@ -108,15 +107,15 @@ bool BufferList::QwriteAll()
                        else
                                fname = MakeDisplayPath((*it)->fileName(), 50);
                        bool reask = true;
-                       while(reask) {
+                       while (reask) {
                                switch (AskConfirmation(_("Changes in document:"),
                                                       fname,
                                                       _("Save document?"))) {
                                case 1: // Yes
                                        if ((*it)->isUnnamed())
-                                               reask = !MenuWriteAs((*it));
+                                               reask = !MenuWriteAs(current_view, (*it));
                                        else {
-                                               reask = !MenuWrite((*it));
+                                               reask = !MenuWrite(current_view, (*it));
                                        }
                                        break;
                                case 2: // No
@@ -190,7 +189,7 @@ bool BufferList::close(Buffer * buf)
                                               _("Save document?"))){
                        case 1: // Yes
                                if (buf->isUnnamed())
-                                       reask = !MenuWriteAs(buf);
+                                       reask = !MenuWriteAs(current_view, buf);
                                else if (buf->save()) {
                                        lastfiles->newFile(buf->fileName());
                                        reask = false;
@@ -456,10 +455,11 @@ Buffer * BufferList::newFile(string const & name, string tname, bool isNamed)
                b->paragraph = new LyXParagraph;
        }
 
-       if (!lyxrc.new_ask_filename) {
-               if (!isNamed)
-                       b->setUnnamed();
+       if (!lyxrc.new_ask_filename && !isNamed) {
+               b->setUnnamed();
+               b->setFileName(name);
        }
+
        b->setReadonly(false);
        
        return b;