X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FLayout.h;h=73edd052fcd1698e6dd8ef90fe0e8f0ae209d616;hb=21514ad5129df123605cc11b1dc04d525ce4a295;hp=ef6b69613be560659cc9c1b9e6a4a05037dec04e;hpb=331d8060b5c26823194fe7d5b4ca75e4062ea333;p=lyx.git diff --git a/src/Layout.h b/src/Layout.h index ef6b69613b..73edd052fc 100644 --- a/src/Layout.h +++ b/src/Layout.h @@ -73,7 +73,7 @@ public: /// void readSpacing(Lexer &); /// - docstring const & name() const { return name_; }; + docstring const & name() const { return name_; } /// void setName(docstring const & n) { name_ = n; } /// @@ -110,24 +110,28 @@ public: /// std::string const & itemtag() const { return itemtag_; } /// - std::string const htmltag() const; + std::string const & htmltag() const; /// std::string const & htmlattr() const; /// - std::string const & htmlitem() const; + std::string const & htmlitemtag() const; /// std::string const & htmlitemattr() const; /// - std::string const & htmllabel() const; + std::string const & htmllabeltag() const; /// std::string const & htmllabelattr() const; /// + std::string defaultCSSClass() const; + /// bool htmllabelfirst() const { return htmllabelfirst_; } /// docstring htmlstyle() const; /// docstring const & htmlpreamble() const { return htmlpreamble_; } /// + bool htmltitle() const { return htmltitle_; } + /// bool isParagraph() const { return latextype == LATEX_PARAGRAPH; } /// bool isCommand() const { return latextype == LATEX_COMMAND; } @@ -235,10 +239,14 @@ public: LatexType latextype; /// Does this object belong in the title part of the document? bool intitle; + /// Is the content to go in the preamble rather than the body? + bool inpreamble; /// Does this layout allow for an optional parameter? int optionalargs; /// Which counter to step docstring counter; + /// Prefix to use when creating labels + docstring refprefix; /// Depth of XML command int commanddepth; @@ -247,10 +255,17 @@ public: /// until it has proper support for the caption inset (JMarc) static Layout * forCaption(); + /// Is this spellchecked? + bool spellcheck; + private: /// generates the default CSS for this layout void makeDefaultCSS() const; + /// + std::string defaultCSSItemClass() const { return defaultCSSClass() + "_item"; } + /// + std::string defaultCSSLabelClass() const { return defaultCSSClass() + "_label"; } /// Name of the layout/paragraph environment docstring name_; @@ -310,16 +325,16 @@ private: /// in "p" tags. Default is "div". /// Note that when I said "environment", I meant it: This has no /// effect for LATEX_PARAGRAPH type layouts. - mutable std::string htmlitem_; - /// Attributes for htmlitem_. Default is: class="layoutnameitem". + mutable std::string htmlitemtag_; + /// Attributes for htmlitemtag_. Default is: class="layoutname_item". mutable std::string htmlitemattr_; /// Tag for labels, of whatever sort. One use for this is in setting /// descriptions, in which case it would be: dt. Another use is to /// customize the display of, say, the auto-generated label for /// sections. Defaults to "span". /// If set to "NONE", this suppresses the printing of the label. - mutable std::string htmllabel_; - /// Attributes for the label. Defaults to: class="layoutnamelabel". + mutable std::string htmllabeltag_; + /// Attributes for the label. Defaults to: class="layoutname_label". mutable std::string htmllabelattr_; /// Whether to put the label before the item, or within the item. /// I.e., do we have (true): @@ -334,11 +349,15 @@ private: /// has been given? Default is false. /// Note that the default CSS is output first, then the user CSS, so it is /// possible to override what one does not want. - bool htmlforcedefault_; + bool htmlforcecss_; /// A cache for the default style info so generated. mutable docstring htmldefaultstyle_; /// Any other info for the HTML header. docstring htmlpreamble_; + /// Whether this is the paragraph. + bool htmltitle_; + /// calculating this is expensive, so we cache it. + mutable std::string defaultcssclass_; /// This is the `category' for this layout. The following are /// recommended basic categories: FrontMatter, BackMatter, MainText, /// Section, Starred, List, Theorem.