]> git.lyx.org Git - lyx.git/blobdiff - src/insets/InsetLayout.h
sk.po: layouts + modules
[lyx.git] / src / insets / InsetLayout.h
index 6edbb331fd13b383f19f491e0c82328cdd99d517..6bad059232ec7f390bc54315094879e3224c8c87 100644 (file)
@@ -15,9 +15,9 @@
 
 #include "ColorCode.h"
 #include "FontInfo.h"
+#include "Layout.h"
 
 #include "support/docstring.h"
-#include "support/debug.h"
 
 #include <set>
 #include <string>
@@ -66,6 +66,8 @@ public:
        ///
        docstring labelstring() const { return labelstring_; }
        ///
+       bool contentaslabel() const { return contentaslabel_; }
+       ///
        InsetDecoration decoration() const { return decoration_; }
        ///
        InsetLaTeXType latextype() const { return latextype_; }
@@ -74,57 +76,94 @@ public:
        ///
        std::string latexparam() const { return latexparam_; }
        ///
+       docstring leftdelim() const { return leftdelim_; }
+       ///
+       docstring rightdelim() const { return rightdelim_; }
+       ///
        FontInfo font() const { return font_; }
        ///
        FontInfo labelfont() const { return labelfont_; }
        ///
        ColorCode bgcolor() const { return bgcolor_; }
        ///
+       Layout::LaTeXArgMap latexargs() const { return latexargs_; }
+       ///
+       unsigned int optArgs() const;
+       ///
+       unsigned int requiredArgs() const;
+       ///
        docstring preamble() const { return preamble_; }
+       /// Get language dependent macro definitions needed for this inset
+       docstring const langpreamble() const { return langpreamble_; }
+       /// Get language and babel dependent macro definitions needed for
+       /// this inset
+       docstring const babelpreamble() const { return babelpreamble_; }
        ///
        docstring counter() const { return counter_; }
        ///
-       std::string const & htmltag() const { return htmltag_; }
-       /// 
+       docstring refprefix() const { return refprefix_; }
+       /// The tag enclosing all the material in this inset. Default is "span".
+       std::string const & htmltag() const;
+       /// Additional attributes for inclusion with the start tag. Default (if
+       /// a tag is provided) is: class="name".
        std::string const & htmlattr() const;
-       /// 
+       /// Tag for individual paragraphs in the inset. Default is none.
        std::string const & htmlinnertag() const { return htmlinnertag_; }
-       /// 
+       /// Attributes for that tag. Default (if a tag is provided) is: 
+       /// class="name_inner".
        std::string const & htmlinnerattr() const;
-       ///
+       /// A label for this environment, possibly including a reference
+       /// to a counter. E.g., for footnote, it might be:
+       ///    \arabic{footnote}
+       /// No default.
+       /// FIXME Could we get this from the layout?
        std::string const & htmllabel() const { return htmllabel_; }
        ///
        inline std::string htmllabeltag() const { return "span"; }
        ///
        std::string htmllabelattr() const 
                { return "class=\"" + defaultCSSClass() + "_label\""; }
-       /// 
+       /// CSS associated with this inset.
        docstring htmlstyle() const;
-       /// 
+       /// Additional material for the header.
        docstring htmlpreamble() const { return htmlpreamble_; }
-       ///
+       /// Whether this inset represents a "block" of material, i.e., a set
+       /// of paragraphs of its own (true), or should be run into the previous
+       /// paragraph (false). Examples:
+       ///   For branches, this is false.
+       ///   For footnotes, this is true.
+       /// Defaults to true.
        bool htmlisblock() const { return htmlisblock_; }
        ///
-       std::set<std::string> requires() const { return requires_; };
+       std::set<std::string> requires() const { return requires_; }
        ///
-       bool isMultiPar() const { return multipar_; };
+       bool isMultiPar() const { return multipar_; }
        ///
        bool forcePlainLayout() const { return forceplain_; }
        ///
        bool allowParagraphCustomization() const { return custompars_; }
        ///
-       bool isPassThru() const { return passthru_; };
+       bool isPassThru() const { return passthru_; }
+       ///
+       bool parbreakIsNewline() const { return parbreakisnewline_; }
+       ///
+       bool isNeedProtect() const { return needprotect_; }
        ///
-       bool isNeedProtect() const { return needprotect_; };
+       bool isFreeSpacing() const { return freespacing_; }
        ///
