]> git.lyx.org Git - lyx.git/blobdiff - src/bufferparams.h
form para crash fix from John
[lyx.git] / src / bufferparams.h
index 873862572ec496d92f4ccf6397af46e8c52b90a3..aeed3a1572df767b4e0c6a568f280455be63a493 100644 (file)
@@ -5,7 +5,7 @@
  *           LyX, The Document Processor
  *      
  *           Copyright 1995 Matthias Ettrich
- *           Copyright 1995-2000 The LyX Team.
+ *           Copyright 1995-2001 The LyX Team.
  *
  * ====================================================== */
 
 #include "Bullet.h"
 #include "insets/insetquotes.h"
 #include "layout.h"
-#include "support/block.h"
+#include <boost/array.hpp>
 
-/**
-  This class contains all the parameters for this a buffer uses. Some
-  work needs to be done on this class to make it nice. Now everything
-  is in public.
-  */
 
 struct Language;
 
+/** Buffer parameters.
+   This class contains all the parameters for this a buffer uses. Some
+   work needs to be done on this class to make it nice. Now everything
+   is in public.
+*/
 class BufferParams {
 public:
        ///
@@ -104,18 +104,21 @@ public:
                ///
                ORIENTATION_LANDSCAPE
        };
-       //@Man: Constructors and Deconstructors
-       //@{
        ///
        BufferParams();
-       //@}
 
        ///
-       void writeFile(ostream &) const;
+       void writeFile(std::ostream &) const;
+
+       ///
+       void setPaperStuff();
 
        ///
        void useClassDefaults();
 
+       ///
+       bool hasClassDefaults() const;
+
        ///
        VSpace const & getDefSkip() const { return defskip; }
 
@@ -133,15 +136,15 @@ public:
        ///
        string fontsize; 
        ///
-       LyXTextClassList::ClassList::size_type textclass;
+       LyXTextClassList::size_type textclass;
 
        /* this are for the PaperLayout */
-       ///
-       char papersize; /* the general papersize (papersize2 or paperpackage */ // add approp. signedness
-        ///
-        char papersize2; /* the selected Geometry papersize */ // add approp. signedness
-        ///
-        char paperpackage; /* a special paperpackage .sty-file */ // add approp. signedness
+       /// the general papersize (papersize2 or paperpackage
+       char papersize; // add apprip. signedness 
+        ///  the selected Geometry papersize
+        char papersize2; // add approp. signedness
+        /// a special paperpackage .sty-file
+        char paperpackage; // add approp. signedness
         ///
        PAPER_ORIENTATION orientation; // add approp. signedness
        ///
@@ -177,9 +180,7 @@ public:
        ///
        int tocdepth;
        ///
-       string language;
-       ///
-       Language const * language_info;
+       Language const * language;
        ///
        string inputenc;
        ///
@@ -195,26 +196,29 @@ public:
        ///
        string pagestyle;
        ///
-       block<Bullet, 4> temp_bullets;
+       boost::array<Bullet, 4> temp_bullets;
        ///
-       block<Bullet, 4> user_defined_bullets;
+       boost::array<Bullet, 4> user_defined_bullets;
        ///
        void readPreamble(LyXLex &);
        ///
        void readLanguage(LyXLex &);
        ///
        void readGraphicsDriver(LyXLex &);
-       /// do we allow accents on all chars in this buffer
-       bool allowAccents;
        ///
         bool use_amsmath;
+       ///
+        bool use_natbib;
+       ///
+        bool use_numerical_citations;
        /// Time ago we agreed that this was a buffer property [ale990407]
         string parentname;
 private:
        ///
        friend class Buffer;
        /** This is the amount of space used for paragraph_separation "skip",
-         and for detached paragraphs in "indented" documents. */
+         and for detached paragraphs in "indented" documents.
+       */
        VSpace defskip;
 };