]> git.lyx.org Git - lyx.git/blobdiff - src/Buffer.cpp
Setup checboxes according to initial values from commandline.
[lyx.git] / src / Buffer.cpp
index e3319af92c38f1ea079f505fc3cc114030552713..bd7305701785929e0afe9bc9cb65aa89cb375e28 100644 (file)
@@ -127,7 +127,7 @@ namespace {
 
 // Do not remove the comment below, so we get merge conflict in
 // independent branches. Instead add your own.
-int const LYX_FORMAT = 373; // jspitzm: merge g-brief class
+int const LYX_FORMAT = 374; // rgheck: HTML output options
 
 typedef map<string, bool> DepClean;
 typedef map<docstring, pair<InsetLabel const *, Buffer::References> > RefCache;
@@ -259,12 +259,14 @@ public:
                parent_buffer = pb;
        }
 
-       /// So we can force access via the accessors.
-       mutable Buffer const * parent_buffer;
-
        /// If non zero, this buffer is a clone of existing buffer \p cloned_buffer_
        /// This one is useful for preview detached in a thread.
        Buffer const * cloned_buffer_;
+
+private:
+       /// So we can force access via the accessors.
+       mutable Buffer const * parent_buffer;
+
 };
 
 
@@ -293,7 +295,7 @@ Buffer::Impl::Impl(Buffer & parent, FileName const & file, bool readonly_,
          read_only(readonly_), filename(file), file_fully_loaded(false),
          toc_backend(&parent), macro_lock(false), timestamp_(0),
          checksum_(0), wa_(0), undo_(parent), bibinfoCacheValid_(false),
-         parent_buffer(0), cloned_buffer_(cloned_buffer)
+         cloned_buffer_(cloned_buffer), parent_buffer(0)
 {
        if (!cloned_buffer_) {
                temppath = createBufferTmpDir();
@@ -305,8 +307,6 @@ Buffer::Impl::Impl(Buffer & parent, FileName const & file, bool readonly_,
        temppath = cloned_buffer_->d->temppath;
        file_fully_loaded = true;
        params = cloned_buffer_->d->params;
-       inset = static_cast<InsetText *>(cloned_buffer_->d->inset->clone());
-       inset->setBuffer(parent);
 }
 
 
@@ -314,8 +314,11 @@ Buffer::Buffer(string const & file, bool readonly, Buffer const * cloned_buffer)
        : d(new Impl(*this, FileName(file), readonly, cloned_buffer)), gui_(0)
 {
        LYXERR(Debug::INFO, "Buffer::Buffer()");
-
-       d->inset = new InsetText(this);
+       if (cloned_buffer) {
+               d->inset = static_cast<InsetText *>(cloned_buffer->d->inset->clone());
+               d->inset->setBuffer(*this);
+       } else 
+               d->inset = new InsetText(this);
        d->inset->setAutoBreakRows(true);
        d->inset->getText(0)->setMacrocontextPosition(par_iterator_begin());
 }
@@ -349,7 +352,7 @@ Buffer::~Buffer()
        if (!isClean()) {
                docstring msg = _("LyX attempted to close a document that had unsaved changes!\n");
                msg += emergencyWrite();
-               frontend::Alert::warning(_("Attempting to close changed document!"), msg);
+               Alert::warning(_("Attempting to close changed document!"), msg);
        }
                
        // clear references to children in macro tables
@@ -2328,9 +2331,8 @@ DocIterator Buffer::firstChildPosition(Buffer const * child)
 }
 
 
-std::vector<Buffer *> Buffer::getChildren(bool grand_children) const
+void Buffer::getChildren(std::vector<Buffer *> & clist, bool grand_children) const
 {
-       std::vector<Buffer *> clist;
        // loop over children
        Impl::BufferPositionMap::iterator it = d->children_positions.begin();
        Impl::BufferPositionMap::iterator end = d->children_positions.end();
@@ -2345,7 +2347,14 @@ std::vector<Buffer *> Buffer::getChildren(bool grand_children) const
                                clist.push_back(*git);
                }
        }
-       return clist;
+}
+
+
+std::vector<Buffer *> Buffer::getChildren(bool grand_children) const
+{
+       std::vector<Buffer *> v;
+       getChildren(v, grand_children);
+       return v;
 }