-       bool isFreeSpacing() const { return freespacing_; };
+       bool isKeepEmpty() const { return keepempty_; }
        ///
-       bool isKeepEmpty() const { return keepempty_; };
+       bool forceLTR() const { return forceltr_; }
        ///
-       bool forceLTR() const { return forceltr_; };
+       bool isInToc() const { return intoc_; }
        ///
-       bool isInToc() const { return intoc_; };
+       bool spellcheck() const { return spellcheck_; }
        ///
+       bool resetsFont() const { return resetsfont_; }
+       ///
+       bool isDisplay() const { return display_; }
+       ///
+       bool forcelocalfontswitch() const { return forcelocalfontswitch_; }
 private:
        ///
        void makeDefaultCSS() const;
@@ -133,6 +172,8 @@ private:
        ///
        std::string defaultCSSLabelClass() const { return defaultCSSClass() + "_label"; }
        ///
+       void readArgument(Lexer &);
+       ///
        docstring name_;
        /**
                * This is only used (at present) to decide where to put them on the menus.
@@ -143,6 +184,8 @@ private:
        ///
        docstring labelstring_;
        ///
+       bool contentaslabel_;
+       ///
        InsetDecoration decoration_;
        ///
        InsetLaTeXType latextype_;
@@ -151,6 +194,10 @@ private:
        ///
        std::string latexparam_;
        ///
+       docstring leftdelim_;
+       ///
+       docstring rightdelim_;
+       ///
        FontInfo font_;
        ///
        FontInfo labelfont_;
@@ -160,39 +207,34 @@ private:
        docstring counter_;
        ///
        docstring preamble_;
-       /// The tag enclosing all the material in this inset. Default is none.
-       std::string htmltag_;
-       /// Additional attributes for inclusion with the start tag. Default (if
-       /// a tag is provided) is: class="name".
+       /// Language dependent macro definitions needed for this inset
+       docstring langpreamble_;
+       /// Language and babel dependent macro definitions needed for this inset
+       docstring babelpreamble_;
+       ///
+       docstring refprefix_;
+       ///
+       mutable std::string htmltag_;
+       ///
        mutable std::string htmlattr_;
-       /// Tag for individual paragraphs in the inset. Default is none.
+       ///
        std::string htmlinnertag_;
-       /// Attributes for that tag. Default (if a tag is provided) is: 
-       /// class="name_inner".
+       ///
        mutable std::string htmlinnerattr_;
-       /// A label for this environment, possibly including a reference
-       /// to a counter. E.g., for footnote, it might be:
-       ///    <span class='notenum'>\arabic{footnote}</span>
-       /// No default.
-       /// FIXME Could we get this from the layout?
+       ///
        std::string htmllabel_;
-       /// CSS associated with this inset.
+       ///
        docstring htmlstyle_;
        /// Cache for default CSS info for this inset.
        mutable docstring htmldefaultstyle_;
-       /// 
+       /// Cache for default CSS class.
        mutable std::string defaultcssclass_;
        /// Whether to force generation of default CSS even if some is given.
        /// False by default.
        bool htmlforcecss_;
-       /// Additional material for the header.
+       ///
        docstring htmlpreamble_;
-       /// Whether this inset represents a "block" of material, i.e., a set
-       /// of paragraphs of its own (true), or should be run into the previous
-       /// paragraph (false). Examples:
-       ///   For branches, this is false.
-       ///   For footnotes, this is true.
-       /// Defaults to true.
+       ///
        bool htmlisblock_;
        ///
        std::set<std::string> requires_;
@@ -205,19 +247,32 @@ private:
        ///
        bool passthru_;
        ///
-       bool needprotect_;
+       bool parbreakisnewline_;
        ///
        bool freespacing_;
        ///
        bool keepempty_;
        ///
        bool forceltr_;
+       ///
+       bool needprotect_;
        /// should the contents be written to TOC strings?
        bool intoc_;
+       /// check spelling of this inset?
+       bool spellcheck_;
+       ///
+       bool resetsfont_;
+       ///
+       bool display_;
+       ///
+       bool forcelocalfontswitch_;
+       ///
+       Layout::LaTeXArgMap latexargs_;
 };
 
 ///
 InsetLayout::InsetLyXType translateLyXType(std::string const & str);
+InsetLayout::InsetDecoration translateDecoration(std::string const & str);
 
 } // namespace lyx