]> git.lyx.org Git - lyx.git/blobdiff - src/bufferlist.C
Use MenuItem::status() instead of own submenudisabled function
[lyx.git] / src / bufferlist.C
index a5b0c820eaa89789ba324826139669a24d679abc..109d25f9e71e36790c79763d3d86ab53393cc79d 100644 (file)
@@ -20,7 +20,9 @@
 #include "lastfiles.h"
 #include "lyx_cb.h"
 #include "lyx_main.h"
+#include "output_latex.h"
 #include "paragraph.h"
+#include "ParagraphList_fwd.h"
 
 #include "frontends/Alert.h"
 
@@ -38,6 +40,8 @@ using lyx::support::OnlyFilename;
 using lyx::support::removeAutosaveFile;
 using lyx::support::prefixIs;
 
+using boost::bind;
+
 using std::auto_ptr;
 using std::endl;
 using std::find;
@@ -213,8 +217,37 @@ Buffer * BufferList::getBuffer(unsigned int choice)
 }
 
 
+Buffer * BufferList::next(Buffer const * buf) const 
+{
+       if (bstore.empty())
+               return 0;
+       BufferStorage::const_iterator it = find(bstore.begin(), 
+                                               bstore.end(), buf);
+       BOOST_ASSERT(it != bstore.end());
+       ++it;
+       if (it == bstore.end())
+               return bstore.front();
+       else
+               return *it;
+}
+
+
+Buffer * BufferList::previous(Buffer const * buf) const 
+{
+       if (bstore.empty())
+               return 0;
+       BufferStorage::const_iterator it = find(bstore.begin(), 
+                                               bstore.end(), buf);
+       BOOST_ASSERT(it != bstore.end());
+       if (it == bstore.begin())
+               return bstore.back();
+       else
+               return *(it - 1);
+}
+
+
 void BufferList::updateIncludedTeXfiles(string const & mastertmpdir,
-                                       LatexRunParams const & runparams)
+                                       OutputParams const & runparams)
 {
        BufferStorage::iterator it = bstore.begin();
        BufferStorage::iterator end = bstore.end();
@@ -234,7 +267,7 @@ void BufferList::updateIncludedTeXfiles(string const & mastertmpdir,
 void BufferList::emergencyWriteAll()
 {
        for_each(bstore.begin(), bstore.end(),
-                boost::bind(&BufferList::emergencyWrite, this, _1));
+                bind(&BufferList::emergencyWrite, this, _1));
 }