]> git.lyx.org Git - lyx.git/blobdiff - src/ParagraphParameters.h
Continue to improve GtkLengthEntry
[lyx.git] / src / ParagraphParameters.h
index da9ffd8fa6f7b6c1ec375f9b28fdc159773987c6..fc6d9acf3b5152a9d17b51f7d70ebc3335ba9b19 100644 (file)
@@ -1,19 +1,33 @@
 // -*- C++ -*-
+/**
+ * \file ParagraphParameters.h
+ * This file is part of LyX, the document processor.
+ * Licence details can be found in the file COPYING.
+ *
+ * \author Lars Gullik Bjønnes
+ * \author Angus Leeming
+ * \author John Levon
+ *
+ * Full author contact details are available in file CREDITS.
+ */
 
 #ifndef PARAGRAPHPARAMETERS_H
 #define PARAGRAPHPARAMETERS_H
 
-#include "LString.h"
-#include "ShareContainer.h"
 #include "layout.h"
+#include "lyxlength.h"
+#include "Spacing.h"
 
-#include "ParameterStruct.h"
+#include "support/types.h"
 
 #include <iosfwd>
+#include <string>
 
-class VSpace;
-class Spacing;
+class BufferView;
+class LyXLength;
 class LyXLex;
+class Paragraph;
+class Spacing;
 
 
 ///
@@ -26,14 +40,6 @@ public:
        ///
        bool sameLayout(ParagraphParameters const &) const;
        ///
-       VSpace const & spaceTop() const;
-       ///
-       void spaceTop(VSpace const &);
-       ///
-       VSpace const & spaceBottom() const;
-       ///
-       void spaceBottom(VSpace const &);
-       ///
        Spacing const & spacing() const;
        ///
        void spacing(Spacing const &);
@@ -42,27 +48,11 @@ public:
        ///
        void noindent(bool);
        ///
-       bool lineTop() const;
-       ///
-       void lineTop(bool);
-       ///
-       bool lineBottom() const;
-       ///
-       void lineBottom(bool);
-       ///
-       bool pagebreakTop() const;
-       ///
-       void pagebreakTop(bool);
-       ///
-       bool pagebreakBottom() const;
-       ///
-       void pagebreakBottom(bool);
-       ///
        LyXAlignment align() const;
        ///
        void align(LyXAlignment);
        ///
-       typedef ParameterStruct::depth_type depth_type;
+       typedef lyx::depth_type depth_type;
        ///
        depth_type depth() const;
        ///
@@ -76,13 +66,13 @@ public:
        ///
        void appendix(bool);
        ///
-       string const & labelString() const;
+       std::string const & labelString() const;
        ///
-       void labelString(string const &);
+       void labelString(std::string const &);
        ///
-       string const & labelWidthString() const;
+       std::string const & labelWidthString() const;
        ///
-       void labelWidthString(string const &);
+       void labelWidthString(std::string const &);
        ///
        LyXLength const & leftIndent() const;
        ///
@@ -94,19 +84,36 @@ public:
        /// write out the parameters to a stream
        void write(std::ostream & os) const;
 
+       //friend bool operator==(ParameterStruct const & ps1,
+       //ParameterStruct const & ps2);
+
 private:
        ///
-       void set_from_struct(ParameterStruct const &);
+       Spacing spacing_;
+       ///
+       bool noindent_;
+       ///
+       bool start_of_appendix_;
+       ///
+       bool appendix_;
        ///
-       boost::shared_ptr<ParameterStruct> param;
+       LyXAlignment align_;
        ///
-       static ShareContainer<ParameterStruct> container;
+       depth_type depth_;
+       ///
+       std::string labelstring_;
+       ///
+       std::string labelwidthstring_;
+       ///
+       LyXLength leftindent_;
 };
 
 
-inline
-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, std::string & data);
+
 #endif