]> git.lyx.org Git - lyx.git/blobdiff - src/ParagraphParameters.h
Alfredo's second patch
[lyx.git] / src / ParagraphParameters.h
index 82f8ddc0a714794e61673cd76a6b2e35f8587bbc..491b55c9c0711e15a5e3424c526ad24f635b8059 100644 (file)
@@ -3,18 +3,20 @@
 #ifndef PARAGRAPHPARAMETERS_H
 #define PARAGRAPHPARAMETERS_H
 
-#include "ShareContainer.h"
 #include "LString.h"
+#include "ShareContainer.h"
 #include "layout.h"
+
 #include "ParameterStruct.h"
 
+#include <iosfwd>
+
 class VSpace;
 class Spacing;
+class LyXLex;
+class Paragraph;
 
 
-// Not yet... lyx 1.3.x or so
-//#define NO_PEXTRA_REALLY 1
-
 ///
 class ParagraphParameters {
 public:
@@ -25,8 +27,6 @@ public:
        ///
        bool sameLayout(ParagraphParameters const &) const;
        ///
-       void makeSame(ParagraphParameters const & pp);
-       ///
        VSpace const & spaceTop() const;
        ///
        void spaceTop(VSpace const &);
@@ -63,9 +63,11 @@ public:
        ///
        void align(LyXAlignment);
        ///
-       char depth() const;
+       typedef ParameterStruct::depth_type depth_type;
+       ///
+       depth_type depth() const;
        ///
-       void depth(char);
+       void depth(depth_type);
        ///
        bool startOfAppendix() const;
        ///
@@ -82,32 +84,17 @@ public:
        string const & labelWidthString() const;
        ///
        void labelWidthString(string const &);
-#ifndef NO_PEXTRA_REALLY
-       ///
-       int pextraType() const;
-       ///
-       void pextraType(int);
-       ///
-       string const & pextraWidth() const;
-       ///
-       void pextraWidth(string const &);
-       ///
-       string const & pextraWidthp() const;
-       ///
-       void pextraWidthp(string const &);
        ///
-       int pextraAlignment() const;
+       LyXLength const & leftIndent() const;
        ///
-       void pextraAlignment(int);
-       ///
-       bool pextraHfill() const;
-       ///
-       void pextraHfill(bool);
-       ///
-       bool pextraStartMinipage() const;
-       ///
-       void pextraStartMinipage(bool);
-#endif
+       void leftIndent(LyXLength const &);
+
+       /// read the parameters from a lex
+       void read(LyXLex & lex);
+
+       /// write out the parameters to a stream
+       void write(std::ostream & os) const;
+
 private:
        ///
        void set_from_struct(ParameterStruct const &);
@@ -119,8 +106,22 @@ private:
 
 
 inline
-char ParagraphParameters::depth() const
+ParagraphParameters::depth_type ParagraphParameters::depth() const
 {
        return param->depth;
 }
+
+
+/** Generate a string \param data from \param par's ParagraphParameters.
+    The function also generates some additional info needed by the
+    Paragraph dialog.
+ */
+void params2string(Paragraph const & par, string & data);
+
+/** Given \param data, an encoding of the ParagraphParameters generated
+    in the Paragraph dialog, this function sets the current paragraph
+    appropriately.
+ */
+void setParagraphParams(BufferView & bv, string const & data);
+
 #endif