X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FTextClass.h;h=fff3c2332f6824c2d3bfd31aeb46aec9b3e7d125;hb=d6fecb4aa47899ea3fe02d1699e0ffc81f364910;hp=b3daa4c5b53caa663513886325374b92ba9910c1;hpb=f18af303fe2f9dca05beae7852f3904ac4bfddba;p=lyx.git diff --git a/src/TextClass.h b/src/TextClass.h index b3daa4c5b5..fff3c2332f 100644 --- a/src/TextClass.h +++ b/src/TextClass.h @@ -11,7 +11,6 @@ #define TEXTCLASS_H #include "Citation.h" -#include "ColorCode.h" #include "Counters.h" #include "DocumentClassPtr.h" #include "FloatList.h" @@ -278,6 +277,8 @@ protected: std::set provides_; /// latex packages requested by document class. std::set requires_; + /// + std::map package_options_; /// default modules wanted by document class LayoutModuleList default_modules_; /// modules provided by document class @@ -333,6 +334,8 @@ private: /// bool deleteLayout(docstring const &); /// + bool deleteInsetLayout(docstring const &); + /// bool convertLayoutFormat(support::FileName const &, ReadType); /// Reads the layout file without running layout2layout. ReturnValues readWithoutConv(support::FileName const & filename, ReadType rt); @@ -383,7 +386,7 @@ public: /// \return true if there is a Layout with latexname lay bool hasLaTeXLayout(std::string const & lay) const; /// A DocumentClass nevers count as loaded, since it is dynamic - virtual bool loaded() { return false; } + virtual bool loaded() const { return false; } /// \return the layout object of an inset given by name. If the name /// is not found as such, the part after the ':' is stripped off, and /// searched again. In this way, an error fallback can be provided: @@ -397,6 +400,8 @@ public: /// add a new layout \c name if it does not exist in layoutlist_ /// \return whether we had to add one. bool addLayoutIfNeeded(docstring const & name) const; + /// Forced layouts in layout file syntax + std::string forcedLayouts() const; /////////////////////////////////////////////////////////////////// // accessors @@ -423,7 +428,9 @@ public: docstring const & htmlpreamble() const { return htmlpreamble_; } /// docstring const & htmlstyles() const { return htmlstyles_; } - /// + /// Looks for the layout of "highest level", other than Part (or other + /// layouts with a negative toc number), for use in constructing TOCs and + /// similar information. Layout const & getTOCLayout() const; /// the paragraph style to use for TOCs, Bibliography, etc /// we will attempt to calculate this if it was not given @@ -432,6 +439,9 @@ public: bool provides(std::string const & p) const; /// features required by the class? std::set const & requires() const { return requires_; } + /// package options to write to LaTeX file + std::map const & packageOptions() const + { return package_options_; } /// unsigned int columns() const { return columns_; } /// @@ -481,7 +491,8 @@ private: /// The only class that can create a DocumentClass is /// DocumentClassBundle, which calls the protected constructor. friend DocumentClassPtr - getDocumentClass(LayoutFile const &, LayoutModuleList const &); + getDocumentClass(LayoutFile const &, LayoutModuleList const &, + bool const clone); /// static InsetLayout plain_insetlayout_; }; @@ -492,7 +503,8 @@ private: /// in memory long after their associated Buffer is destroyed, mostly /// on the CutStack. DocumentClassPtr getDocumentClass(LayoutFile const & baseClass, - LayoutModuleList const & modlist); + LayoutModuleList const & modlist, + bool const clone = false); /// convert page sides option to text 1 or 2 std::ostream & operator<<(std::ostream & os, PageSides p);