X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FParagraphParameters.h;h=fc6d9acf3b5152a9d17b51f7d70ebc3335ba9b19;hb=37d42d45f3f4a5d3e916a080af50b37ae4a9d118;hp=de6b2c08948d72a1c0e91a624f6ff2701adc27d0;hpb=b232321ff8f7c5521e82c41b8c279f6176ddd096;p=lyx.git diff --git a/src/ParagraphParameters.h b/src/ParagraphParameters.h index de6b2c0894..fc6d9acf3b 100644 --- a/src/ParagraphParameters.h +++ b/src/ParagraphParameters.h @@ -1,22 +1,32 @@ // -*- 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 -#ifdef __GNUG__ -#pragma interface -#endif - -#include "ShareContainer.h" -#include "LString.h" #include "layout.h" +#include "lyxlength.h" +#include "Spacing.h" -// Not yet... lyx 1.3.x or so -#define NO_PEXTRA_REALLY 1 +#include "support/types.h" -#include "ParameterStruct.h" +#include +#include -class VSpace; +class BufferView; +class LyXLength; +class LyXLex; +class Paragraph; class Spacing; @@ -30,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 &); @@ -46,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; /// @@ -80,57 +66,54 @@ 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; /// 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; + + //friend bool operator==(ParameterStruct const & ps1, + //ParameterStruct const & ps2); + +private: /// -#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; + Spacing spacing_; /// - void pextraAlignment(int); + bool noindent_; /// - bool pextraHfill() const; + bool start_of_appendix_; /// - void pextraHfill(bool); + bool appendix_; /// - bool pextraStartMinipage() const; + LyXAlignment align_; /// - void pextraStartMinipage(bool); -#endif -private: + depth_type depth_; /// - void set_from_struct(ParameterStruct const &); + std::string labelstring_; /// - boost::shared_ptr param; + std::string labelwidthstring_; /// - static ShareContainer container; + 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